在Ubuntu上配置Kafka安全可從以下方面入手:
啟用SSL/TLS加密
openssl
生成證書和密鑰,配置server.properties
中listeners=SSL://:9093
等參數,指定證書路徑及密碼。ssl.enabled.protocols=TLSv1.2,TLSv1.3
以限制協議版本。配置SASL認證
kafka_server_jaas.conf
),定義用戶名、密碼及認證機制(如PLAIN
或SCRAM-SHA-256
)。server.properties
中啟用SASL_SSL
協議,指定security.inter.broker.protocol=SASL_SSL
及authorizer.class.name
為AclAuthorizer
。SCRAM
認證,支持動態新增用戶無需重啟集群。權限控制(ACL)
kafka-acls.sh
工具為用戶/組分配主題的讀寫權限,如--add --allow --user user1 --operation Read --topic test
。SimpleAclAuthorizer
并配置ACL規則,限制未授權訪問。防火墻與網絡隔離
ufw
或iptables
限制Kafka端口(默認9092、9093)的訪問,僅允許必要IP段。操作系統權限管理
審計與監控
其他安全措施
參考來源: