OpsCenterとエージェントの通信用のSSL/TLSを有効にする - パッケージ・インストール

パッケージ・インストールのSSLを有効にするには、構成ファイルを編集します。

SSLキー生成プロセスは、パッケージ・インストール時に自動的に行われます。SSLキー・ファイルを再生成する必要がない限り、「4」に進んで、適切な構成ファイルを編集してSSLを有効にしてください。

始める前に

OpsCenterでは、SSLは.derファイル形式である必要があります。opscenter.confの既存の[agents] ssl_certfile.pem形式である場合は、以下のコマンドを実行して形式を変換します。
openssl x509 openssl x509 -outform der -in /var/lib/opscenter/ssl/opscenter.pem -out /var/lib/opscenter/ssl/opscenter.der
[agents] ssl_certfile
OpsCenterとエージェント間のSSLトラフィックに使用されるSSL証明書の場所。デフォルトの場所は、パッケージ・インストールの場合は/var/lib/opscenter/ssl/opscenter.der、tarボール・インストールの場合はinstall_location/ssl/opscenter.derです。

SSL証明書ファイル形式の詳細については、「SSL証明書の変換」を参照してください。

始める前に

opscenterd.conf

opscenterd.confファイルの場所は、インストールのタイプによって異なります。

  • パッケージ・インストール:/etc/opscenter/opscenterd.conf
  • tarボール・インストール:install_location/conf/opscenterd.conf

address.yaml

address.yamlファイルの場所は、インストールのタイプによって異なります。

  • パッケージ・インストール:/var/lib/datastax-agent/conf/address.yaml
  • tarボール・インストール:install_location/conf/address.yaml

手順

  1. オプション:
    警告: /usr/share/opscenter/sslディレクトリーに既にSSLファイルがある場合は、自動的に再作成されません。setup.pyを実行する前に、そのディレクトリーから古いSSLファイルを削除してください。
    注: setup.pyスクリプトでは、/tmpディレクトリーにexecパーミッションがある必要があります。/tmpディレクトリーにnoexecフラグが設定されていないことを確認してください。「エージェントのtmpディレクトリーの設定とセキュリティ保護」を参照してください。
    OpsCenter setup.pyスクリプトを実行します。
    sudo /usr/share/opscenter/bin/jython /usr/share/opscenter/bin/setup.py
    OpsCenterデーモンとエージェントが相互に通信するために使用されるSSLキーと証明書が/usr/share/opscenter/sslディレクトリーに生成されます。
  2. オプション: OpsCenter SSL秘密鍵opscenter.keyとOpsCenter SSL証明書opscenter.der/var/lib/opscenter/sslにコピーします。
    sudo cp /usr/share/opscenter/ssl/opscenter.key /var/lib/opscenter/ssl
    sudo cp /usr/share/opscenter/ssl/opscenter.pem /var/lib/opscenter/ssl
    OpsCenter SSLの秘密鍵と証明書は、/var/lib/opscenter/sslディレクトリーにあります。
  3. オプション: OpsCenter SSL秘密鍵opscenter.keyとOpsCenter SSL証明書opscenter.derの所有権を、opscenterユーザーとopscenterグループに変更します。
    sudo chown opscenter:opscenter /var/lib/opscenter/ssl/opscenter.key
    sudo chown opscenter:opscenter /var/lib/opscenter/ssl/opscenter.der
    OpsCenter SSLの秘密鍵と証明書が、OpsCenterデーモン・プロセスで読み取れるようになります。
  4. 必須: エディターでopscenterd.confを開き、[agents]セクションを追加してuse_sslオプションを設定し、SSLを有効にします。use_sslオプションの詳細については、「SSL用のエージェントの構成」を参照してください。
    sudo vi /etc/opscenter/opscenterd.conf
    
    [agents]
    use_ssl = true
    ssl_keyfile =  /var/lib/opscenter/ssl/opscenter.key
    ssl_certfile = /var/lib/opscenter/ssl/opscenter.der
    agent_keyfile = /var/lib/opscenter/ssl/agentKeyStore
    agent_keyfile_raw = /var/lib/opscenter/ssl/agentKeyStore.key # for non-Java clients
    agent_certfile = /var/lib/opscenter/ssl/agentKeyStore.der
  5. OpsCenterデーモンを再起動します
  6. エージェントが既にデプロイされているクラスターに接続する場合は、各ノードにログインしてaddress.yamlファイルを再構成します。すべてのノードでエージェントを再構成します。
    ヒント: すべてのノードの構成ファイルを手動で編集することを避けるには、「DataStaxエージェントの自動インストール」の手順に従ってください。
    1. OpsCenterマシンの/var/lib/opscenter/ssl/agentKeyStoreを、クラスター内の各ノードの/var/lib/datastax-agent/ssl/agentKeyStoreにコピーします。
      scp /var/lib/opscenter/ssl/agentKeyStore user@node:/var/lib/datastax-agent/ssl/
      ここで、nodeは、ノードのホスト名またはIPアドレスのいずれかです。userは、ノードのユーザーIDです。
    2. sshを使用してクラスター内の各ノードにログインします。
      ssh user@node
      ここで、nodeは、ノードのホスト名またはIPアドレスのいずれかです。userは、ノードのユーザーIDです。
    3. address.yamlファイルを編集して、use_sslの値を1に変更します。
      sudo vi /var/lib/datastax-agent/conf/address.yaml
      use_ssl: 1
    4. エージェントを再起動します。
      sudo service datastax-agent restart
  7. opscenterdとすべてのエージェントを構成して再起動したら、[Agent Status]タブでエージェント接続が適切であることを確認します。