У меня проблемы с IPSEC VPN-туннелем от «HOME» до CHR на AWS. У меня есть несколько туннелей между MT, разбросанными по интернету, но с AWS CHR никак не получается разобраться. Я пытаюсь обращаться с ним как с обычным MT-роутером в интернете — это правильно? Фаза 2 не завершается, хотя политики и секреты совпадают. Нужны свежие глаза…
НАСТРОЙКА:
У меня есть образ CHR, работающий на AWS, и физический MT-роутер дома. У обоих есть свои приватные сети.
HOME_IP_ADDRESS
HOME_INSIDE_NETWORK = 192.168.30.0/24
HOME_INSIDE_ADDRESS = 192.168.30.1
CHR_IP_ADDRESS
CHR_INSIDE_NETWORK = 172.31.64.0/24
CHR_INSIDE_ADDRESS = 172.31.64.X
Security group для инстанса CHR EC2 полностью открыта, и по интернету, и по приватной сети.
HOME и CHR имеют открытые фаерволы для IP друг друга и для всех адресов в приватных сетях за ними.
CHR настроен на NAT для трафика, выходящего из CHR_INSIDE_NETWORK через роутер CHR.
HOME и CHR настроены так, чтобы обходить NAT для VPN-трафика между их сетями.
Роутер HOME может пинговать CHR_IP_ADDRESS, и CHR пингует HOME_IP_ADDRESS.
CHR пингует CHR_IP_ADDRESS и CHR_INSIDE_ADDRESS, а также другие Linux-инстансы в CHR_INSIDE_NETWORK.
HOME и CHR используют дефолтные ipsec proposals:
HOME>set [ find default=yes ] auth-algorithms=sha1 disabled=no enc-algorithms=aes-256-cbc,aes-192-cbc,aes-128-cbc lifetime=30m name=default pfs-group=modp1024
CHR>set [ find default=yes ] auth-algorithms=sha1 disabled=no enc-algorithms=aes-256-cbc,aes-192-cbc,aes-128-cbc lifetime=30m name=default pfs-group=modp1024
Настройки HOME:
/ip address add address=192.168.30.1/24 comment=defconf interface=ether2-master network=192.168.30.0
/ip ipsec peer add address=CHR_IP_ADDRESS/32 auth-method=pre-shared-key comment=AWS-CHR dh-group=modp1024 disabled=no dpd-interval=2m dpd-maximum-failures=5 enc-algorithm=aes-128,3des exchange-mode=main generate-policy=no hash-algorithm=sha1 lifetime=1d nat-traversal=no policy-template-group=default proposal-check=obey secret=SECRET send-initial-contact=yes
/ip ipsec policy add action=encrypt comment=AWS-CHR disabled=no dst-address=172.31.64.0/24 dst-port=any ipsec-protocols=esp level= require priority=0 proposal=default protocol=all sa-dst-address=CHR_IP_ADDRESS sa-src-address=HOME_IP_ADDRESS src-address=192.168.30.0/24 src-port=any tunnel=yes
Настройки CHR:
/ip address add address=172.31.64.X interface=ether2 network=172.31.64.0
/ip ipsec peer add address=HOME_IP_ADDRESS/32 auth-method=pre-shared-key comment=HOME dh-group=modp1024 disabled=no dpd-interval=2m dpd-maximum-failures=5 enc-algorithm=aes-128,3des exchange-mode=main generate-policy=no hash-algorithm=sha1 lifetime=1d nat-traversal=no policy-template-group=default proposal-check=obey secret=SECRET send-initial-contact=yes
/ip ipsec policy add action=encrypt comment=HOME disabled=no dst-address=192.168.30.0/24 dst-port=any ipsec-protocols=esp level= require priority=0 proposal=default protocol=all sa-dst-address=HOME_IP_ADDRESS sa-src-address=CHR_IP_ADDRESS src-address=172.31.64.0/24 src-port=any tunnel=yes
Логи CHR, ошибки:
HOME_IP_ADDRESS failed to pre-process ph2 packet.
HOME_IP_ADDRESS peer sent packet for dead phase2
HOME_IP_ADDRESS failed to pre-process ph2 packet.
…
Логи HOME, ошибки:
В окне IPSEC policy соединение показывает “msg 1 sent”, а потом “no phase2”.