我可能有点过度偏执。但我仍然认为,在安全方面,偏执并不是坏事。
我有一个在 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.0
VPS 的实际 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;
}