マシンエージェントの SSL の有効化
Related pages:
このページでは、SSL を使用してコントローラに接続するようにマシンエージェントを設定する方法について説明します。SaaS コントローラを使用しているか、SSL を使用するようにオンプレミスコントローラを設定していることを前提としています。
マシンエージェントは、SSL モード時の SSL 信頼チェーンの拡張および強制実行をサポートしています。
Plan SSL Configuration
Gather this information:
- The Controller SSL port:
- For SaaS Controllers: SSL port is 443
- For on-premises Controllers: Default SSL port is 8181, but you may configure the Controller to listen for SSL on another port
- The signature method for the Controller's SSL certificate:
- A publicly known certificate authority (CA) signed the certificate. This applies for DigiCert, Verisign, Thawte, and other commercial CAs.
- A CA internal to your organization signed the certificate. Some companies maintain internal certificate authorities to manage trust and encryption within their domain.
- The Controller uses a self-signed certificate.
Establish Trust for the Controller's SSL Certificate
To establish trust between the Machine Agent and the Splunk AppDynamics Controller, you must create an agent truststore that contains the root certificate for the authority that signed the Controller's certificate.
Secure the Machine Agent Truststore
We recommend you take the following security measures to prevent tampering with the Machine Agent truststore:
-
Secure the truststore file through filesystem permissions:
-
Make the Agent truststore readable by any user
-
Make the truststore owned by a privileged user
-
Make the truststore writable only by the specified privileged user
-
-
Secure the controller-info configuration file so that it is only readable by the Agent runtime user and only writable by a privileged user:
<machine_agent_home>/conf/controller-info.xml
Enable SSL for the Machine Agent
<?xml version="1.0" encoding="UTF-8"?>
<controller-info>
<controller-host>mycompany.saas.appdynamics.com</controller-host>
<controller-port>443</controller-port>
<controller-ssl-enabled>true</controller-ssl-enabled>
<!-- Encrypted Controller keystore / agent trust store password -->
<controller-keystore-password>Tw49bd0hdCMBoQ5pfMMuYA/cA5B4pouVPkv48ovRm6c=</controller-keystore-password>
<controller-keystore-filename>../../conf/cacerts.jks</controller-keystore-filename>
...
<!-- Secure Credential Store configuration -->
<!-- Enable the Secure Credential Store -->
<use-encrypted-credentials>true</use-encrypted-credentials>
<!-- Path to they secure credential keystore -->
<credential-store-filename>/opt/appdynamics/secretKeyStore</credential-store-filename>
<!-- Obfuscated secure credential keystore password -->
<credential-store-password>n/8GvAZsKk4gM3Z6g+XQ1w==</credential-store-password>
</controller-info>
Keystore証明書抽出ユーティリティ
キーストア証明書抽出ユーティリティは、コントローラの Java キーストアから証明書をエクスポートして、エージェントトラストストアに書き込みます。コントローラのエージェント ディストリビューションでこのユーティリティを実行できます。
<controller_home>/appserver/glassfish/domains/domain1/appagent