You are on page 1of 26

PROGRAMA DE FORMACION REGULAR

REDES Y COMUNICACIONES DE DATOS

SEGURIDAD PERIMETRAL
Laboratorio N 5
OpenVPN SSL

Tecsup

OpenVPN SSL

OPENVPN SSL
PREPARACIN DEL ENTORNO
Se crear el siguiente entorno de trabajo: LAS IPS SON SOLO REFERENCIALES. UTILIZARA EL
RANGO DE Ips que utiliz para el laboratorio 1. El laboratorio se realizar en grupos de 2
personas.

Nota : El laboratorio se realizar con una mquina virtual entregada por el instructor.
1. Preparar las siguientes mquinas virtuales:
(1) Linux CentOS 6.5 con nombre VPN-1QUITRU
(2) Linux CentOS 6.5 con nombre VPN-2QUITRU
(3) Centos 6.5 o superior con nombre CLI-1QUITRU
(4) Centos 6.5 o superior con nombre CLI-2QUITRU
2. Configurar Centos 6.5
Nombre Linux: CLI-1QUITRU
Direccin IP:
o IP
: 172.16.14.2
o Mscara
: 255.255.255.252
o Gateway
: 172.16.14.1
o DNS
: No tiene
3. Configurar Centos 6.5
Nombre Linux: CLI-2QUITRU
Direccin IP:
o IP
: 172.15.15.2
o Mscara
: 255.255.255.252
o Gateway
: 172.15.15.1
o DNS
: No tiene

Laboratorio 5 VPN Parte I

Pg. 2 de 26

Tecsup

OpenVPN SSL

4. Configurar VPN01
Nombre Linux: VPN-1QUITRU
NIC1:
o Direccin IP:
IP
Mscara
Gateway
DNS
NIC2:
o Direccin IP:
IP
Mscara
Gateway
DNS
5. Configurar VPN02
(5) Nombre Linux: VPN-2QUITRU
NIC1:
o Direccin IP:
IP
Mscara
Gateway
DNS
NIC2:
o Direccin IP:
IP
Mscara
Gateway
DNS

: 172.16.14.1
: 255.255.255.252
: No tiene
: No tiene

: 192.168.10.2
: 255.255.255.0
: No tiene
: No tiene

: 172.15.15.1
: 255.255.255.252
: No tiene
: No tiene

: 192.168.10.3
: 255.255.255.0
: No tiene
: No tiene

6. Realizar las pruebas de conectividad y anote sus resultados.


Ping Origen
CLI-1QUITRU 172.16.14.2
CLI-2QUITRU 172.15.15.2
VPN-1QUITRU 192.168.10.2

Ping destino
VPN-1QUITRU 172.16.14.1
VPN-2QUITRU 172.15.15.1
VPN-2QUITRU 192.168.10.3

Resultado

Exitoso
Exitoso
Exitoso

PING CLI-1 A VPN-1

PING CLI-2 A VPN-2

PING VPN-1 A VPN-2

7. Definir polticas IPTABLES permisibles en VPN-1QUITRU para ofrecer acceso sin restriccin.
Crear el directorio: /etc/openvpn
Crear el script: /etc/openvpn/poli.sh con el siguiente contenido:

Laboratorio 5 VPN Parte I

Pg. 3 de 26

Tecsup

OpenVPN SSL

#ACTIVAR EL REENVIO ENTRE TARJETAS DE RED


echo 1 > /proc/sys/net/ipv4/ip_forward
#LOCAL
iptables F INPUT
iptables F OUTPUT
iptables F FORWARD
#NAT
iptables t nat -F PREROUTING
iptables -t nat -F POSTROUTING
iptables -t nat -F OUTPUT
#LOCAL
iptables P INPUT ACCEPT
iptables P OUTPUT ACCEPT
iptables P FORWARD ACCEPT
# NAT
iptables t nat -P PREROUTING ACCEPT
iptables -t nat -P POSTROUTING ACCEPT
iptables -t nat -P OUTPUT ACCEPT
#ENMASCARAMIENTO
iptables t nat A POSTROUTING s 172.16.14.0/255.255.255.252 j MASQUERADE

# chmod +x poli.sh
# ./poli.sh
# iptables t nat L
SE CREAN LAS REGLAS IPTABLES EN VPN1

