带有自签名 ssl 证书的 prometheus 的 Https
Posted
技术标签:
【中文标题】带有自签名 ssl 证书的 prometheus 的 Https【英文标题】:Https for prometheus with self-signed ssl certificate 【发布时间】:2021-09-24 23:26:25 【问题描述】:尝试为 prometheus 建立 SSL(通过 docker 启动)。我使用 open ssl 自己生成了密钥和 crt。对:key 和 crt 工作正常。 当我在主机上执行此命令时:
openssl s_server -cert prometheus.crt -key prometheus.key
意思是“接受”
这是我用于 prometheus 容器的 Dockerfile:https://pastebin.com/4wGtCGp6 当我构建映像并启动它时,它说: level=error ts=2021-09-24T20:44:11.649Z caller=stdlib.go:105 component=web caller="http: 来自 127.0.0.1:50458 的 TLS 握手错误" msg="remote error: tls: bad certificate " кричит постоянно
在 web.yml 中,我通过以下方式配置 SSL:
tls_server_config:
cert_file: /etc/prometheus/prometheus.crt
key_file: /etc/prometheus/prometheus.key
在 prometheus.yml 中,我通过以下方式配置 SSL:
scrape_configs:
# The job name is added as a label `job=<job_name>` to any timeseries scraped from this config.
- job_name: 'prometheus'
scheme: https
tls_config:
ca_file: /etc/prometheus/prometheus.crt
cert_file: /etc/prometheus/prometheus.crt
key_file: /etc/prometheus/prometheus.key
这个错误的原因可能是什么?
【问题讨论】:
【参考方案1】:如果它是自签名的,则不需要 CA 文件,因此请尝试删除 tls_config
中的该行并重新启动容器。
我知道这很老了,所以如果回答一个老问题不好,请道歉。随意删除。
【讨论】:
以上是关于带有自签名 ssl 证书的 prometheus 的 Https的主要内容,如果未能解决你的问题,请参考以下文章
带有自签名证书的 IIS 7.5 SSL 错误“ssl_error_rx_record_too_long”
Jenkins 无法使用带有自签名证书的 HTTPS (HTTP + SSL) 连接到 SonarQube 服务器