我有一个(tinc)VPN 设置,其中有多个客户端连接到位于防火墙后面的 LAN 上的 VPN 服务器。我想将该 LAN 暴露给该服务器正在服务的 VPN。我在网上看到了一些如何配置 iptables 的示例,但我想使用 FirewallD 配置此设置,但尚未成功。
VPN 子网是 10.0.0.0/24 ,本地 LAN 是 192.168.178.0/24 。VPN 服务器位于 10.0.0.60 和 192.168.178.47 。测试客户端位于 10.0.0.17 。
我跑过:
firewall-cmd --permanent --zone=external --add-interface=vpn
firewall-cmd --permanent --zone=internal --add-interface=eth0
firewall-cmd --permanent --zone=external --add-masquerade
systemctl restart firewalld
在 VPN 服务器和客户端上:
route add -net 192.168.178.0 netmask 255.255.255.0 gw 10.0.0.60
ping 192.168.178.1
返回 100% 丢包率。有什么我做错了吗?
PS:如果我在测试客户端上运行“ping 192.168.178.47”,我会收到回复!只是不是局域网的其余部分。
另一端的客户端也需要路由信息,所以我相信你需要设置一个网关让他们可以反过来交谈,除非你的 VPN 服务器当前充当 192.168.178.x 上的默认网关网络。
(如果您的防火墙设置正确),本地 LAN 上的机器将需要:
如果可能的话,最好将此规则添加到您的默认网关,否则每台机器都需要静态路由才能进行通信。