Básicamente lo que haremos en este artículo será montar una VPN (punto a punto) del siguiente esquema de red.
Lo haremos simulando los routers(de color negro),por máquinas con S.O. Ubuntu 8.04, las cuales tendremos que programarlas para que funcionen como tal.
Aclaramos que el siguiente esquema de red a sido una simulación de como sería en internet, en este caso la LAN 172.17.0.0 ; y la zona 1,2,3 harían como nuestras LANs, es decir que las IPs de los routers de la zona 1 y el dela zona 2y3 son IPs fijas y públicas.
NOTA: Antes de proceder a configurar, hacer un backup de los ficheros originales.
1ro.- Especificaremos las ips, máscara de red, gateway, DNS(que te lo dá tu ISP), en este caso la IP es cualquiera del rango 172.17.0.0 con máscara 255.255.0.0, y el gateway en este caso es un servidor proxy 172.17.0.253, DNS 172.17.0.249 y 172.17.0.248, aquí como podemos ver las IPs son privadas porque como ya dije haremos una simulación.
2ro.- Configuramos nuestros ordenadores Linux para que hagan la labor de un enrutador, para eso modificamos el siguiente fichero:
sudo gedit /etc/ sysctl.conf
Y buscamos y descomentamos la siguiente línea:
Lo haremos simulando los routers(de color negro),por máquinas con S.O. Ubuntu 8.04, las cuales tendremos que programarlas para que funcionen como tal.
Aclaramos que el siguiente esquema de red a sido una simulación de como sería en internet, en este caso la LAN 172.17.0.0 ; y la zona 1,2,3 harían como nuestras LANs, es decir que las IPs de los routers de la zona 1 y el dela zona 2y3 son IPs fijas y públicas.
NOTA: Antes de proceder a configurar, hacer un backup de los ficheros originales.
1ro.- Especificaremos las ips, máscara de red, gateway, DNS(que te lo dá tu ISP), en este caso la IP es cualquiera del rango 172.17.0.0 con máscara 255.255.0.0, y el gateway en este caso es un servidor proxy 172.17.0.253, DNS 172.17.0.249 y 172.17.0.248, aquí como podemos ver las IPs son privadas porque como ya dije haremos una simulación.
2ro.- Configuramos nuestros ordenadores Linux para que hagan la labor de un enrutador, para eso modificamos el siguiente fichero:
Y buscamos y descomentamos la siguiente línea:
a# Uncomment the next line to enable packet forwarding for IPv4
net.ipv4.ip_forward=1
3ero.- Procedemos a la descarga e instalación del openVPN en los dos routers de la siguiente manera:
sudo apt-get install openvpn openssl
Y detenemos el openvpn por que primero lo vamos a configurar :
sudo /etc/init.d/openvpn stop
4to.- Ahora configuraremos los fichero del openvpn:
ROUTER DE LA ZONA 2Y3 :
Creamos un fichero vpn1.conf en etc/openvpn/ , y escribimos la siguiente configuración:
##vpn1.conf
dev tun
remote 172.17.202.10 ## (Ip pública del router vpn de la zona 1)
float
persist-tun
port 5000
comp-lzo
verb 3
ping 15
ping-restart 120
ifconfig 192.168.10.1 192.168.10.2 netmask 255.255.255.0
##NOTA: La red virtual en este caso sería de la zona 1 su IP es 192.168.10.2 y ##de la otra zona es 192.168.10.1, de esta menara conseguimos que nuestros ##dos redes tengan conectividad entre sí.
secret /etc/openvpn/clave_vpn.txt
persist-key
route 192.168.3.0 255.255.255.0 ##(Esta ip es la red interna del router
##de VPNs de la zona 1)
user nobody
group nogroup
chroot /var/empty
Ahora generaremos la clave de seguridad que se llamará clave_vpn.txt que estará en etc/openvpn de la siguiente manera desde terminal :
sudo openvpn –-genkey –-secret /etc/openvpn/clave_vpn.txt
Ahora bien tenemos que enviar esta clave de seguridad para que puedan sincronizarse y validarse entre ambos routers, lo hacemos desde terminal con el siguiente comando:
sudo scp /etc/openvpn/clave_vpn.txt root@x.y.z.a:/etc/openvpn/
Donde x.y.z.a es la IP del router de la zona 1(es decir la IP pública).
Nos pedirá la contraseña de root, una vez escrita veremos que automaticamente aparecerá en el router de la zona 1 estar este fichero clave_vpn.txt (/etc/openvpn).
Ahora escribimos las siguientes ordenes desde terminal:
Modprobe tun
mkdir /var/empty
chown noboby.nogroup /var/empty
ROUTER DE LA ZONA 1
Creamos y configuramos el fichero vpn2.conf (etc/openvpn/) :
##vpn2.conf
dev tun
remote 172.17.202.1 ##(Ip pública del router principal zona 2)
float
persist-tun
port 5000
comp-lzo
verb 3
ping 15
ping-restart 120
ifconfig 192.168.10.2 192.168.10.1 netmask 255.255.255.0
secret /etc/openvpn/clave_vpn.txt
persist-key
route 172.20.0.0 255.255.0.0 ##(Esta ip es la red interna del router
##de VPNs de la zona 2)
user nobody
group nogroup
chroot /var/empty
Ahora desde terminal ejecutamos la siguientes órdenes:
Modprobe tun
mkdir /var/empty
chown nobody.nogroup /var/empty
5to.- Ahora de momento para que puedan verse tenemos que ejecutar un script con reglas de filtrado para que puedan verse la dos redes , el siguiente código se tendra que hacer en un fichero y ejecutarlo(en los dos routers) o escribir linea por linea por linea desde termina, con permisos de root(sudo):
iptables -A INPUT -i tun+ -j ACCEPT
iptables -A OUTPUT -o tun+ -j ACCEPT
iptables -A FORWARD -i tun+ -j ACCEPT
iptables -A FORWARD -o tun+ -j ACCEPT
6to.- Por último cargamos los ficheros de configuración de las VPNs(vpn1.con y vpn2.conf), tendremos que ejcutarlos en los dos routers:
Router de la zona 2:
openvpn ‐‐config /etc/openvpn/vpn1.conf
Router de la zona 1:
openvpn ‐‐config /etc/openvpn/vpn2.conf
**Para comprobarlo podemos hacemos un ping de la red 192.169.3.0 (IP interna de la red del router de la zona 1) a la 172.20.0.0 (IP interna de nuestra LAN), y veremos que tenemos conectivida o también podemos hacer un traceroute, previamente lo descargamos con apt-get install aptitude traceroute , también podemos hacer un ifconfig y veremos que nos aparece la red virtual.
Espero que os haya servido mi mi pequeña experiencia con el openVPN, cualquier duda, comenten.......
1 comentarios:
estupendo lo staba buscando lo vot a probar.......................
Publicar un comentario