我尝试了很长时间以找到“如何允许对等方仅访问Internet?”问题的答案,但我没有找到任何东西。我唯一理解的是,这可以通过 iptables 来完成。
仅 Internet 访问意味着其他对等方无法访问其他对等方
目前,这是我的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>
插入在wireguard接口之间丢弃“环回”转发的规则:
顺便说一句,
ACCEPT
规则如下:除非您在某个地方或遵循
-P FORWARD DROP
一般规则,否则是不必要的。DROP
(如果有任何一种情况,那么您的ACCEPT
规则本身应该是不够的。)注意: 和 的区别
-I
,-A
或 的含义-P
,请参考的手册页iptables
。长话短说,iptables 中的规则顺序很重要(或者实际上,防火墙/{black,white}listing)。但是,每个表 (filter
,nat
, ...) 都有自己的顺序。(并且顺序主要在filter
.)也许您正在寻找
AllowedIPs
([Peer] 配置部分)的 Wireguard 设置。这是本地主机应通过 WireGuard 隧道路由到远程对等方的 IP 地址集。此设置告诉本地主机隧道中的内容。
例子:
有关更多信息,请参阅以下来源: