ssl—如何在kafka集群中启用安全性而不停机

rlcwz9us  于 2021-06-05  发布在  Kafka
关注(0)|答案(2)|浏览(491)

我们有一个Kafka集群在生产中,没有任何安全措施。我们计划在代理端启用安全性(sasl/oauthbearer)。但是看起来一旦我们打开了代理端的安全性,所有不安全的客户端就会立即被删除。为了顺利地从不安全的集群过渡到安全的集群,而不需要任何停机时间,我们希望kafka客户机首先启用安全性。一旦我们的所有客户机都迁移了,我们就可以在代理级别打开安全性。然而,我没有找到一种安全的客户可以与不安全的经纪人交谈的方法。有人这样做过吗?关于顺利过渡到安全生产有什么想法吗?

vhipe2zx

vhipe2zx1#

在server.properites中设置以下属性将允许不安全的客户端连接到端口9097,并允许安全客户端连接到端口9096。 listeners=SASL_PLAINTEXT://:9096,PLAINTEXT://:9097

t3psigkw

t3psigkw2#

在kafka 2.0中,允许以下协议组合:

+------------------+-------+-----------+
|                  |  SSL  |  Kerberos |
+------------------+-------+-----------+
| PLAINTEXT        |  No   |    No     |
| SSL              |  Yes  |    No     |
| SASL_PLAINTEXT   |  No   |    Yes    |
| SASL_SSL         |  Yes  |    Yes    |
+------------------+-------+-----------+

这些组合适用于代理到代理和代理到客户机,但这里的密钥配置是 security.inter.broker.protocol 对于经纪人对经纪人和经纪人对客户来说,这并不一定是相同的。这意味着我们可以在kafka集群中启用安全性,而不必停机。
启用kerberos
步骤1:禁用代理对代理的安全性

security.inter.broker.protocol=PLAINTEXT

步骤2:在中为代理到客户端启用kerberos server.properties 第三步:滚动重启
步骤4:启用kerberos for broker to broker

security.inter.broker.protocol=SASL_PLAINTEXT

启用ssl
步骤1:禁用代理对代理的安全性

security.inter.broker.protocol=PLAINTEXT

步骤2:在中为代理到客户端启用ssl server.properties 第三步:滚动重启
第4步:启用ssl for broker to broker

security.inter.broker.protocol=SSL

相关问题