我正在托管一个启用了 UI 的 LXD 实例。我已通过 NGINX 代理管理器访问 UI,Cloudflare 正在代理来自子域的 DNS 连接。
在我的本地网络上,我可以成功生成客户端身份验证证书、存储它并访问我的服务器。
在我的 NGINX 代理(域)上,我的浏览器已选择证书,但 LXD UI 似乎没有注意到它,并且我收到以下错误“未找到匹配的证书添加操作”
我已经生成了新的证书,替换了它们,并在 LXD 主机上执行了命令,但无济于事。
值得注意的是,当我从本地网络访问 UI 时,系统会提示我选择证书。在 NGINX 域方面,情况并非如此 - 系统从未要求我出示证书,但我的浏览器报告说,我在隐私菜单中选择了在此域上使用证书。
我已经在我的网络上的两台机器(edge 和 firefox)上尝试过此操作——结果相同。
我已使用 hostnamectl set-hostname 将主机名设置为主机上的相应域名,以防出现此问题
下面是我的 NGINX 代理管理器配置文件。
server {
listen 443 ssl;
server_name redacted;
# SSL configuration
ssl_certificate /opt/certs/cloudflare/readacted;
ssl_certificate_key /opt/certs/cloudflare/redacted;
# Security enhancements for SSL/TLS
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
location / {
# Proxy settings
proxy_pass https://redacted:8443;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
# SSL proxy settings
proxy_ssl_certificate /opt/certs/cloudflare/redacted.pem;
proxy_ssl_certificate_key /opt/certs/cloudflare/redacted.key;
proxy_ssl_verify off;
}
}
另外,这是该命令的输出lxc config show
root@lxd:/home/user# lxc config show
config:
core.https_address: '[::]:8443'
core.trust_password: true
user.ui_title: redacted.com
root@edith:/home/user#
NGINX 是否可能不允许客户端证书?我是否需要完成其他配置?