NGINX配置仅允许本地或VPN接入的问题咨询
NGINX配置仅允许本地或VPN接入的问题咨询
各位好,我在配置NGINX的时候碰到了一个场景需求,想请教下大家的建议:
我打算用NGINX托管一批网站,其中一部分需要对互联网开放,但像BitWarden这类敏感服务,我只想让它仅限本地局域网或者通过VPN连接后才能访问,绝对不能暴露到公网环境里——毕竟这类服务需要安全的访问链路,我也不想让外部随便能触及到。
我自己琢磨出了一个配置思路:先拒绝所有IP的请求,只放行本地网段的访问。下面是我写的具体NGINX配置代码:
server { listen 443 ssl; listen [::]:443 ssl; ssl_certificate /etc/letsencrypt/live/xxx/fullchain.pem; # managed by Certbot ssl_certificate_key /etc/letsencrypt/live/xxx/privkey.pem; # managed by Certbot server_name xxx; allow 192.168.178.0/24; deny all; location / { set $upstream https://vault; proxy_pass $upstream; include proxy_params; } }
目前我做了一些测试,结果如下:
- 从互联网直接访问这个服务时,会返回403错误,这完全符合我的预期;
- 用手机通过IKEVv2/IPSec PSK连接VPN后,能够正常访问这个Web服务器;
不过现在我遇到了一点状况(原文相关内容未完整给出),想问问有没有大佬能帮我分析下后续该怎么调整配置?
备注:内容来源于stack exchange,提问作者TheBohne
相关产品推荐
相关产品推荐

