我们使用了NGinx的一些应用服务器。 我们现在希望限制代理对某些应用程序的访问,但仍然允许在同一主机和内部LAN上运行的脚本绕过新的身份validation。
为此,我们将以下内容添加到configuration中:
satisfy any; allow 192.168.32.0/24; allow 192.168.29.29; allow 127.0.0.1; deny all; proxy_pass http://127.0.0.1...
但是,这允许所有的请求进入 – 大概是因为代理完成到127.0.0.1,因此所有的请求匹配上面的“允许127.0.0.1”规则。
我们做错了什么? 什么是正确的方法?
好的,我们find了原因,NGinx是无辜的。 最近引入了一个(似乎)不相关的设置更改,将HTTPredirect到HTTPS。 在我们的设置中 – 由于难以解释的原因 – 在同一台机器上运行的HAProxy会终止SSL连接。
所以, 所有的 HTTP连接首先被redirect到HTTPS,然后所有的SSL连接都出现(到NGinx)来源于127.0.0.1。 对不起,噪音和感谢所有试图帮助。