我在Nginx背后的一个基于Flask的小型服务上工作,该服务通过HTTP提供一些内容。它将使用双向证书身份验证 - 我了解如何处理Nginx - 但是用户必须登录并加载他们自己的证书才能用于身份验证。
所以场景是:
我无法在Nginx文档中找到任何内容,说明我可以拥有一个Nginx查看的密钥库或目录,以匹配传入请求的证书。我知道我可以配置这个' per-server'在Nginx。
我目前的想法是,我允许Web应用程序触发读取Nginx conf文件的脚本,插入新的服务器条目和指定的端口以及上载的cert的路径,并发送HUP信号以重新加载Nginx的。
我想知道社区中是否有人在使用Nginx之前做过类似的事情,或者他们是否有更好的解决方案来解决我所呈现的奇怪场景。
答案 0 :(得分:0)
经过更多的研究和阅读nginx.com上的一些文档后,我发现我已经过时了。
我应该在sites-available
中添加和删除配置文件,然后通过调用/etc/nginx/conf.d/
告诉Nginx重新加载,而不是修改sudo nginx -s reload
中的配置。
我让应用程序调用脚本来运行所需的命令,并将脚本添加到www-data
用户的sudoers文件中。