Laboratorio 5 VPN Parte I

Pg. 4 de 26

Tecsup

OpenVPN SSL

SE EJECUTA Y CONFIGURA LAS REGLAS IPTABLES

8. Realizar las pruebas de conectividad y anotes sus resultados.


Ping Origen
CLI-1QUITRU 172.16.14.2
CLI-1QUITRU 172.16.14.2

Ping destino
VPN-1QUITRU 192.168.10.2
VPN-2QUITRU 192.168.10.3

Resultado

Exitoso
Exitoso

PING CLI-1 A VPN-1

PING CLI-1 A VPN-2

9. Definir polticas IPTABLES permisibles en VPN02 para ofrecer acceso sin restriccin.
Crear el directorio: /etc/openvpn
Crear el script: /etc/openvpn/poli.sh con el siguiente contenido:

#ACTIVAR EL REENVIO ENTRE TARJETAS DE RED


echo 1 > /proc/sys/net/ipv4/ip_forward
#LOCAL
iptables F INPUT
iptables F OUTPUT
iptables F FORWARD
#NAT
iptables t nat -F PREROUTING
iptables -t nat -F POSTROUTING
iptables -t nat -F OUTPUT
#LOCAL
iptables P INPUT ACCEPT
iptables P OUTPUT ACCEPT
iptables P FORWARD ACCEPT
# NAT
iptables t nat -P PREROUTING ACCEPT
Laboratorio 5 VPN Parte I

Pg. 5 de 26

Tecsup

OpenVPN SSL

iptables -t nat -P POSTROUTING ACCEPT


iptables -t nat -P OUTPUT ACCEPT
#ENMASCARAMIENTO
iptables t nat A POSTROUTING s 172.15.15.0/255.255.255.252 j MASQUERADE
** Puede copiar el archivo poli.sh por un canal seguro con SCP desde VPN-1QUITRU a VPN2QUITRU, en VPN-1QUITRU ejecutar: scp poli.sh root@192.168.10.3:/etc/openvpn

# chmod +x poli.sh
# ./poli.sh
# iptables t nat L

ENVIANDO EL SCRIPT VA SCP DE VPN-1 A VPN-2

EDITANDO EL SCRIPT poli.sh ACORDE A LA RED DE CLI-2

SE EJECUTA Y CONFIGURA LAS REGLAS IPTABLES

10. Realizar las pruebas de conectividad y anote sus resultados.


Ping Origen
CLI-2QUITRU 172.15.15.2
CLI-2QUITRU 172.15.15.2
CLI-2QUITRU 172.15.15.2
PING CLI2 A VPN1,VPN2,CLI1

Laboratorio 5 VPN Parte I

Ping destino
VPN-1QUITRU 192.168.10.2
VPN-2QUITRU 192.168.10.3
CLI-1QUITRU 172.16.14.2

Pg. 6 de 26

Resultado

Exitoso
Exitoso
Fallido

Tecsup

OpenVPN SSL

INSTALACIN DE OPENVPN EN VPN01


** Se requiere los siguientes programas:

openvpn (tar) descargado de: http://openvpn.net/index.php/open-source/downloads.html

lzo (tar) descargado de: http://www.oberhumer.com/opensource/lzo/download/


11. En VPN-1QUITRU Instalar LZO
Copiar el archivo tar gzip (lzo-2.06.tar.gz)
Descomprimir
Ingresar al directorio descomprimido
Ejecutar:
o ./configure
o make
o make check
o make test
o make install
o B/generic/build.sh
12. EN VPN-1QUITRU instalar OpenVPN
Copiar el archivo tar gzip (openvpn-2.3.2.tar.gz)
Descomprimir
Ingresar al directorio descomprimido
Ejecutar:
o ./configure
o make
o make install
POR TEMAS DE ACTUALIZACIN, EN ESTE CASO SE DESCARG E INSTAL LOS
REPOSITORIOS Y DEPENDENCIAS ADECUADAS PARA INSTALAR OPENVPN MEDIANTE
WGET RPM IVH YUM

Laboratorio 5 VPN Parte I

Pg. 7 de 26

Tecsup

OpenVPN SSL

o
o

Verificar el
funcionamiento de
OpenVPN:
o # cd /
o # openvpn
--genkey

