Revista Informática

VPN sitio a sitio StrongSwan con un extremo con IP dinámica en Linux

Publicado el 10 junio 2020 por Oscar Oscar Meza @vidagnu

En este caso voy a tener dos localidades uno llamado central que va a contar con IP publica estática y el otro extremo llamado sucursal1 que tendrá una IP publica dinámica.

Para este caso tomo las siguientes configuraciones de red.

Central IP Lan: 192.168.0.1 Red local: 192.168.0.0/24 IP publica: 10.0.0.1 Sucursal1 IP Lan: 192.168.1.1 Red local: 192.168.1.0/24 IP publica: dinamica

Ya que uno de los extremos tiene una IP dinámica la única forma de crear el tunel sera usando certificados, en este caso X.509.

En el equipo central nos ubicamos en la carpeta /etc/ipsec.d y ejecutamos los siguientes comandos.

chmod 600 private/centralKey.pem

Vamos a copiar los archivos /etc/ipsec.d/private/strongswanKey.pem y /etc/ipsec.d/private/strongswanKey.pem que fueron creados en las carpetas con el mismo nombre y ubicacion en el equipo de sucursal1.

Luego en sucursal1 nos ubicamos en la carpeta /etc/ipsec.d y ejecutamos los siguientes comandos.

Archivo ipsec.conf en el sitio central.

# ipsec.conf - strongSwan IPsec configuration file # basic configuration config setup charondebug="all" uniqueids=yes strictcrlpolicy=no conn %default conn myvpn type=tunnel reauth=yes auto=start # -------------------- phase 1 --------------------------- # ike=aes256-sha1-modp1024 keyexchange=ikev1 ikelifetime=86400s # -------------------- phase 2 --------------------------- # esp=aes256-sha1 keylife=3600s left=10.0.0.1 leftsubnet=192.168.0.0/24 right=%dynamic rightsubnet=192.168.1.0/24 leftcert=centralCert.pem leftid="C=CH, O=strongSwan, CN=central" rightid="C=CH, O=strongSwan, CN=sucursal1" 

Archivo ipsec.secrets en sitio central.

# This file holds shared secrets or RSA private keys for authentication. # RSA private key for this host, authenticating it to any other host # which knows the public part. : RSA centralKey.pem 

Archivo ipsec.conf en sitio sucursal1.

# ipsec.conf - strongSwan IPsec configuration file # basic configuration config setup charondebug="all" uniqueids=yes strictcrlpolicy=no conn %default conn myvpn type=tunnel reauth=yes auto=start # -------------------- phase 1 --------------------------- # ike=aes256-sha1-modp1024 keyexchange=ikev1 ikelifetime=86400s # -------------------- phase 2 --------------------------- # esp=aes256-sha1 keylife=3600s left=192.168.1.1 leftsubnet=192.168.1.0/24 right=10.0.0.1 rightsubnet=192.168.0.0/24 leftcert=sucursal1Cert.pem leftid="C=CH, O=strongSwan, CN=sucursal1" rightid="C=CH, O=strongSwan, CN=central" 

El archivo ipsec.secrets en el sitio sucursal1.

# This file holds shared secrets or RSA private keys for authentication. # RSA private key for this host, authenticating it to any other host # which knows the public part. : RSA sucursal1Key.pem 

Volver a la Portada de Logo Paperblog