Я провел утро, пытаясь настроить L2TP/IPsec VPN с использованием Openswan и xl2tpd на сервере Debian Squeeze для использования клиентами из iOS и Mac. Я пытаюсь настроить его с помощью общих ключей, чтобы все было просто.
IPhone подключается и начинает создавать VPN, затем застревает и терпит неудачу на полпути. Я не могу понять проблему после того, как поковырял много параметров и перепроверил все.
Вот последнее сообщение журнала из /var/log/auth.log
прежде чем оно застрянет:
pluto[30733]: "L2TP-PSK"[5] 166.147.96.226 #5: STATE_QUICK_R2: IPsec SA established tunnel mode {ESP=>0x0659cf9f <0xc3c2f68c xfrm=AES_256-HMAC_SHA1 NATOA=none NATD=166.147.96.226:10682 DPD=enabled}
Затем, примерно через 30 секунд, iPhone сдается, и это появляется в auth.log
:
pluto[30733]: ERROR: asynchronous network error report on br1 (sport=4500) for message to 166.147.96.226 port 10682, complainant 166.147.96.226: Connection refused [errno 111, origin ICMP type 3 code 3 (not authenticated)]
Что это значит? Сервер не может связаться с клиентом или клиент не может установить дополнительное соединение и передает эту ошибку через соединение IPsec, которое он может установить?
К сожалению, я тестирую это с iPhone в сотовой сети AT & T, потому что я нахожусь в сети Wi-Fi, я хочу установить VPN внутри. Блокирует ли AT & T трафик VPN?
Я знаю, что аутентификация IPsec работает, потому что, если я изменяю или удаляю строку из /etc/ipsec.secrets
, соединение прерывается гораздо быстрее, и я не вижу этих строк журнала.
Я полагаю, что брандмауэр разрешает порты UDP 500 и 4500 и протокол ESP, потому что, если я их блокирую, соединение снова разорвется гораздо быстрее.
/etc/ipsec.conf
раздел подключения:
conn L2TP-PSK
authby=secret
pfs=no
rekey=no
keyingtries=3
dpddelay=30
dpdtimeout=120
dpdaction=clear
compress=yes
left=%defaultroute
leftprotoport=udp/1701
right=%any
rightprotoport=udp/0
auto=add
/etc/ipsec.secrets
VPN-SERVER-PUBLIC-IP %any: PSK "mysecretishere"
/etc/xl2tpd/xl2tpd.conf
[global] ; Global parameters:
access control = no
rand source = dev
[lns default] ; Our fallthrough LNS definition
ip range = 192.168.1.120-192.168.1.127
local ip = 192.168.1.119
require chap = yes
refuse pap = no
require authentication = yes
name = LinuxVPNserver
ppp debug = yes
pppoptfile = /etc/ppp/options.l2tp
length bit = yes
/etc/ppp/options.l2tp
ipcp-accept-local
ipcp-accept-remote
ms-dns 192.168.1.1
noccp
auth
crtscts
idle 1800
mtu 1410
mru 1410
nodefaultroute
debug
lock
proxyarp
connect-delay 5000
plugin pppol2tp.so
require-mschap-v2