ノード間接続のためのSSLの構成

ノード間の暗号化は、クラスター内のデータベース・ノード間の転送中のデータを保護します。

ノード間の暗号化では、クラスター内のノード間を転送中のデータをSSL(Secure Sockets Layer)を使用して保護します。
ヒント: SSL証明書の生成については、「ローカルSSL証明書とキーストア・ファイルの使用」を参照してください。

OpsCenter Lifecycle Managerで、DataStax Enterpriseクラスターがノード間の暗号化を使用するように構成できます。また、内部認証局を使用するサーバー証明書の作成プロセスが自動化され、生成されるキーストアとトラストストアが各ノードに自動的にデプロイされます。

cassandra.yaml

cassandra.yamlファイルの場所は、インストールのタイプによって異なります。
パッケージ・インストール /etc/dse/cassandra/cassandra.yaml
tarボール・インストール installation_location/resources/cassandra/conf/cassandra.yaml

手順

ノード間のSSLを有効にするには、各ノードのcassandra.yamlserver_encryption_optionsを設定します。
  1. 暗号化するノード間トラフィックを制限します。internode_encryptionを以下のいずれかのオプションに設定します。
    • all -すべてのノード間通信を暗号化します
    • none - 暗号化は行いません
    • dc -データ・センター間のトラフィックを暗号化します(サーバーのみ)
    • rack - ラック間のトラフィックを暗号化します(サーバーのみ)
  2. クライアントとノード間の暗号化が必要です。require_client_authtrueに設定します。
    ヒント: 有効にした後で、SSLを使用するようクライアント(nodetoolやcqlshなど)を構成する必要があります。
  3. 接続されているホスト名が証明書と一致していることを確認します。require_endpoint_verificationtrueに設定します。
  4. キーストアとトラストストアを構成します。
    • ローカルキー・ストアとトラストストア・ファイル:
      • keystore_type: PKCS12
      • keystore:DSEインストール・ディレクトリからの相対パス、またはキーストア・ファイルの絶対パス。
      • keystore_password:キーストアにアクセスするためのパスワード。
      • truststore_type: PKCS12
      • truststore:DSEインストール・ディレクトリからの相対パス、またはトラストストア・ファイルの絶対パス。
      • truststore_password:トラストストアにアクセスするためのパスワード。
      ローカル・ファイルの例:
      server_encryption_options:
         internode_encryption: all
         keystore_type: PKCS12
         keystore: resources/dse/conf/keystore.jks
         keystore_password: myPassKey
         truststore_type: PKCS12
         truststore: resources/dse/conf/truststore.jks
         truststore_password: truststorePass
         require_client_auth: true
         require_endpoint_verification: true
      ヒント: ローカル暗号化用にトラストストアおよびキーストア・パスワードを暗号化する方法については、「構成ファイル・プロパティの暗号化」を参照してください。 KMIP用にトラストストアおよびキーストア・パスワードを暗号化する方法については、「構成ファイル・プロパティの暗号化」を参照してください.
    • リモート・キーストアとトラストストア:
      注: プロバイダーのインストールが必要です。「リモートPKCS11キーストア・プロバイダーの使用」を参照してください。
      リモートの例:
      server_encryption_options:
         internode_encryption: all
         keystore_type: PKCS11
         keystore: 
         keystore_password: 
         truststore_type: PKCS11
         truststore: 
         truststore_password: 
         require_client_auth: 
         require_endpoint_verification:
  5. DSEを再起動します