обмен интернетом через ipsec

325
wee wewewe

Я пытаюсь подключить свою рабочую станцию ​​Windows 7 к Интернету через туннель ipsec.
Я имею:

192.168.88.251 - win7 workstation 192.168.88.1 - my mikrotik router VPN_IPSEC - my vpn with ipsec address VPN_TEST - my 2nd vpn for connectiviti testing 

Конфигурация StrongSwan в VPN_IPSEC:

config setup charondebug="ike 1, knl 1, cfg 0" uniqueids=no  conn ikev2-vpn auto=add compress=no type=tunnel keyexchange=ikev2 fragmentation=yes forceencaps=yes  ike=aes256-sha-modp1024 esp=aes256-sha-modp1024 dpdaction=clear dpddelay=300s rekey=no  left=%any leftid=VPN_IPSEC_IP leftsendcert=always leftsubnet=0.0.0.0/0  right=%any rightid=%any authby=secret rightsubnet=192.168.88.251/24 rightdns=8.8.8.8,8.8.4.4 

На стороне микротик у меня есть соответствующий конфиг

Вывод команды ipsec status:

ikev2-vpn[1]: ESTABLISHED 110 minutes ago,  VPN_IPSEC_IP[VPN_IPSEC_IP]...MY_PUB_IP[MY_PUB_IP] ikev2-vpn: INSTALLED, TUNNEL, ESP SPIs: ca494e15_i 099301b9_o ikev2-vpn: 0.0.0.0/0 === 192.168.88.251/32  

Видимо мой туннель ipsec работает правильно. На VPN_IPSEC я делаю ping 192.168.88.251, и я вижу ping. В то же время, когда на win7 я выполняю ping 8.8.8.8, я вижу трафик в разделе установленного SA на mikrotik, и если я создаю некоторые правила брандмауэра для VPN_IPSEC, который работает с 192.168.88.251, я вижу, что соответствующие счетчики растут.

На VPN_IPSEC у меня есть эта начальная конфигурация брандмауэра:

Chain INPUT (policy ACCEPT 936 packets, 92296 bytes)  Chain FORWARD (policy ACCEPT 483 packets, 29148 bytes)  Chain OUTPUT (policy ACCEPT 306 packets, 30108 bytes) 

Таблица NAT одинакова: все принимают

Теперь я теперь, когда зашифрованный трафик с win7 приходит на VPN_IPSEC. Я хочу сейчас, чтобы он пересылался за пределы VPN_IPSEC.

На win7 делаю

ping VPN_TEST 

На VPN_IPSEC делаю

tcpdump -nni venet0 icmp 

Я вижу:

IP 192.168.88.251 > VPN_TEST_IP: ICMP echo request, id 512, seq 21277, length 40   IP 192.168.88.251 > VPN_TEST_IP: ICMP echo request, id 512, seq 49949, length 40 

т.е. нет ответа

Теперь я добавляю правило POSTROUTING:

iptables -t nat -A POSTROUTING -s 192.168.88.0/24 -o venet0 -j MASQUERADE  IP 192.168.88.251 > VPN_TEST_IP: ICMP echo request, id 25095, seq 301, length 64 IP 185.69.52.31 > VPN_TEST_IP: ICMP echo request, id 25095, seq 301, length 64 IP 192.168.88.251 > VPN_TEST_IP: ICMP echo request, id 25095, seq 302, length 64 IP 185.69.52.31 > VPN_TEST_IP: ICMP echo request, id 25095, seq 302, length 64 

т.е. нет ответа, но я вижу, что пакеты маскируются

В то же время на VPN_TEST я делаю:

tcpdump -nni eth0 icmp 

и я не вижу пингов от моего VPN_IPSEC, но я вижу случайные пинги с интернет-хостов.

Я тоже делаю на win7:

ping 8.8.8.8 

И я не получаю ответа.

В то же время, когда я делаю на VPN_IPSEC

ping VPN_TEST 

Я вижу все пинги на обоих tcpdumps и вижу ответ

т. е. трафик из моего туннеля остается на VPN_IPSEC

Как это кошка быть ??

Как правильно настроить брандмауэр на VPN_IPSEC.

UPD: я знаю, что для совместного доступа к интернету я должен создать правила маскировки и пересылки. Также у меня должен быть net.ipv4.ip_forward = 1. У меня это уже есть. И я попробовал много правил маскировки и переадресации в миксе. БЕЗРЕЗУЛЬТАТНО.

В настоящее время я хочу только видеть, что мой эхо-запрос из туннеля переходит к моему VPN_TEST и возвращается к VPN_IPSEC.

0
Вы уверены, что туннель работает? Выполните команду `ipsec status` на вашем VPN-сервере и предоставьте ее вывод. Daniel B 5 лет назад 0
Пожалуйста, отредактируйте свой вопрос и добавьте туда эту информацию, ее трудно читать в комментариях. Daniel B 5 лет назад 0
вот мой вопрос по ServerFault: https: //serverfault.com/questions/909878/ping-and-all-traffic-from-ipsec-tunnel-stay-inside-vpn-server wee wewewe 5 лет назад 0
я включаю ipsec статус на вопрос wee wewewe 5 лет назад 0

1 ответ на вопрос

0
wee wewewe

Моя проблема была в ограничениях OpenVz VPS. Когда я запускаю тот же туннель ipsec на VPS с гипервизором KVM, проблема была решена.