如何允许对等体仅访问互联网?

如何允许对等体仅访问互联网?

我花了很长时间寻找“如何允许对等方仅访问互联网?”这个问题的答案,但我什么也没找到。我唯一明白的是,这可以通过 iptables 来实现。

仅限互联网访问意味着其他对等点无法被其他对等点访问

目前,这是我的 wireguard 配置 -

[Interface]
Address = 10.0.0.1/24
SaveConfig = true
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE
ListenPort = 51830
PrivateKey = <private_key>

答案1

插入删除 wireguard 接口之间的“环回”转发的规则:

iptables -I FORWARD -i %i -o %i -j DROP

顺便说一下,ACCEPT规则如下:

iptables -A FORWARD -i %i -j ACCEPT

-P FORWARD DROP除非您有遵循的某个地方或一般规则,否则没有必要DROP。(如果存在上述情况,则您的ACCEPT规则本身就不够充分。)

-I注:有关和 的区别-A,或 的含义-P,请参阅的手册页iptables。长话短说,规则顺序在 iptables 中很重要(或者实际上,防火墙/{黑名单、白名单}一般)。不过,每个表(filter、、nat...)都有自己的顺序。(顺序在 中最为重要filter。)

答案2

也许您正在寻找 AllowedIPs([Peer] 配置部分)的 Wireguard 设置。

这是本地主机应通过 WireGuard 隧道路由到远程对等端的一组 IP 地址。此设置告知本地主机隧道中的内容。

例子:

AllowedIPs = 10.21.199.0/24
PersistentKeepalive = 25

有关详细信息,请参阅以下来源:

相关内容