--secret key
# openvpn --test-crypto --secret key
El auto test (self-test) deber ser satisfactorio.
# cat key
Mostrar el contenido de la clave esttica creada por OpenVPN.

EL AUTOTEST DE LA FUNCIONALIDAD DE OPENVPN ES SATISFACTORIO

13. Instalar OpenVPN en VPN-2QUITRU.


EN EL CASO DEL VPN-2 SE SEGUIRN LOS MISMOS PASOS DE INSTALACIN DEL OPENVPN

Laboratorio 5 VPN Parte I

Pg. 8 de 26

Tecsup

OpenVPN SSL

CREACIN DE UN TUNEL SIN CLAVE


** Se crear un tnel entre ambos sitios a los que denominaremos Oficina1 (VPN-1QUITRU) y
Oficina2 (VPN-2QUITRU), la oficina Oficina1 ser la sede principal a la cual se conectar la oficina
Oficina2 que ser el cliente.
La IP del tnel en Oficina1 ser 10.0.11.1 y en el otro extremo del tnel ser 10.0.11.2.

14. En VPN-1QUITRU establecer un tnel sin seguridad:


openvpn --remote 192.168.10.3 --dev tun1 --ifconfig 10.0.11.1 10.0.11.2

15. En VPN02 establecer un tnel sin seguridad:


openvpn --remote 192.168.10.2 --dev tun2 --ifconfig 10.0.11.2 10.0.11.1

Laboratorio 5 VPN Parte I

Pg. 9 de 26

Tecsup

OpenVPN SSL

** La funcin de los parmetros los puede encontrar en:


https://community.openvpn.net/openvpn/wiki/Openvpn23ManPage
16. En ambos VPN ejecutar:
Ifconfig

netstat an | grep udp


o Ubicar el puerto UDP utilizado en la conexin VPN: __1194_____

Laboratorio 5 VPN Parte I

Pg. 10 de 26

Tecsup

OpenVPN SSL

17. Realizar las pruebas de conectividad y anote sus resultados.


Ping Origen
VPN-1QUITRU 192.168.10.2
VPN-1QUITRU 192.168.10.2
CLI-1QUITRU 172.16.14.2

Ping destino

TUN01 10.0.11.1
TUN02 10.0.11.2
CLI-2QUITRU 172.15.15.2

Resultado

Exitoso
Exitoso
Fallido

PING VPN-1 A TUN1

PING VPN-1 A TUN2

PING CLI-1 A CLI-2

NOTA: AL NO CONFIGURAR GATEWAY EN LA INTERFAZ ETH1 DEL VPN1 Y VPN2 NO HAY


CONECTIVIDAD DE EXTREMO A EXTREMO
18. Cancelar el tnel VPN haciendo CTRL+C (en el comando que ejecut openvpn) en VPN01 y
VPN02.

Laboratorio 5 VPN Parte I

Pg. 11 de 26

Tecsup

OpenVPN SSL

19. Habilitar el enrutamiento para que las redes 172.16.14.0/29 y 192.168.2.0/24 puedan
comunicarse.

En VPN01 ejecutar:
o openvpn --remote 192.168.10.3 --dev tun1 --ifconfig 10.0.11.1 10.0.11.2 --route
172.15.15.0 255.255.255.252 10.0.11.2
o

Indica la interface del tnel en donde ubicar a la red, en este caso 172.15.15.0/29.

En VPN02 ejecutar:
o openvpn --remote 192.168.10.2 --dev tun2 --ifconfig 10.0.11.2 10.0.11.1 --route
172.16.14.0 255.255.255.252 10.0.11.1
o Indica la interface del tnel en donde ubicar a la red, en este caso 172.16.14.0/29.

TNEL VPN-1

TNEL VPN-2

Laboratorio 5 VPN Parte I

Pg. 12 de 26

Tecsup

OpenVPN SSL

20. Realizar las pruebas de conectividad y anote sus resultados.


Ping Origen
VPN-1QUITRU 192.168.10.2
VPN-1QUITRU 192.168.10.2
CLI-1QUITRU 172.16.14.2

Ping destino

TUN01 10.0.11.1
TUN02 10.0.11.2
CLI-2QUITRU 172.15.15.2

