Upload
jacqueline-coba
View
28
Download
0
Embed Size (px)
DESCRIPTION
Configuración Vpn
Citation preview
CONFIGURACIN VPN ROAD WARRIOR
Una red privada virtual, VPN es una tecnologa de red que permite una extensin
segura de la red local (LAN) sobre una red pblica o no controlada como Internet.
Permite que la computadora en la red enve y reciba datos sobre redes compartidas o
pblicas como si fuera una red privada con toda la funcionalidad, seguridad y
polticas de gestin de una red privada. Esto se realiza estableciendo una conexin
virtual punto a punto mediante el uso de conexiones dedicadas, cifrado o la
combinacin de ambos mtodos.
VPN
OpenVPN
Es una implementacin de VPN SSL la cual usa las extensiones OSI layer 2 3,
soporta diferentes medios de autenticacin como certificados,
usuarios/contraseas, y permite polticas de control de acceso para usuarios o
grupos usando reglas de firewall aplicadas a las interfaces virtuales de la VPN.
TIPOS DE CONFIGURACIN UTILIZANDO OPENVPN
1. Host a Host (Sitio a sitio)
Es el mtodo ms simple, nos permite encriptar la comunicacin entre dos PC las
cuales debern solamente tener conexin; es decir: ambas PC deben poderse
enviar paquetes directamente ya sea porque estn conectadas en la misma red
local, o porque ambas estn conectadas a la internet y sean alcanzables entre s.
TIPOS DE CONFIGURACIN UTILIZANDO OPENVPN
2. Road Warrior (Sitio-Multisitio)
Es una de las formas ms utilizadas. Es el permitir que una mquina de alguien
que est fuera de nuestra red (de forma temporal o permanente) pueda
comunicarse con el servidor OpenVPN de nuestra red y una vez autenticado
pueda entrar a ver y acceder los recursos de nuestra red local. En verdad es un
caso especial de la conexin Red a Red.
TIPOS DE CONFIGURACIN UTILIZANDO OPENVPN
3. Red a Red
Uno de los mtodos ms usados. Mediante sta forma dos redes separadas en el
espacio pueden comunicarse como si estuvieran unidas por un cable virtual, la
comunicacin entre ambas redes viajar encriptada una vez salgan de los
servidores de openvpn y hasta que lleguen a su otro extremo.
CONFIGURACIN DE ROAD WARRIOR
PASO 1: Instalacin del OpenVPN
Instalar Openvpn en nuestro Linux CentOS es realmente fcil. Previamente a
la instalacin de Openvpn se debe tener instalado el Repositorio Epel.
#wgethttp://download.fedoraproject.org/pub/epel/6/i386/epelrelease68.n
oarch.rm
# rpm -ivh epel-release-6-8.noarch.rpm
Luego para la instalacin de Openvpn emitimos el comando :
#yum install openvpn
PASO 2: Configuracin del Servidor
Previamente se debe realizar las siguientes configuraciones de no serlo a si la vpn no har ping hacia las redes internas.
En el servidor de openvpn se debe activar el ip_forwarding:
#vi /etc/sysctl.conf
Cambiar ip_forwarding a 1 (est normalmente en 0).
# net.ipv4.ip_forward = 0
Ejcutamos el comando
#sysctl p
La versin de Openvpn 2.3 para CentOS 6, no incluye el paquete easy-rsa que esun conjunto de herramientas que me permitirn generar los certificados, por locual se debe instalar.
# yum install easy-rsa Contamos con una serie de scripts en el directorio /usr/share/easy-rsa/2.0/ los
cuales nos ayudarn mucho a ejecutar sta tarea inicial.
Primero cambiamos al directorio.
# cd /usr/share/easy-rsa/2.0
Creando el CA
Una vez dentro de ste directorio procedemos a ejecutar los siguientes pasos:
#. Vars
#sh clean-all
# sh build-ca
Con ellos lo que haremos es:
Inicializar variables de ambiente para poder trabajar con los scripts de shellpara generar las variables
Inicializamos el directorio de las claves (borrando potenciales archivos viejos)
build-ca: procedemos a generar el certificado CA
En ste ltimo paso se nos pedir una serie de informacin sobre nuestra
red/empresa que debemos llenar lo ms fielmente posible:
Se pone un nombre pero
debe estar seguido de ca
Ejemplo
openvpn ca
Generacin del certificado y de la clave de encriptacin para el servidor Siguiente ala generacin del Certificado de autoridad, procedemos a crear el certificado delservidor y de su clave de encriptacin:
#sh build-key-server server
No repetir el nombre del
certificado anterior
Generacin de certificados y claves privadas para los clientes
Cada cliente debe tener su propio certificado y clave de seguridad, para cada clienteque tengamos deberemos repetir el siguiente paso.
#sh build-key client1
Debemos notar que al ejecutar el programa sh build-key, le pasamos comoparmetro el nombre del cliente (client1 en el ejemplo anterior) el cual debe serdiferente para cada cliente. En el common name ponemos el nombre del cliente(client1 en ste ejemplo) tal y como le pasamos de parmetro.
Se puede crear el nmero de claves que sean necesarias de acuerdo al nmero declientes:
#sh build-key client2#sh build-key client3
Generando parmetros de Diffie-Hellman
El parmetro de Diffie-Hellman debemos generarlo de la siguiente manera:
#sh build-dh
[root@servidor 2.0]# sh build-dh
Generating DH parameters, 2048 bit long safe prime, generator 2
This is going to take a long time
..............+........................+..............................................................................+.............
............+.........................................................................................................................
...............................................+......................................................................................
.......................................................................................................................................
.................+.......................................................+.............................................
Archivos a copiar al servidor
Con los comandos ejecutados anteriormente se generan los siguientes archivos que
debern se copiados al servidor hacia el directorio /etc/openvpn del servidor .
ca.crt
ca.key
server.key
server.crt
dh2048.pem
Estos archivos estn presentes en: /usr/share/easy-rsa/2.0/keys/
# cd /usr/share/easy-rsa/2.0/keys/# cp -a ca.crt ca.key server.key server.crt dh2048.pem /etc/openvpn
NOTA: Fijarse en el nmero que se genera en los certificados para la trasferencia
del archivo dh2048.pem ya que puede variar.
[root@servidor 2.0]# sh build-dhGenerating DH parameters, 2048 bit long safe prime, generator 2This is going to take a long time
Archivos a copiar al cliente
Hacia el directorio /etc/openvpn de cada cliente copiamos los siguientes archivos:
ca.crt clientX.crt clientX.key
Tenga en cuenta que X es un nmero que se corresponde con el cliente (para el cliente1 sera: client1.crt y client1.key por ejemplo).
# cd /usr/share/easy-rsa/2.0/keys/# scp ca.crt client1.crt client1.key [email protected]:/etc/openvpn
Ejecutamos el siguiete commando.
# vi /etc/openvpn/server.conf
port 1194
proto udp
dev tun
ca ca.crt
cert server.crt
key server.key
dh dh2048.pem
#Direcciones que se asignaran a los
#clientes, el server es .1
server 10.8.0.0 255.255.255.0
ifconfig-pool-persist ipp.txt
#Aqu debe especificarse la LAN detrs de tu servidor
#En este ejemplo supongo que TU LAN es 192.168.1.0/24
#Cambiala a la verdadera LAN de tu servidor
push "route 192.168.89.0 255.255.255.192"
push "redirect-gateway def1 bypass-dhcp"
keepalive 10 120
comp-lzo
user nobody
group nobody
persist-key
persist-tun
status openvpn-status.log
verb 4
PASO 3 Configuracin del cliente
En el caso del cliente, as quedara el archivo de configuracin:
#vi /etc/openvpn/client1.conf
clientdev tunproto udp#Aqui debo especificar la IP de la WAN de tu servidor OpenVPNremote 192.168.89.128 1194resolv-retry infinitenobind#Las dos siguientes opciones no van en windowsuser nobodygroup nobodypersist-keypersist-tunca ca.crtcert client1.crtkey client1.keycomp-lzoverb 4
SE DEBE CAMBIAR DE ACUERDO AL
NUEMRO DE CLIENTES
PASO 4 Iniciar openVPN
Iniciamos con los siguientes comandos
#service openvpn start
#chkconfig --level 2345 openvpn on
PASO 5 Comprobacin del funcionamiento
Una vez iniciado en ambos lados podemos comprobar la creacin del tnel con elcomando ifconfig
Servidor
eth0 Link encap:Ethernet HWaddr 08:00:27:46:36:62
inet addr:192.168.89.128 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:fe46:3662/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:604 errors:0 dropped:0 overruns:0 frame:0
TX packets:100 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:44166 (43.1 KiB) TX bytes:14434 (14.0 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-
00-00-00-00
inet addr:10.8.0.1 P-t-P:10.8.0.2 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Clienteeth0 Link encap:Ethernet HWaddr 08:00:27:BE:25:49
inet addr:192.168.89.129 Bcast:192.168.1.255 Mask:255.255.255.0
inet6 addr: fe80::a00:27ff:febe:2549/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:537 errors:0 dropped:0 overruns:0 frame:0
TX packets:387 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:52177 (50.9 KiB) TX bytes:50170 (48.9 KiB)
lo Link encap:Local Loopback
inet addr:127.0.0.1 Mask:255.0.0.0
inet6 addr: ::1/128 Scope:Host
UP LOOPBACK RUNNING MTU:16436 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:0
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
tun0 Link encap:UNSPEC HWaddr 00-00-00-00-00-00-00-00-00-00-00-00-
00-00-00-00
inet addr:10.8.0.6 P-t-P:10.8.0.5 Mask:255.255.255.255
UP POINTOPOINT RUNNING NOARP MULTICAST MTU:1500 Metric:1
RX packets:0 errors:0 dropped:0 overruns:0 frame:0
TX packets:0 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:100
RX bytes:0 (0.0 b) TX bytes:0 (0.0 b)
Para comprobar podemos hacer ping hacia el tun
Desde el cliente
ping 10.8.0.1
Desde el servidor
ping 10.8.0.6
En caso de que falle la configuracin se podra desactivar los firewall
service iptables stop
chkconfig iptables off
chkconfig ip6tables off
service ip6tables stop
iptables -t nat -A POSTROUTING -s 10.8.0.0/24 -o eth0 -j MASQUERAD
service iptables save
service iptables restart