0

私はカフカ分野に不慣れです。

kafka、zookeeper、およびスキーマ レジストリをすべて RHEL7 マシン (ホスト名: kafka-confluent) にインストールしています。これはクラスター セットアップではないため、ブローカーは 1 つしかありません。

ここで、セットアップ用に SSL 暗号化を構成したいと思います。docsに従ってsslキーと証明書を作成しました。

次に、プロパティ ファイルを構成しました。

私の(コンフルエントなプラットフォームのインストールディレクトリ)/etc/kafka/server.properties

ssl.truststore.location=/home/kafka/kafka.server.truststore.jks
ssl.truststore.password=password
ssl.keystore.location=/home/kafka/kafka.server.keystore.jks
ssl.keystore.password=password
ssl.key.password=password
security.inter.broker.protocol=SSL
ssl.client.auth=required
listeners=PLAINTEXT://:9092,SSL://:9093

私の(コンフルエントなプラットフォームのインストールディレクトリ)/etc/schema-registry/schema-registry.properties

listeners=http://0.0.0.0:8081,https://0.0.0.0:8082
ssl.truststore.location=/home/kafka/kafka.server.truststore.jks
ssl.truststore.password=password
ssl.keystore.location=/home/kafka/kafka.server.keystore.jks
ssl.keystore.password=password
ssl.key.password=password
ssl.client.auth=true

以前に作成したトピックがありtest、サーバーでメッセージを公開すると失敗しました:

[kafka@kafka-confluent ~]$ echo "Hello, World" | /home/kafka/confluent-5.4.0/bin/kafka-console-producer --broker-list localhost:9093 --topic test > /dev/null

[2020-02-20 18:45:12,193] ERROR Error when sending message to topic test with key: null, value: 13 bytes with error: (org.apache.kafka.clients.producer.internals.ErrorLoggingCallback)
org.apache.kafka.common.errors.TimeoutException: Topic test not present in metadata after 60000 ms.

次に、を確認したところserver.log、認証に失敗したことが示されています。

[2020-02-20 18:45:47,754] INFO [SocketServer brokerId=0] Failed authentication with /127.0.0.1 (SSL handshake failed) (org.apache.kafka.common.network.Selector)
4

1 に答える 1

0

チェックする価値がありますssl.endpoint.identification.algorithm

クライアントがサーバーのホスト名を検証するために使用するエンドポイント識別アルゴリズム。デフォルト値は ですhttps。ブローカー間通信のためにブローカーによって作成されたクライアント接続を含むクライアントは、ブローカーのホスト名がブローカーの証明書のホスト名と一致することを確認します。ssl.endpoint.identification.algorithm空の文字列に設定してサーバーのホスト名の検証を無効 にする

したがって、ssl.endpoint.identification.algorithm空の文字列に設定するとうまくいくはずです。

ssl.endpoint.identification.algorithm=

この構成は中間者攻撃を防ぐため、それに応じて構成することを検討してください。

于 2020-02-20T13:41:16.930 に答える