Resultado

Exitoso
Exitoso
Exitoso

PING VPN-1 A TUN-1

PING VPN-1 A TUN-1

PING CLI-1 A CLI-2

PING CLI-2 A CLI-1

NOTA: EN ESTE CASO, SIN NECESIDAD DE GATEWAY EN LA INTERFAZ ETH1 DEL VPN 1 Y
VPN 2 HAY CONECTIVIDAD DE EXTREMO A EXTREMO DEBIDO AL TNEL CREADO
21. Cancelar el tnel establecido.
CREACIN DE UN TUNEL CON CLAVE COMPARTIDA
** El tnel se crear utilizando una clave simtrica creada en VPN01 y copiada a VPN02 para
establecer la comunicacin.

Laboratorio 5 VPN Parte I

Pg. 13 de 26

Tecsup

OpenVPN SSL

22. En VPN01 crear una clave simtrica y copiarla a VPN02.

cd /etc/openvpn
openvpn --genkey --secret key
cat key
scp key root@192.168.10.3:/etc/openvpn

23. Establecer el tnel con la clave creada.

En VPN01 ejecutar:
o openvpn --remote 192.168.10.3 --dev tun1 --ifconfig 10.0.11.1 10.0.11.2 --route
172.15.15.0 255.255.255.252 10.0.11.2 --secret key

En VPN02 ejecutar:
o openvpn --remote 192.168.10.2 --dev tun2 --ifconfig 10.0.11.2 10.0.11.1 --route
172.16.14.0 255.255.255.252 10.0.11.1 --secret key

TNEL VPN-1

Laboratorio 5 VPN Parte I

Pg. 14 de 26

Tecsup

OpenVPN SSL

TNEL VPN-2

24. Realizar las pruebas de conectividad.


Ping Origen
VPN-1QUITRU 192.168.10.2
VPN-1QUITRU 192.168.10.2
CLI-1QUITRU 172.16.14.2

Ping destino

TUN01 10.0.11.1
TUN02 10.0.11.2
CLI-2QUITRU 172.15.15.2

PING VPN-1 A TUN01

PING VPN-1 A TUN02

PING CLI-1 A CLI-2

Laboratorio 5 VPN Parte I

Pg. 15 de 26

Resultado

Exitoso
Exitoso
Exitoso

Tecsup

OpenVPN SSL

PING CLI-2 A CLI-1

NOTA: EN ESTE CASO, SIN NECESIDAD DE GATEWAY EN LA INTERFAZ ETH1 DEL VPN 1 Y
VPN 2 HAY CONECTIVIDAD DE EXTREMO A EXTREMO DEBIDO AL TNEL CREADO
25. Cancelar el tnel establecido. (ctrl + C)
USO DE ARCHIVO DE CONFIGURACIN
** En vez de invocar a openvpn y escribir los parmetros del tnel se puede crear un archivo que
contenga dichos parmetros para facilitar la configuracin del tnel.
26. En VPN01 crear el archivo /etc/openvpn/oficina1.conf con el siguiente contenido:

#INTERFACE
dev tun1
port 1195

##Abre tnel encapsulando capa 3 del modelo OSI


##Abre puerto UDP 1195

#IP DEL TUNEL


ifconfig 10.0.11.1 10.0.11.2

##IP del tnel local y remoto

#LLAVE
secret /etc/openvpn/key

##Clave simtrica utilizada

#COMPPRESION DE TRFICO
comp-lzo
#MONITOREO TUNEL
keepalive 10 60
ping-timer-rem
persist-tun
persist-key

##Ejecuta ping 10 y ping-restart 120


##Ejecutar ping-restart
##No cierra y vuelve a abrir el Tunel al ejecutarse ping-restart
##No vuelve a leer la clave al ejecutarse ping-restart

#RUTAS PARA ACCEDER A LAS REDES DEL OTRO EXTREMO


route 172.15.15.0 255.255.255.252 10.0.11.2

Laboratorio 5 VPN Parte I

Pg. 16 de 26

Tecsup

OpenVPN SSL

** La funcin de los parmetros los puede encontrar en:


https://community.openvpn.net/openvpn/wiki/Openvpn23ManPage
27. En VPN02 crear el archivo /etc/openvpn/oficina2.conf con el siguiente contenido:

