ノード間の暗号化

ノード間の暗号化は、ゴシップ通信も含めて、クラスター内のノード間で転送されるデータをSSL(Secure Sockets Layer)を使用して保護します。

ノード間の暗号化は、ゴシップ通信も含めて、クラスター内のノード間で転送されるデータをSSL(Secure Sockets Layer)を使用して保護します。

始める前に

すべてのノードに、関連するすべてのSSL証明書が必要です。「サーバーの証明書の準備」を参照してください。

ノード間のSSLを有効にするには、cassandra.yamlファイルにserver_encryption_optionsを設定する必要があります。

cassandra.yamlファイルの場所は、インストールのタイプによって異なります。
パッケージ・インストール /etc/cassandra/cassandra.yaml
tarボール・インストール install_location/resources/cassandra/conf/cassandra.yaml
Windowsインストール C:\Program Files\DataStax Community\apache-cassandra\conf\cassandra.yaml

手順

各ノードのsever_encryption_optionsに対して以下の設定を行います。

  • internode_encryptionを有効にします。
    使用可能なオプションは以下のとおりです。
    • all
    • none
    • dc: Cassandraはデータ・センター間のトラフィックを暗号化します。
    • rack: Cassandraはラック間のトラフィックを暗号化します。
  • .keystoreファイルと.truststoreファイルへの適切なパスを設定します。
  • 必要なパスワードを指定します。パスワードは、キーストアおよびトラストストアの生成時に使用したパスワードと一致する必要があります。
  • 双方向の証明書認証を有効にするには、require_client_authtrueに設定します

server_encryption_options:internode_encryption:all keystore:/conf/keystore.node0 keystore_password:cassandra truststore:/conf/truststore.node0 truststore_password:cassandra require_client_auth:true

次のタスク

Cassandraは、cassandra.yamlファイルに変更を加えた後、再起動する必要があります。変更を加えた後、nodetoolユーティリティを使用して、すべてのノードが稼働していることを確認します。
$ cqlsh --ssl ## パッケージ・インストールの場合
$ install_location/bin/nodetool ring ## tarボール・インストールの場合