VPN de Strongswan establecida pero sin paquetes enrutados

8

Estoy configurando una VPN usando strongSwan entre una instancia de Linux en una instancia de Amazon EC2 y una red remota a través de su concentrador Cisco. Necesito enrutar paquetes desde la propia instancia de Linux a una máquina en la subred remota.

La conexión se establece correctamente, pero no se enrutan paquetes.

Creo que necesito establecer algunas reglas de enrutamiento específicas, ¿cómo debo hacer eso?

Software

  • Kernel de Linux 3.5.0-41,
  • Ubuntu 12.10,
  • strongSwan 5.1.1 (construido a partir de la fuente),
  • iptables: sin reglas.

Red

Local

  • IP elástica de Amazon: 56.xxx
  • IP de LAN pública: 172.xxx
  • Subred virtual local: 10.254.0.0/16
  • IP virtual local: 10.254.5.174

Remoto

  • IP pública del concentrador de Cisco: 62.xxx
  • Subred remota: 10.192.0.0/12

Configuración

ipsec.conf

config setup

conn %default
    keyexchange = ikev1
    type = tunnel
    ikelifetime = 86400
    keylife = 28800
    keyingtries = %forever
    esp = 3des-sha
    ike = 3des-md5-modp1024
    forceencaps = yes
    leftauth = psk
    rightauth = psk

conn myconnection
    left = 172.x.x.x
    leftsubnet = 10.254.0.0/16
    leftsourceip = 10.254.5.174
    leftfirewall = yes
    right = 62.x.x.x
    rightsubnet = 10.192.0.0/12
    auto = route

include /var/lib/strongswan/ipsec.conf.inc

strongswan.conf

charon {
    cisco_unity             = yes
    install_routes          = yes
    install_virtual_ip      = yes
    threads                 = 16
    plugins {
        sql {
            loglevel = -1
        }
    }

    filelog {
        /var/log/charon.log {
            time_format = %b %e %T
            default = 3
            flush_line = yes
        }
    }
}

pluto {
}

libstrongswan {
}

estado de ipsec

# ipsec statusall
Status of IKE charon daemon (strongSwan 5.1.1, Linux 3.5.0-41-generic, x86_64):
  uptime: 4 days, since Jan 22 14:24:08 2014
  malloc: sbrk 270336, mmap 0, used 222672, free 47664
  worker threads: 11 of 16 idle, 5/0/0/0 working, job queue: 0/0/0/0, scheduled: 3445
  loaded plugins: charon aes des rc2 sha1 sha2 md5 random nonce x509 revocation constraints pubkey pkcs1 pkcs7 pkcs8 pkcs12 pgp dnskey sshkey pem fips-prf gmp xcbc cmac hmac attr kernel-netlink resolve socket-default stroke updown xauth-generic
Listening IP addresses:
  172.x.x.x
  54.x.x.x
Connections:
    smsbrick:  172.x.x.x...62.x.x.x  IKEv1
    smsbrick:   local:  [172.x.x.x] uses pre-shared key authentication
    smsbrick:   remote: [62.x.x.x] uses pre-shared key authentication
    smsbrick:   child:  10.254.0.0/16 === 10.192.0.0/12 TUNNEL
Routed Connections:
    smsbrick{1}:  ROUTED, TUNNEL
    smsbrick{1}:   10.254.0.0/16 === 10.192.0.0/12 
Security Associations (1 up, 0 connecting):
    smsbrick[8150]: ESTABLISHED 1 second ago,    172.x.x.x[172.x.x.x]...62.x.x.x[62.x.x.x]
    smsbrick[8150]: IKEv1 SPIs: xxxxxxxxxxxxxx_i* xxxxxxxxxxxxx_r, pre-shared key reauthentication in 23 hours
    smsbrick[8150]: IKE proposal: 3DES_CBC/HMAC_MD5_96/PRF_HMAC_MD5/MODP_1024
    smsbrick[8150]: Tasks queued: QUICK_MODE 
    smsbrick[8150]: Tasks active: MODE_CONFIG

ip xfrm

# ip xfrm policy
src 10.192.0.0/12 dst 10.254.0.0/16 
        dir fwd priority 3987 
        tmpl src 62.x.x.x dst 172.x.x.x
                proto esp reqid 1 mode tunnel
src 10.192.0.0/12 dst 10.254.0.0/16 
        dir in priority 3987 
        tmpl src 62.x.x.x dst 172.x.x.x
                proto esp reqid 1 mode tunnel
src 10.254.0.0/16 dst 10.192.0.0/12 
        dir out priority 3987 
        tmpl src 172.x.x.x dst 62.x.x.x
                proto esp reqid 1 mode tunnel
src 0.0.0.0/0 dst 0.0.0.0/0 
        socket in priority 0 
src 0.0.0.0/0 dst 0.0.0.0/0 
        socket out priority 0 
src 0.0.0.0/0 dst 0.0.0.0/0 
        socket in priority 0 
src 0.0.0.0/0 dst 0.0.0.0/0 
        socket out priority 0 
src ::/0 dst ::/0 
        socket in priority 0 
src ::/0 dst ::/0 
        socket out priority 0 
src ::/0 dst ::/0 
        socket in priority 0 
src ::/0 dst ::/0 
        socket out priority 0
titusd
fuente
2
La conexión no está establecida. La conexión parece estar atascada durante la configuración de modo (porque configuró leftsourceip ), verifique el registro en ambos lados para obtener detalles (lo más probable es que el par de Cisco no espere un intercambio de configuración de modo). ¿Ya echaste un vistazo al wiki de strongSwan ?
ecdsa

Respuestas:

3

Lamentamos necropost sobre el tema, simplemente no hay mucha información en un solo lugar sobre esta configuración particular en términos de solución de problemas.

Mi config:

  • AWS: Strongswan 5.1.3
  • Corp: Cisco ASA5520 8.4 (4) 1

Síntomas

  1. Podría iniciar el túnel y hacer ping desde la LAN privada de Cisco ASA a la LAN privada de AWS siempre.
  2. En el tiempo de espera / reinicio del túnel no pude iniciar o hacer ping desde AWS a Cisco ASA a menos que / hasta que se generó tráfico desde el lado de Cisco ASA. IPSEC STATUSALLrevelado

    Tasks active: MODE_CONFIG
    Tasks queued: QUICK_MODE
    

Descubrí que con modeconfig=pushy leftsourceip=ambos configurados, se atascó en:

Tasks active: MODE_CONFIG
Tasks queued: QUICK_MODE

Al quitarlo, modeconfig=pushquedó atascado en:

Tasks active: MODE_CONFIG

La eliminación leftsourceip=hizo el truco y todo estaba listo y estable en ambos sentidos.

Supongo que PIX necesita esos dos y tal vez alguna versión anterior de ASA, pero no esta.

Miguel
fuente