#INTERFACE
remote 192.168.10.2
dev tun2
port 1195
nobind

##IP del servidor VPN al cual se conectar


##Abre tnel encapsulando capa 3 del modelo OSI
##Abre puerto UDP 1195
##Modo cliente

#IP DEL TUNEL


ifconfig 10.0.11.2 10.0.11.1

##IP del tnel local y remoto

#LLAVE
secret /etc/openvpn/key

##Clave simtrica utilizada

#COMPPRESION DE TRFICO
comp-lzo
#MONITOREO TUNEL
keepalive 10 60
ping-timer-rem
persist-tun
persist-key

##Ejecuta ping 10 y ping-restart 120


##Ejecutar ping-restart
##No cierra y vuelve a abrir el Tunel al ejecutarse ping-restart
##No vuelve a leer la clave al ejecutarse ping-restart

#RUTAS PARA ACCEDER A LAS REDES DEL OTRO EXTREMO


route 172.16.14.0 255.255.255.252 10.0.11.1

Laboratorio 5 VPN Parte I

Pg. 17 de 26

Tecsup

OpenVPN SSL

28. Establecer el tnel con la clave creada.

En VPN01 ejecutar:
o openvpn --config oficina1.conf

Laboratorio 5 VPN Parte I

Pg. 18 de 26

Tecsup

OpenVPN SSL

En VPN02 ejecutar:
o openvpn --config oficina2.conf

29. Realizar las pruebas de conectividad y anotes sus resultados.


Ping Origen
VPN-1QUITRU 192.168.10.2
VPN-1QUITRU 192.168.10.2
CLI-1QUITRU 172.16.14.2

Ping destino

TUN01 10.0.11.1
TUN02 10.0.11.2
VPN-2QUITRU 172.15.15.1

Resultado

Exitoso
Exitoso
Exitoso

PING VPN-1 A TUN-1

PING VPN-1 A TUN-2

PING CLI-1 A VPN-2

30. Cancelar el tnel establecido.


31. Configurar el servidor VPN01 para que acepte clientes remotos, es decir, un cliente en la red
192.168.xx.0/24 deber de realizar una conexin VPN para comunicarse con XP01. Realizar la
conexin por medio de clave compartida. El cliente remoto ser un Linux con una sola tarjeta de
red.

Laboratorio 5 VPN Parte I

Pg. 19 de 26

Tecsup

OpenVPN SSL

ESQUEMA DE LA RED

IMPLEMENTAMOS UN ROUTER CON 2 INTERFACES VIRTUALES


- LA 192.168.10.1 PARA VPN1 y VPN2
- LA 192.168.12.1 PARA CLI-3EXTERNO
Nombre Linux: CLI-1QUITRU
Direccin IP:
o IP
o Mscara
o Gateway
o DNS

: 172.16.14.2
: 255.255.255.252
: 172.16.14.1
: No tiene

Nombre Linux: CLI-2QUITRU


Direccin IP:
o IP
o Mscara
o Gateway
o DNS

: 172.15.15.2
: 255.255.255.252
: 172.15.15.1
: No tiene

Nombre Linux: VPN-1QUITRU


NIC1:
o Direccin IP:
IP
Mscara
Gateway
DNS
NIC2:
o Direccin IP:
IP
Mscara
Gateway
DNS

Laboratorio 5 VPN Parte I

: 172.16.14.1
: 255.255.255.252
: No tiene
: No tiene

: 192.168.10.2
: 255.255.255.0
: 192.168.10.1
: No tiene

Pg. 20 de 26

Tecsup

Nombre Linux: VPN-2QUITRU


NIC1:
o Direccin IP:
IP
Mscara
Gateway
DNS
NIC2:
o Direccin IP:
IP
Mscara
Gateway
DNS

OpenVPN SSL

: 172.15.15.1
: 255.255.255.252
: No tiene
: No tiene

: 192.168.10.3
: 255.255.255.0
: 192.168.10.1
: No tiene

Nombre Linux: ROUTER-QUITRU


