我试过这篇文章: http : //backreference.org/2010/05/02/controlling-client-to-client-connections-in-openvpn/,但没有运气。
我是新来的iptables。 你能看看我的configuration吗?
Docker容器(我使用这个: https : //github.com/kylemanna/docker-openvpn )在主机networking模式下运行
我正在使用禁用了firewalld
Centos7,并且安装并启用了iptables
。
ip_forward已启用。
#sysctl net.ipv4.ip_forward net.ipv4.ip_forward = 1
redirect-gateway def1
被closures,因为我不需要路由互联网stream量通过VPN服务器。
这里是最初的iptables规则。
[root]#iptables -L 连锁input(政策接受) 目标人select源目的地 连锁FORWARD(政策接受) 目标人select源目的地 随时随地都可以使用DOCKER-USER DOCKER-ISOLATION随处可见 接受所有 - 在任何地方ctstate RELATED,ESTABLISHED 随时随地都可以 随时随地接受 随时随地接受 接受所有 - 在任何地方ctstate RELATED,ESTABLISHED 随时随地都可以 随时随地接受 随时随地接受 链式输出(策略ACCEPT) 目标人select源目的地 连锁DOCKER(2参考) 目标人select源目的地 Chain DOCKER-ISOLATION(1参考) 目标人select源目的地 全部放在任何地方 全部放在任何地方 随时随地返回 连锁DOCKER-USER(1参考) 目标人select源目的地 随时随地返回
每个客户端都有一个静态IP的ccd
目录下的configuration文件。 以下是我如何为客户端做ifconfig-push 10.8.0.102 10.8.0.1
在我的openvpn.conf
我禁用了client-to-client
指令。
我有tun0
iface和10.8.0.0/24
networking。
首先,我允许已经build立的连接: iptables -A FORWARD -m conntrack --ctstate RELATED,ESTABLISHED -j ACCEPT
然后我提出了2个客户可以达到的规则:
iptables -A FORWARD -s 10.8.0.10 -d 10.8.0.102 -j ACCEPT iptables -A FORWARD -s 10.8.0.102 -d 10.8.0.10 -j ACCEPT
毕竟它不工作。 当我从我的MAC(具有IP 10.8.0.10)执行ping 10.8.0.102
,我得到:
➜〜ping 10.8.0.102 PING 10.8.0.102(10.8.0.102):56个数据字节 来自gwr-vl-201的36个字节****(***。**。**。133):filter禁止的通信 Vr HL TOS Len ID Flg off TTL Pro cks Src Dst 4 5 00 5400 29e3 0 0000 3d 01 8749 192.168.1.103 10.8.0.102
192.168.1.103 – 是我的LAN地址
这是我在mac上的路由表:
➜〜netstat -nr 路由表 互联网: 目标网关标志参考使用Netif过期 默认192.168.1.1 UGSc 65 0 en0 10.8.0.1 10.8.0.10 UH 0 0 utun1 46.101.242.41/32 192.168.1.1 UGSc 0 0 en0 127 127.0.0.1 UCS 0 0 lo0 127.0.0.1 127.0.0.1 UH 24 2286 lo0 169.254链接#4 UCS 0 0 en0 192.168.1链路#4 UCS 0 0 en0 192.168.1.1/32链接#4 UCS 2 0 en0 192.168.1.1 84:16:f9:c5:c4:da UHLWIir 63 26 en0 1043 192.168.1.103/32链接#4 UCS 0 0 en0 224.0.0 / 4链接#4 UmCS 1 0 en0 224.0.0.251 1:0:5e:0:0:fb UHmLWI 0 0 en0 255.255.255.255/32链接#4 UCS 0 0 en0
和我的服务器上的路由表:
[]#route -n 内核IP路由表 目标网关Genmask标志度量参考使用Iface 0.0.0.0 217.182.88.1 0.0.0.0 UG 100 0 0 eth0 10.8.0.0 10.8.0.2 255.255.255.0 UG 0 0 0 tun0 10.8.0.2 0.0.0.0 255.255.255.255 UH 0 0 0 tun0 docker0。172.17.0.0 0.0.0.0 255.255.0.0 U 0 0 0 docker0 172.19.0.0 0.0.0.0 255.255.0.0 U 0 0 0 br-44c0269fbf91 217。**。**。1 0.0.0.0 255.255.255.255 UH 100 0 0 eth0 217。**。**。** 1 0.0.0.0 255.255.255.255 UH 100 0 0 eth0
我错过了什么?
提前致谢!
我终于搞定了!
我所要做的就是将push "route 10.8.0.0 255.255.255.0"
到服务器configuration中。
之后,我可以创build任意iptables转发规则(正如我在上面的post中所做的),然后添加
iptables -A FORWARD -j DROP
否认一切。