iptables는 세 인터페이스 간에 트래픽을 전달합니다.

iptables는 세 인터페이스 간에 트래픽을 전달합니다.

내 iptables 구성에 어떤 문제가 있는지 이해하려고 노력 중입니다(iptables를 처음 사용하는 경우).

동일한 시스템에서 3개의 인터페이스가 실행되고 있으며 연결은 다음 순서로 설정됩니다.

섬기는 사람:

tun0: OpenVPN 서버가 구축되었습니다.

tun1: Openconnect가 설정되었습니다.

ppp0: Openfortivpn이 설정되었습니다.

고객:

OpenVPN established to Openvpn on server (tun0).

나는 원해요:

  1. 내 클라이언트에서 10.176.86.54로 전송된 모든 패킷은 tun0에서 tun1로 이동합니다.

  2. Destiny 100.126.20.133에 대한 모든 패킷은 tun0에서 ppp0까지입니다.

그래서 다음과 같이 구성을 했습니다.

sudo iptables -A FORWARD -i tun0 -o ppp0 -d 100.126.20.133 -j ACCEPT 
sudo iptables -A FORWARD -i ppp0 -o tun0 -m state --state ESTABLISHED,RELATED -j ACCEPT
sudo iptables -A FORWARD -i tun0 -o tun1 -d 10.176.86.54 -j ACCEPT
sudo iptables -A FORWARD -i tun1 -o tun0 -m state --state ESTABLISHED,RELATED -j ACCEPT 
sudo iptables -t nat -A POSTROUTING -o tun0 -j MASQUERADE

모든 VPN이 설정된 후 이것은 내 netstat -rn입니다.

Destination     Gateway         Genmask         Flags   MSS Window  irtt Iface
0.0.0.0         0.0.0.0         0.0.0.0         U         0 0          0 tun1
10.0.0.0        10.111.242.83   255.0.0.0       UG        0 0          0 ppp0
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
10.206.145.0    10.111.242.83   255.255.255.128 UG        0 0          0 ppp0
13.80.125.22    192.168.1.1     255.255.255.255 UGH       0 0          0 eth0
13.91.91.243    192.168.1.1     255.255.255.255 UGH       0 0          0 eth0
40.81.156.154   192.168.1.1     255.255.255.255 UGH       0 0          0 eth0
40.90.218.198   192.168.1.1     255.255.255.255 UGH       0 0          0 eth0
52.174.56.180   192.168.1.1     255.255.255.255 UGH       0 0          0 eth0
52.183.75.62    192.168.1.1     255.255.255.255 UGH       0 0          0 eth0
52.184.165.82   192.168.1.1     255.255.255.255 UGH       0 0          0 eth0
52.238.78.88    192.168.1.1     255.255.255.255 UGH       0 0          0 eth0
52.238.119.141  192.168.1.1     255.255.255.255 UGH       0 0          0 eth0
52.244.160.207  192.168.1.1     255.255.255.255 UGH       0 0          0 eth0
100.70.132.228  10.111.242.83   255.255.255.255 UGH       0 0          0 ppp0
100.70.133.194  10.111.242.83   255.255.255.255 UGH       0 0          0 ppp0
100.123.0.0     10.111.242.83   255.255.0.0     UG        0 0          0 ppp0
100.125.16.0    10.111.242.83   255.255.255.0   UG        0 0          0 ppp0
100.126.0.0     10.111.242.83   255.255.0.0     UG        0 0          0 ppp0
100.127.4.0     10.111.242.83   255.255.255.0   UG        0 0          0 ppp0
104.42.230.91   192.168.1.1     255.255.255.255 UGH       0 0          0 eth0
128.10.0.0      10.111.242.83   255.255.0.0     UG        0 0          0 ppp0
128.14.1.0      10.111.242.83   255.255.255.0   UG        0 0          0 ppp0
131.253.33.215  192.168.1.1     255.255.255.255 UGH       0 0          0 eth0
132.147.0.0     10.111.242.83   255.255.0.0     UG        0 0          0 ppp0
135.244.0.0     0.0.0.0         255.255.240.0   U         0 0          0 tun1
135.245.52.100  192.168.1.1     255.255.255.255 UGH       0 0          0 eth0
172.16.0.0      10.111.242.83   255.240.0.0     UG        0 0          0 ppp0
190.144.144.252 10.111.242.83   255.255.255.255 UGH       0 0          0 ppp0
190.144.240.101 192.168.1.1     255.255.255.255 UGH       0 0          0 eth0
192.0.2.1       0.0.0.0         255.255.255.255 UH        0 0          0 ppp0
192.168.0.0     10.111.242.83   255.255.0.0     UG        0 0          0 ppp0
192.168.1.0     0.0.0.0         255.255.255.0   U         0 0          0 eth0
200.118.0.0     10.111.242.83   255.255.255.128 UG        0 0          0 ppp0
204.79.197.215  192.168.1.1     255.255.255.255 UGH       0 0          0 eth0

내 openvpn 서버 구성에서 클라이언트에 경로를 푸시합니다.

push "route 10.176.86.0 255.255.255.0"
push "route 100.126.0.0 255.255.0.0"

하지만 작동하지 않으면 지원해 주셔서 감사합니다.

관련 정보