我正在尝试使用 let's encrypt 生成的网站证书来配置带有 HTTPS 的 prometheus 节点导出器。
有具有权限的证书默认让我们加密权限
但是我在使用用户“node_exporter”的节点导出服务时遇到此错误:无法加载 X509KeyPair:打开 /etc/letsencrypt/live/xxx/fullchain.pem
本单位服务:
[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target
[Service]
User=node_exporter
Group=node_exporter
Type=simple
ExecStart=/opt/node_exporter/node_exporter --web.config.file=/opt/node_exporter/configuration.yml
[Install]
WantedBy=multi-user.target
有没有人已经设法使用 let's encrypt 证书在 HTTPS 模式下激活 node_exporter
提前感谢您的帮助
答案1
/etc/letsencrypt/archive
包含密钥和证书的目录以及/etc/letsencrypt/live
包含当前证书和密钥的符号链接的目录都只能由用户读取root
( drwx------ root:root
)。可以使用这些证书的服务有一个以 root 身份运行的进程,该进程叉子以非特权用户身份进行处理。
您可以将证书和密钥复制到用户node_exporter
能够读取它们的地方。最好在续订后执行此操作以保持最新状态。还要确保 Node Exporter 能够重新加载更新的文件或在证书续订后重新加载/重新启动。