Não é possível encaminhar de volta o túnel ipsec do VPS

1

Estou tentando estabelecer uma VPN ipsec de um roteador Draytek no limite de nossa rede corporativa para um VPS no Oceano Digital. Eu configurei a VPN no VPS usando este script em uma máquina Ubuntu 14.04. Eu acredito que o script baixe e instale o libreswan e solicite algumas questões básicas de configuração, etc. Eu fiz algumas alterações no ipsec.conf que o script cria. Meu problema é, eu posso fazer ping do roteador para o VPS e posso ver os pacotes chegando no VPS mostrando como provenientes do endereço IP privado do roteador, mas nada que eu tentei me permitiu encaminhar pacotes de volta para o túnel para o roteador. Portanto, do ponto de vista do roteador, parece que os pings estão expirando.

O roteador está conectado diretamente à Internet em uma de suas interfaces e está configurado com um endereço IP local de 10.111.1.1. O VPS tem uma interface única conectada diretamente à internet.

Quando a VPN é estabelecida, esta é a tabela de roteamento no 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

Observe que a segunda entrada é criada quando a VPN é estabelecida.

Se eu tentar fazer o ping 10.111.1.1, obtenho:

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

Aqui está a saída da verificação 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]

e aqui está o conteúdo de /etc/ipsec.conf (as linhas comentadas são resultados de experimentos anteriores com os mesmos resultados):

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

Esta é a parte relevante da tabela de roteamento do roteador:

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

Gostaria que alguém apontasse o que estou fazendo de errado.

Obrigado.

    
por user102469 02.12.2014 / 15:44

1 resposta

2

OK, eu tropecei na solução removendo as linhas leftprotoport = 17/1701 e rightprotoport = 17 /% any. Não sei por que isso funcionou comprar hey ho! Agora posso fazer ping do servidor para o roteador e fazer ping dos dispositivos pendurados no roteador. Eu tenho outro problema agora, mas vou postar outra pergunta para isso. Obrigado a todos.

    
por 04.12.2014 / 14:47