Kafka SSL安装与配置

最近有同学咨询说,Kafka的SSL安全认证如何安装与使用?今天笔者将通过以下几个方面来介绍Kafka的SSL:

Kafka 权限介绍

Kafka SSL的安装与使用

Kafka Eagle中如何配置SSL?

2.内容 2.1 什么是Kafka权限认证?

在Kafka 0.9.0.0之后,Kafka社区增加了一系列的功能,其中包含对Kafka集群进行安全管控。支持的权限认证方式如下:

Broker与Client之间的权限认证(例如Producer和Consumer)。可以使用SSL或SASL,而SASL支持如下方案:

SASL/GSSAPI(Kerberos),开始于0.9.0.0版本

SASL/PLAIN,开始于0.10.0.0版本

SASL/SCRAM-SHA-256和SASL/SCRAM-SHA-512,开始于0.10.2.0版本

SASL/OAUTHBEARER,开始于2.0版本

   2. Broker和Zookeeper之间建立权限认证

   3. 在Broker和Client之间、Broker和Broker之间使用SSL建立权限认证时,性能会有所下降,其程度取决于CPU类型和JVM的实现

   4. 对Client进行读写认证

在实际生产环境中,对于权限认证使用的较多的是SCRAM认证,其原因在《Kafka SCRAM和PLAIN实战》这篇博客中详细解释。

2.2 Kafka SSL安装与使用

Kafka允许客户端使用SSL来连接,默认情况下,SSL是禁止的,但是可以通过手动开启。安装Kafka SSL的流程如下所示:

Kafka SSL安装与配置

 

 

 执行步骤如下所示:

步骤一:初始化环境变量(在脚本中声明变量)

BASE_DIR=http://www.likecs.com/Users/smartloli/workspace/ssl CERT_OUTPUT_PATH="$BASE_DIR/certificates" PASSWORD=ke123456 KEY_STORE="$CERT_OUTPUT_PATH/kafka.keystore" TRUST_STORE="$CERT_OUTPUT_PATH/kafka.truststore" KEY_PASSWORD=$PASSWORD STORE_PASSWORD=$PASSWORD TRUST_KEY_PASSWORD=$PASSWORD TRUST_STORE_PASSWORD=$PASSWORD CLUSTER_NAME=ke-cluster-01 CERT_AUTH_FILE="$CERT_OUTPUT_PATH/ca-cert" CLUSTER_CERT_FILE="$CERT_OUTPUT_PATH/${CLUSTER_NAME}-cert" DAYS_VALID=365 D_NAME="CN=localhost, OU=YourDept, O=YourCompany, L=China, ST=China, C=localhost"

mkdir -p $CERT_OUTPUT_PATH

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/wpzzjj.html