Configuración de túneles VPN mediante OpenVPN Instalación del software openvpn en Linux. 1. Desde un paquete RPM openvpn-1.6.0-1.rh90.dag.i386.rpm Tue 11 May 2004 185 kB Red Hat 9 - i386 Necesita las dependencias: •openssl •lzo •pam Si se requiere puede construirse el paquete RPM e instalarlo #rpmbuild -tb openvpn-[version].tar.gz #rpm -ivh openvpn-[details].rpm Se necesitan entonces la dependencias •openssl-devel •lzo-devel •pam-devel Instalación del software openvpn en Linux. (II) 2. Compilando el fuente #tar xfz openvpn-[version].tar.gz #./configure #make #make install Instalación en Windows 1. Ejecutar el programa (sin GUI) Windows Installer openvpn-2.0.9-install.exe 2. Ejecutar el programa+GUI Installation Package (Both 32-bit and 64-bit TAP driver included): openvpn-2.0.9-gui-1.0.3-install.exe Como autenticar los equipos que establecen el túnel 1. Mediante el empleo de una contraseña común simétrica • Generar una clave simétrica para utilizar en ambos equipos #openvpn --genkey --secret static.key • Configuración en el servidor (servidor.ovpn) dev tun ifconfig 10.8.0.1 10.8.0.2 ---> direcciones virtuales secret static.key • Configuración en el cliente (cliente.ovpn) remote 192.168.100.5 ---> dirección real (Ip pública) dev tun ifconfig 10.8.0.2 10.8.0.1 ---> direcciones virtuales secret static.key Primer escenario Cliente Servidor VPN 10.8.0.2 10.8.0.1 192.168.100.2 192.168.100.5 cliente.ovpn server.ovpn remote 192.168.100.5 dev tun ifconfig 10.8.0.2 10.8.0.1 secret static.key dev tun ifconfig 10.8.0.1 10.8.0.2 secret static.key Segundo escenario Cliente 10.8.0.2 10.0.100.2 Servidor VPN (Router) 10.8.0.1 10.0.100.5 cliente.ovpn remote 10.0.100.5 dev tun ifconfig 10.8.0.2 10.8.0.1 route 192.168.100.0 255.255.255.0 dhcp-option DNS 192.168.100.10 secret static.key 192.168.100.5 192.168.100.10 server.ovpn dev tun ifconfig 10.8.0.1 10.8.0.2 secret static.key Habilitar el enrutamiento en el servidor OpenVpn 1. En Linux #echo 1 > /proc/sys/net/ipv4/ip_forward 2. En Windows a) Configurar “Enrutamiento y acceso remoto” con la opción “enrutador” o b) Editar en el registro la clave IPEnableRouter con el valor 1 HLM/system/currentcontrolset/services/tcpip/parameters Añadir la ruta hacia la VPN en los equipos de la LAN c:\>route add 0.0.0.0 mask 0.0.0.0 192.168.100.5 Tercer escenario Cliente Servidor VPN Firewall 192.168.100.5 10.8.0.2 10.0.100.2 10.8.0.1 10.0.100.252 192.168.100.252 192.168.100.10 server.ovpn cliente.ovpn remote 10.0.100.252 dev tun ifconfig 10.8.0.2 10.8.0.1 route 192.168.100.0 255.255.255.0 dhcp-option DNS 192.168.100.10 secret static.key dev tun ifconfig 10.8.0.1 10.8.0.2 secret static.key Configurar el firewall Habilitar el enrutado #echo 1 > /proc/sys/net/ipv4/ip_forward Establecer reglas de filtrado #iptables –P INPUT DROP #iptables –P OUTPUT DROP #iptables –P FORWARD DROP #iptables –t nat –A PREROUTING –p udp --dport 1194 –j DNAT--to 192.168.100.5 #iptables –A FORWARD –d 192.168.100.5 –p udp--dport 1194 –j ACCEPT #iptables –A FORWARD –s 192.168.100.5 –p udp--sport 1194 –j ACCEPT Añadir la ruta hacia la VPN en los equipos de la LAN C:\>route add 0.0.0.0 mask 0.0.0.0 192.168.100.252 c:\>route add 10.8.0.0 mask 255.255.255.0 192.168.100.5 Como autenticar los equipos 2. Mediante certificados digitales •Generar e Instalar la AC (Autoridad Certificación) C:\>cd c:\Archivos de programa\OpenVPN\easy-rsa C:\> init-config •Editar el fichero vars.bat con la información adecuada para: •KEY_COUNTRY •KEY_PROVINCE •KEY_CITY •KEY_ORG •KEY_EMAIL •Ejecutar los siguientes comandos •C:\> vars •C:\> clean-all •C:\> build-ca 2. Autenticación mediante certificados digitales (generar certificados) •Generar el certificado para el servidor (server.crt, server.key) C:\>build-key-server server (incluir el mismo nombre a la pregunta de CN) •Generar el certificado para el cliente (cliente.crt, cliente,key) C:\>build-key cliente (incluir el mismo nombre a la pregunta de CN) •Generar los parámetros para Diffie-Hellman (dh{n}.pem) C:\>build-dh •Copiar tanto en el servidor como en los clientes el archivo CA.CRT (generado al crear la AC) Tercer escenario Servidor VPN Cliente Firewall 192.168.100.5 10.8.0.2 10.0.100.2 cliente.ovpn dev tap remote 10.0.100.252 ca ca.crt cert server.crt key server.key 10.8.0.1 10.0.100.252 192.168.100.252 192.168.100.10 server.ovpn dev tap server 10.8.0.0 255.255.255.0 push “route 192.168.100.0 255.255.255.0” push “dhcp-option DNS 192.168.100.10” ca ca.crt cert server.crt key server.key dh dh1024.pem Configurar el firewall Habilitar el enrutado #echo 1 > /proc/sys/net/ipv4/ip_forward Establecer reglas de filtrado #iptables –P INPUT DROP #iptables –P OUTPUT DROP #iptables –P FORWARD DROP #iptables –t nat –A PREROUTING –p udp --dport 1194 –j DNAT--to 192.168.100.5 #iptables –A FORWARD –d 192.168.100.5 –p udp--dport 1194 –j ACCEPT #iptables –A FORWARD –s 192.168.100.5 –p udp--sport 1194 –j ACCEPT Añadir la ruta hacia la VPN en los equipos de la LAN C:\>route add 0.0.0.0 mask 0.0.0.0 192.168.100.252 c:\>route add 10.8.0.0 mask 255.255.255.0 192.168.100.5 Gracias por su asistencia