SSL/TLS 输入设置
Elastic Stack
此页面上的大多数选项都受所有 APM Server 部署方法支持。
这些设置适用于 APM Server 和 APM 代理之间的 SSL/TLS 通信。请参阅 APM 代理 TLS 通信 以了解更多信息。
在 APM 集成设置中启用 TLS,并使用 SSL/TLS 输入设置来设置服务器证书和密钥的路径。
以下是一个基本的 APM Server SSL 配置,启用了安全通信。 这将使 APM Server 提供 HTTPS 请求而不是 HTTP。
apm-server.ssl.enabled: true
apm-server.ssl.certificate: "/path/to/apm-server.crt"
apm-server.ssl.key: "/path/to/apm-server.key"
如果 APM 代理使用无法通过已知 CA 验证的证书(例如,自签名证书)进行身份验证,请使用 ssl.certificate_authorities
设置自定义 CA。 这将自动修改 ssl.client_authentication
配置以要求身份验证。
启用或禁用 TLS。 默认禁用。
APM Server 二进制文件 | apm-server.ssl.enabled |
Fleet 管理 | 启用 TLS |
包含用于服务器身份验证的证书的文件路径。 如果启用了 TLS,则为必需。
APM Server 二进制文件 | apm-server.ssl.certificate |
Fleet 管理 | 服务器证书的文件路径 |
包含服务器证书密钥的文件路径。 如果启用了 TLS,则为必需。
APM Server 二进制文件 | apm-server.ssl.key |
Fleet 管理 | 服务器证书密钥的文件路径 |
用于解密存储在配置的 apm-server.ssl.key
文件中的加密密钥的密码。
APM Server 二进制文件 | apm-server.ssl.key_passphrase |
Fleet 管理 | 不适用 |
此设置是允许的协议版本的列表:SSLv3
、TLSv1.0
、TLSv1.1
、TLSv1.2
和 TLSv1.3
。 我们不建议使用 SSLv3
或 TLSv1.0
。 默认值为 [TLSv1.1, TLSv1.2, TLSv1.3]
。
APM Server 二进制文件 | apm-server.ssl.supported_protocols |
Fleet 管理 | 支持的协议版本 |
要使用的密码套件的列表。 第一个条目具有最高优先级。 如果省略此选项,则使用 Go 加密库的默认套件(推荐)。 请注意,TLS 1.3 密码套件在 Go 中无法单独配置,因此它们不包含在此列表中。
APM Server 二进制文件 | apm-server.ssl.cipher_suites |
Fleet 管理 | TLS 连接的密码套件 |
以下密码套件可用
密码 | 备注 |
---|---|
ECDHE-ECDSA-AES-128-CBC-SHA | |
ECDHE-ECDSA-AES-128-CBC-SHA256 | 仅限 TLS 1.2。 默认禁用。 |
ECDHE-ECDSA-AES-128-GCM-SHA256 | 仅限 TLS 1.2。 |
ECDHE-ECDSA-AES-256-CBC-SHA | |
ECDHE-ECDSA-AES-256-GCM-SHA384 | 仅限 TLS 1.2。 |
ECDHE-ECDSA-CHACHA20-POLY1305 | 仅限 TLS 1.2。 |
ECDHE-ECDSA-RC4-128-SHA | 默认禁用。 不建议使用 RC4。 |
ECDHE-RSA-3DES-CBC3-SHA | |
ECDHE-RSA-AES-128-CBC-SHA | |
ECDHE-RSA-AES-128-CBC-SHA256 | 仅限 TLS 1.2。 默认禁用。 |
ECDHE-RSA-AES-128-GCM-SHA256 | 仅限 TLS 1.2。 |
ECDHE-RSA-AES-256-CBC-SHA | |
ECDHE-RSA-AES-256-GCM-SHA384 | 仅限 TLS 1.2。 |
ECDHE-RSA-CHACHA20-POLY1205 | 仅限 TLS 1.2。 |
ECDHE-RSA-RC4-128-SHA | 默认禁用。 不建议使用 RC4。 |
RSA-3DES-CBC3-SHA | |
RSA-AES-128-CBC-SHA | |
RSA-AES-128-CBC-SHA256 | 仅限 TLS 1.2。 默认禁用。 |
RSA-AES-128-GCM-SHA256 | 仅限 TLS 1.2。 |
RSA-AES-256-CBC-SHA | |
RSA-AES-256-GCM-SHA384 | 仅限 TLS 1.2。 |
RSA-RC4-128-SHA | 默认禁用。 不建议使用 RC4。 |
以下是定义密码套件时使用的首字母缩略词列表
- 3DES:使用三重 DES 的密码套件
- AES-128/256:使用 AES 和 128/256 位密钥的密码套件。
- CBC:使用密码块链接作为块密码模式的密码。
- ECDHE:使用椭圆曲线 Diffie-Hellman (DH) 临时密钥交换的密码套件。
- ECDSA:使用椭圆曲线数字签名算法进行身份验证的密码套件。
- GCM:伽罗瓦/计数器模式用于对称密钥密码术。
- RC4:使用 RC4 的密码套件。
- RSA:使用 RSA 的密码套件。
- SHA、SHA256、SHA384:使用 SHA-1、SHA-256 或 SHA-384 的密码套件。
ECDHE(椭圆曲线 Diffie-Hellman 临时密钥交换)的曲线类型列表。
APM Server 二进制文件 | apm-server.ssl.curve_types |
Fleet 管理 | 基于 ECDHE 密码套件的曲线类型 |
用于验证客户端证书的根证书列表。 如果 certificate_authorities
为空或未设置,则使用主机系统的受信任证书颁发机构。 如果设置了 certificate_authorities
,则 client_authentication
将自动设置为 required
。 目前只有 RUM 代理通过浏览器、Java 代理(请参阅代理证书身份验证)和 Jaeger 代理支持发送客户端证书。
APM Server 二进制文件 | apm-server.ssl.certificate_authorities |
Fleet 管理 | 不适用 |
此配置配置支持哪些类型的客户端身份验证。 有效选项为 none
、optional
和 required
。 默认值为 none
。 如果已指定 certificate_authorities
,则此设置将自动更改为 required
。 仅当期望代理提供客户端证书时才需要配置此选项。 目前只有 RUM 代理通过浏览器、Java 代理(请参阅代理证书身份验证)和 Jaeger 代理支持发送客户端证书。
none
- 禁用客户端身份验证。optional
- 如果提供了客户端证书,服务器将验证它。required
- 要求客户端提供有效证书。
APM Server 二进制文件 | apm-server.ssl.client_authentication |
Fleet 管理 | 不适用 |