SSL暗号化を用いたcqlshの使用

SSL暗号化を用いたcqlshrcファイルの使用。

cqlshrc設定を取得する最も簡単な方法は、cqlshrcファイルを使用することです。cqlshrc.sampleは、出発点の例として、コピーすることができます。

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

手順

  1. SSL暗号化を用いてcqlshを実行するには、.cassandra/cqlshrcファイルをホーム・ディレクトリーまたはクライアント・プログラムのディレクトリーに作成します。以下の設定をファイルに追加する必要があります。検証が有効になっている場合は、証明書内のホストが接続先のマシンのホストと比較されて、証明書が信頼できることが確認されます。
    [authentication] username = fred password = !!bang!!$ [connection] hostname = 127.0.0.1 port = 9042 factory = cqlshlib.ssl.ssl_transport_factory [ssl] certfile = ~/keys/node0.cer.pem # Optional, true by default validate = true # The next 2 lines must be provided when require_client_auth = true in the cassandra.yaml file userkey = ~/node0.key.pem usercert = ~/node0.cer.pem [certfiles] # Optional section, overrides the default certfile in the [ssl] section for 2 way SSL 172.31.10.22 = ~/keys/node0.cer.pem 172.31.8.141 = ~/keys/node1.cer.pem
    注: 双方向のSSL暗号化には、証明書のdnameを生成するために[certfiles]で使用したのと同じIPアドレスを使用する必要があります。各ノードごとに、クライアントとリモート・ノード間、またはノード間の行を[certfiles]セクションに指定する必要があります。SSL証明書は構成ファイルまたは環境変数として提供する必要があります。環境変数(SSL_CERTFILEおよびSSL_VALIDATE)は、このファイルに設定されているオプションをすべてオーバーライドします。
  2. cqlshでローカル・ノードの暗号化接続を行うには、--sslオプションを使用してcqlshを起動します。
    $ cqlsh --ssl ## パッケージ・インストールの場合
    $ install_location/bin/cqlsh --ssl ## tarボール・インストールの場合
  3. cqlshとIPアドレスでリモート・ノードの暗号化接続を行うには、--sslオプションを使用してcqlshを起動します。
    $ cqlsh --ssl ## パッケージ・インストールの場合
    $ install_location/bin/cqlsh --ssl 172.31.10.22 ## tarボール・インストールの場合