Generación de clave de encriptación.
En el caso de una conexión host a host, podemos sencillamente generar una clave compartida en el servidor, y copiarla hacia el cliente. Con esta clave se encriptarían los datos sin mayor problema o inconveniente:
openvpn --genkey --secret /etc/openvpn/secret.key
Este archivo “secret.key” tiene que ser copiado hacia el directorio /etc/openvpn del cliente y del servidor.
scp /etc/openvpn/secret.key IPDELCLIENTE:/etc/openvpn/
Configuración Host a Host
En la configuración host a host, lo que lograremos es que el intercambio de paquetes entre dos máquinas se realice de forma encriptada.
Para esto le indicaremos en el archivo de configuración que al arrancar openvpn se creará automáticamente una interfaz virtual con una IP privada en cada extremo:
* 10.8.0.1 para el servidor
* 10.8.0.2 para el cliente
Y cualquier paquete que circule entre el cliente y el servidor vía esas direcciones IP, viajará encriptado.
Configuración del servidor
El archivo /etc/openvpn/server.conf lo podemos dejar de la siguiente forma:
# dispositivo de tunel dev tun # se define como: # ifconfig ipdelserver ipdelcliente # sugiero no cambiarle ifconfig 10.8.0.1 10.8.0.2 # Clave del servidor secret /etc/openvpn/secret.key #puerto port 1194 #usuario bajo el cual ejecutaremos user nobody group nobody # opciones, comprimir con lzo, ping cada 15 segs, verbose 1 (bajo) comp-lzo ping 15 verb 4
En este caso lo fundamental es que estamos indicándole al servidor que escuche en su puerto usuario (1194/udp) y que la IP que tomará la interfaz de vpn (tun) será 10.8.0.1 y le dará al cliente la 10.8.0.2
Configuración del cliente
Antes de configurar el cliente, en este caso el cliente 1, debemos traer del servidor el archivo /etc/openvpn/secret.key hacia el directorio /etc/openvpn del cliente. Esto lo hicimos más arriba en este mismo documento.
El archivo /etc/openvpn/client1.conf quedaría como sigue:
# IP publica del servidor, poner IP real de su servidor! remote 200.100.50.25 # puerto port 1194 # dispositivo tunel dev tun # usamos ifconfig ipdelcliente ipdelservidor tun-mtu 1500 ifconfig 10.8.0.2 10.8.0.1 # clave privada, client1.key para éste ejemplo, recuerde cada usuario debe #tener su propia .key generada. El ejemplo de win esta comentado. #secret "c:\program files\company branded vpn\config\key.txt" secret /etc/openvpn/secret.key # ping cada 10 segs ping 10 # compresión lzo comp-lzo # verbose moderado, callar mas de 10 mensajes iguales verb 4 mute 10
Probando el enlace
Tanto en el cliente como en el servidor ponemos:
service openvpn start
chkconfig --level 2345 openvpn on
Podemos verificar en /var/log/messages que todo haya ido ok.
Una vez levantemos los demonios en ambos lados, podemos hacer ping hacia la interfaz tun (10.8.0.1 en el servidor ó 10.8.0.2 en el cliente):
desde el servidor:
ping 10.8.0.2
desde el cliente:
ping 10.8.0.1
Si el ping responde, todo está bien. Sino, sugerimos revisar en /var/log/messages para verificar qué fue mal.
Ya logré conectar los equipos Host a Host… por ping veo las IPs privadas entre ambos equipos…
Pregunta: ¿Hay alguna manera de acanzar las IPs de su interfaz LAN? eth0 por ejemplo…. 192.168.1.X de un equipo y 192.168.100.X del otro equipo
Saludos