Nginx ssl_verify_client 开启;

Nginx ssl_verify_client 开启;

我正在考虑使用开源版本的 nginx 作为反向代理,使用 docker 和自签名证书为上游提供安全的文件服务,这样我就可以在客户端上运行脚本并下载文件。我可以让一切正常工作,直到我应用“ssl_verify_client on;”,然后我的 curl、wget 和 powershell 尝试失败。我猜是因为我没有正确生成或注册证书,因此信任链得以维护。

我已经限制了速度,看看是否可以让它在没有上游或 docker 的情况下工作(即,仅尝试在 VM 中命中反向代理,结果相同,直到我执行“ssl_verify_client on;”为止)。

我已将我的 pem 添加到客户端的 ca 证书并完成“更新 ca 证书”(我应该在服务器上执行此操作吗?)。

curl 示例(获取“400 未发送所需的 SSL 证书”):curl -v -s --key client.key --cert client.crt --cacert client.pemhttps://mysite.dyndns.org/file.txt-o /home/用户/桌面/文件.txt

尝试诊断问题,我尝试:“openssl s_client -connect mysite.dyndns.org:443”并得到:验证错误:num = 20:无法获取本地颁发者证书

很高兴发布我的 nginx.conf,以及我如何生成证书,但最初我想问的是:

  • 我尝试做的事情可行吗? curl、wget 或 powershell 可以使用自签名证书(而不是购买的证书)吗?

  • 使用 dyndns (无需验证即可工作) 有问题吗?

  • 如果我的证书生成看起来有问题,有人可以建议一个链接作为操作方法吗(我一直在尝试https://jamielinux.com/docs/openssl-certificate-authority/和 nate 商品网站)。“LetsEncrypt” 是“正确答案”吗?

我知道我可能需要发布有关所使用的命令/配置等的更多详细信息。任何帮助都值得感激。谢谢!

相关内容