Я пытаюсь установить ipsec VPN от маршрутизатора Draytek на краю нашей корпоративной сети к VPS на Цифровом Океане. Я настроил VPN на VPS, использующем этот сценарий на машине Ubuntu 14.04. Я верю загрузкам сценария, и устанавливает libreswan и запрашивает несколько вопросов о базовой конфигурации и т.д. Я внес несколько изменений в ipsec.conf, который создает сценарий. Моя проблема, я могу проверить с помощью ping-запросов от маршрутизатора до VPS, и я вижу, что пакеты прибывают в VPS, показывающий прибывающий из частного IP-адреса маршрутизатора, но ничто, что я попробовал, не позволило мне направлять пакеты, отодвигают туннель к маршрутизатору. Поэтому от pov маршрутизатора кажется, что ping испытывают таймаут.
Маршрутизатор подключен непосредственно к Интернету в одном из его интерфейсов, и он настроен с локальным IP-адресом 10.111.1.1. VPS имеет единственный интерфейс, подключенный непосредственно к Интернету.
Когда VPN устанавливается, это - таблица маршрутизации на VPS:
Kernel IP routing table
Destination Gateway Genmask Flags MSS Window irtt Iface
default 178.62.64.1 0.0.0.0 UG 0 0 0 eth0
10.111.1.1 * 255.255.255.255 UH 0 0 0 eth0
178.62.64.0 * 255.255.192.0 U 0 0 0 eth0
Обратите внимание, что вторая запись создается, когда VPN устанавливается.
Если я пытаюсь проверить с помощью ping-запросов 10.111.1.1, я добираюсь:
PING 10.111.1.1 (10.111.1.1) 56(84) bytes of data.
From <public IP address - eth0> icmp_seq=1 Destination Host Unreachable
Вот вывод от ipsec, проверьте:
Verifying installed system and configuration files
Version check and ipsec on-path [OK]
Libreswan 3.10 (netkey) on 3.13.0-37-generic
Checking for IPsec support in kernel [OK]
NETKEY: Testing XFRM related proc values
ICMP default/send_redirects [OK]
ICMP default/accept_redirects [OK]
XFRM larval drop [OK]
Pluto ipsec.conf syntax [OK]
Hardware random device [N/A]
Two or more interfaces found, checking IP forwarding [OK]
Checking rp_filter [OK]
Checking that pluto is running [OK]
Pluto listening for IKE on udp 500 [OK]
Pluto listening for IKE/NAT-T on udp 4500 [OK]
Pluto ipsec.secret syntax [OK]
Checking 'ip' command [OK]
Checking 'iptables' command [OK]
Checking 'prelink' command does not interfere with FIPSChecking for obsolete ipsec.conf options [OK]
Opportunistic Encryption [DISABLED]
и вот содержание/etc/ipsec.conf (закомментированные строки являются результатами предыдущего экспериментирования с теми же результатами):
version 2.0
config setup
dumpdir=/var/run/pluto/
nat_traversal=yes
virtual_private=%v4:10.0.0.0/8,%v4:192.168.0.0/16,%v4:172.16.0.0/12,%v4:!192.168.42.0/24
oe=off
protostack=netkey
nhelpers=0
interfaces=%defaultroute
conn vpnpsk
connaddrfamily=ipv4
auto=add
left=178.62.73.215
# leftid=178.62.73.215
# leftsubnet=178.62.73.215/32
leftsubnet=10.10.10.0/24
# leftnexthop=%defaultroute
leftnexthop=%direct
leftprotoport=17/1701
rightprotoport=17/%any
# right=%any
right=10.111.1.0/24
rightsourceip=10.111.1.1
leftsourceip=10.10.10.1
# rightsubnetwithin=0.0.0.0/0
forceencaps=yes
authby=secret
pfs=no
type=transport
auth=esp
ike=3des-sha1,aes-sha1
phase2alg=3des-sha1,aes-sha1
rekey=no
keyingtries=5
dpddelay=30
dpdtimeout=120
dpdaction=clear
Это - соответствующая часть таблицы маршрутизации от маршрутизатора:
Key: C - connected, S - static, R - RIP, * - default, ~ - private
* 0.0.0.0/ 0.0.0.0 via <public IP address> WAN2
S~ 10.10.10.0/ 255.255.255.0 via 178.62.73.215 VPN-10
C~ 10.111.1.0/ 255.255.255.0 directly connected LAN
C <public IP address>/ 255.255.255.224 directly connected WAN2
Ценил бы кого-то указывающего, что я делаю неправильно.
Спасибо.
Хорошо, я наткнулся на решение, удалив строки leftprotoport = 17 / 1701 и rightprotoport = 17 /% любой. Не уверен, почему это сработало, эй-хо! Теперь я могу пинговать с сервера на маршрутизатор и могу пинговать устройства, висящие на маршрутизаторе. У меня возникла еще одна проблема, но я опубликую еще один вопрос. Всем спасибо.