仅将 nginx 绑定到 vpn 地址

仅将 nginx 绑定到 vpn 地址

我可能有点过度偏执。但我仍然认为,在安全方面,偏执并不是坏事。

我有一个在 VPS 上运行的 Web 服务器。我在我的所有 VPS 和家用机器上运行 zerotier。然后我使用 Letsencrypt 运行 https Web 服务器。

因此,我有一个指向我的网络服务器的 DNS 条目,其地址为 zerotier VPS myzerotier_webserver.mydomain.com 172.29.70.241:。

现在,我想将对我的网络服务器的访问限制为仅限 zerotier 网络中的参与者。

我尝试过这个:

        listen 127.0.0.1:443 ssl http2;
        listen 172.29.0.0:443 ssl http2;

但这似乎无法通过我连接的家用笔记本电脑在myzerotier_webserver.mydomain.com浏览器中访问该服务器。

我也尝试用172.29.0.0VPS 的实际 IP 地址进行替换,例如172.29.70.241

但它也没有起作用。

这实际上可以以某种方式实现吗?我是否应该以不同的方式实现?也许它应该可以工作,所以问题在于我的其他配置是否错误?

答案1

如果您使用的是UFW,则只需允许特定范围的端口访问即可。以下是示例:

ufw allow from 172.29.70.0/24 to any port 443 proto tcp comment "HTTPS only zerotier"

更改172.29.70.0/24为适当范围。

也不要忘记制定默认的交通规则:

ufw default allow outgoing

ufw default deny incoming

并启用 UFW:

ufw enable && ufw reload

答案2

还有一个通过 NGINX 配置实现的选项,如下所示:

location / {
  allow 45.43.23.0/24; # Change this to appropriate range
  deny all;
}

相关内容