nodetool、dsetool、およびdse advrep用にSSLを設定する
SSL暗号化を使って、nodetool、dsetool、およびdse advrepを使用する。
nodetool、dsetool、およびdse advrepでSSLを使用するには、JMXのセットアップが必要です。
cassandra-env.sh
cassandra-env.shファイルの場所は、インストールのタイプによって異なります。パッケージ・インストール | /etc/dse/cassandra/cassandra-env.sh |
tarボール・インストール | installation_location/resources/cassandra/conf/cassandra-env.sh |
始める前に
注: プロダクション環境では、jksファイルを使用してクラスター全体をセキュリティ保護します。単一ノードの開発環境では、より単純な単一ノード、ローカル・キーストア・ファイル、およびトラストストア・ファイルを使用できます。
手順
- サーバー側でJMX SSLを構成します。
重要: クラスター内の各ノードで cassandra-env.sh ファイルにこの変更を加えてください。
- DSEを再起動します。
-
クライアント設定を構成するには、コマンドが実行されるノードで以下の設定を使用して、ホームまたはクライアント・プログラム・ディレクトリーに
.cassandra/nodetool-ssl.properties
ファイルを作成します。プロダクション環境:-Dcom.sun.management.jmxremote.ssl=true -Dcom.sun.management.jmxremote.ssl.need.client.auth=false -Dcom.sun.management.jmxremote.registry.ssl=true -Djavax.net.ssl.keyStore=/usr/local/lib/dse/resources/dse/conf/.keystore -Djavax.net.ssl.keyStorePassword=cassandra -Djavax.net.ssl.trustStore=/usr/local/lib/cassandra/conf/.truststore -Djavax.net.ssl.trustStorePassword=cassandra
開発環境:
-Djavax.net.ssl.keyStore=keystore.node0 -Djavax.net.ssl.keyStorePassword=cassandra -Djavax.net.ssl.trustStore=truststore.node0 -Djavax.net.ssl.trustStorePassword=cassandra -Dcom.sun.management.jmxremote.ssl.need.client.auth=true -Dcom.sun.management.jmxremote.registry.ssl=true
任意の操作で暗号化された接続にSSLを使用して、nodetool、dsetool、およびdse advrepを使用するには、次の操作を行います。
-
--sslオプションを使用してコマンドを起動します。
nodetoolの例:
nodetool --ssl command
dsetoolの例:dsetool --ssl command
dse advrepの例:dse advrep --ssl command
-
暗号化された接続に対して--sslオプションを使用してコマンドを起動し、すべての操作の認証と権限管理のためのユーザー名とパスワードを指定します。パスワードを入力してしない場合、入力するように求められます。
nodetoolの例:
nodetool --ssl -u username -pw password command
dsetoolの例:dsetool --ssl -a jmx_username -b jmxpassword command
dse advrepの例:dse advrep --ssl -u username -p password command