与 APM Server 的 SSL/TLS 通信编辑

如果在 APM Server 上启用了 SSL/TLS 通信,请在配置 server_url 时使用 https 协议。

APM Server 证书身份验证编辑

默认情况下,当使用 HTTPS 与 APM Server 通信时,代理将通过验证其证书来验证 APM Server 的身份。不建议更改此默认设置,但可以通过 verify_server_cert 配置来实现。

如果 APM Server 使用的自签名证书,则需要将相同的证书(或签署该证书的自定义 CA 的根证书)添加到 JVM 的信任库中。可以通过在命令行中设置 -Djavax.net.debug=all 来查找使用的信任库。通常,它应该是 $JAVA_HOME/jre/lib/security/cacerts。例如,可以使用 keytool 将证书导入信任库:keytool -import -alias apm-server-cert -file /path/to/certificate.crt -keystore /path/to/truststore

代理证书身份验证编辑

如果在 APM Server 上启用了 SSL 客户端身份验证,则代理需要在 HTTPS 握手过程中发送正确的证书。目前 Java 代理上没有支持该功能的配置,也没有适用于所有情况的简单方法。一般来说,代理会从 JVM 密钥库中发送证书。因此,如果您的 JVM 没有使用密钥库,请将证书文件和相应的私钥添加到密钥库中,并配置您的 JVM 使用它。

  -Djavax.net.ssl.keyStore=keystore.p12
  -Djavax.net.ssl.keyStoreType=pkcs12
  -Djavax.net.ssl.keyStorePassword=<password>