背景
公司需要对kafka环境进行安全验证,目前考虑到的方案有Kerberos和SSL和SASL_SSL,最终考虑到安全和功能的丰富度,我们最终选择了SASL_SSL方案。处于知识积累的角度,记录一下kafka keberos安装部署的步骤。
机器规划
目前测试环境公搭建了三台kafka主机服务,现在将详细阐述部署这三个物理主机的kerberos认证的过程。
创建jaas认证文件
在所有的kafka节点上/export/server/kafka_server_jaas.conf创建该文件
KafkaServer {
com.sun.security.auth.module.Krb5LoginModule required
useKeyTab=true
storeKey=true
keyTab="/export/server/kafka.keytab"
principal="kafka/citicbank-bdp-1a-03";
};
KafkaClient {
com.sun.security.auth.module.Krb5LoginModule required
useKeyTab=true
storeKey=true
keyTab="/export/server/kafka.keytab"
principal="kafka/citicbank-bdp-1a-03";
};
注意,这里用户需要根据不同的节点,填写不同节点的principal信息,由于小编这边黏贴的是citicbank-bdp-1a-03主机上的配置,因此principal=“kafka/citicbank-bdp-1a-03”
修改所有节点的kafka-runner-class.sh文件,在KAFKA_JVM_PERFORMANCE_OPTS参数后面追加
-Djava.scurity.krb5.conf=/etc/krb5.conf -Djava.security.auth.login.config=/export/server/kafka_server_jaas.conf -Dsun.security.krb5.debug=false
配置
# JVM performance options
if [ -z "$KAFKA_JVM_PERFORMANCE_OPTS" ]<