NIC1:
o Direccin IP:
IP
: 192.168.10.1
Mscara
: 255.255.255.0
Gateway
: No tiene
DNS
: No tiene
NIC2:
o Direccin IP:
IP
: 192.168.12.1
Mscara
: 255.255.255.0
Gateway
: No tiene
DNS
: No tiene
Nombre Linux: CLI-3QUITRU
Direccin IP:
o IP
: 192.168.12.2
o Mscara
: 255.255.255.0
o Gateway
: 192.168.12.1
o DNS
: No tiene
PROBAMOS CONECTIVIDAD CON EL ROUTER
PING VPN-1 A ROUTER

PING VPN-1 A CLI-3EXTERNO

PING VPN-2 A ROUTER

PING VPN-2 A CLI-3EXTERNO

Laboratorio 5 VPN Parte I

Pg. 21 de 26

Tecsup

OpenVPN SSL

PING CLI-1 A ROUTER

PING CLI-1 A CLI-3

PING CLI-2 A ROUTER

PING CLI-2 A CLI-3

PING CLI-3 A VPN-1

PING CLI-3 A VPN-2

PING CLI-3 EXTERNO A CLI-2

PING CLI-3 EXTERNO A CLI-1

NOTA: POR EL ENMASCARAMIENTO Y EL GATEWAY CONFIGURADO, NUESTRO CLI-1 Y CLI-2


TIENEN CONECTIVIDAD CON EL CLI-3, PERO EL CLI-3 SOLO TIENE CONECTIVIDAD CON LAS
INTERFACES DE VPN-1 Y VPN-2 QUE ESTAN DENTRO DE SU RED, NO PUEDE ACCEDER A
CLI-1 Y CLI-2 PORQUE NO TIENE LOS PERMISOS NECESARIOS, ES AH DONDE NUESTRO
TNEL A EJECUTAR PERMITIR CONECTIVIDAD DEL CLIENTE REMOTO CLI-3 HACIA
NUESTROS CLI-1 Y CLI-2.

Laboratorio 5 VPN Parte I

Pg. 22 de 26

Tecsup

OpenVPN SSL

INSTALAMOS OPENVPN EN EL CLIENTE REMOTO CLI-3

CREAMOS LA CLAVE SIMTRICA EN VPN-1 Y LO COPIAMOS DE FORMA SEGURA A CLI-3

VERIFICAMOS QUE LA COPIA SE REALIZ CORRECTAMENTE

CREAMOS EL TNEL DESDE VPN-1 A CLI-3, QUE AL YA TENER CONECTIVIDAD NO SER


NECESARIO ESTABLECER SALTOS DE ROUTE.

EN CLI-3 TAMBIN CREAMOS EL TNEL, ESPECIFICANDO LA RED A DONDE DESEAMOS


LLEGAR MEDIANTE EL COMANDO ROUTE

SE REALIZ LA CONEXIN CORRECTAMENTE EN VPN-1 Y SE CRE EL TNEL

Laboratorio 5 VPN Parte I

Pg. 23 de 26

Tecsup

OpenVPN SSL

SE REALIZ LA CONEXIN CORRECTAMENTE EN CLI-3 Y SE CRE EL TNEL

REALIZAMOS LAS PRUEBAS DE CONECTIVIDAD DESDE CLI-3 HACIA EL TNEL

LA CONECTIVIDAD ENTRE CLI-1 Y CLI-3 Y RESULTA EXITOSA DEBIDO AL TNEL CREADO

Laboratorio 5 VPN Parte I

Pg. 24 de 26

Tecsup

OpenVPN SSL

EN VPN-2 CREAMOS UNA CLAVE CON UN NOMBRE DIFERENTE Y LO COPIAMOS

CREAMOS EL TNEL EN VPN-2

Laboratorio 5 VPN Parte I

Pg. 25 de 26

Tecsup

OpenVPN SSL

CREAMOS EL TNEL EN CLI-3

COMPROBAMOS CONECTIVIDAD DE CLI-3 AL TNEL

COMPROBAMOS CONECTIVIDAD DE CLI-3 A CLI-2

CONCLUSIONES Y RECOMENDACIONES
- Se comprob la funcionalidad de implementar VPN en un entorno donde se cumpla con los 5
Pilares de la Seguridad con los paquetes que salen de la red interna hacia internet
estableciendo claves y tneles en los servidores VPN y clientes remotos.

Laboratorio 5 VPN Parte I

Pg. 26 de 26

You might also like