Este documento describe cómo configurar un servidor OpenVPN en Debian y un cliente en Windows XP, así como un servidor en Windows XP y un cliente en Debian. Explica los pasos para instalar y configurar OpenVPN en ambos sistemas operativos, generar certificados, copiar archivos de configuración y ajustar las directivas necesarias para establecer una conexión VPN segura entre el servidor y el cliente en cada escenario.
2. OpenVPN
INDICE :
Servidor OpenVPN en Debian y cliente en Windows XP ............................................... 3
Descripción del escenario ............................................................................................. 3
Instalación Servidor OpenVPN en Debian ................................................................... 4
Configuración del cliente en Windows XP .................................................................. 7
Servidor OpenVPN en Windows XP y cliente en Debian................................................ 9
Descripción del escenario ............................................................................................. 9
Configuración Servidor VPN en Windows XP ............................................................ 9
Configuración Cliente VPN en Debian ..................................................................... 10
Francisco José Cruz Jiménez
2
3. OpenVPN
Servidor OpenVPN en Debian y cliente en Windows XP
Descripción del escenario
Para este primer escenario necesitamos una máquina Debian para que actúe
como servidor, para ello utilizaremos una máquina virtual, cuya configuración de red
conste de dos adaptadores de red, uno en Adaptador Puente y otro en Red Interna.
# nano /etc/network/interfaces
Como cliente usaremos una máquina virtual con Windows XP, cuyo único
Adaptador de Red esté configurado como Red Interna.
Francisco José Cruz Jiménez
3
4. OpenVPN
Instalación Servidor OpenVPN en Debian
Para instalar OpenVPN, en la máquina virtual Debían ejecutamos lo siguiente.
#apt-get install openvpn
Podemos encontrar los ficheros de configuración de ejemplo en:
/usr/share/doc/openvpn/examples,
Para crear los certificados vamos a /usr/share/doc/openvpn/examples/easyrsa/2.0 y editamos el archive vars y definimos la siguiente configuración.
#nano /usr/share/doc/openvpn/examples/easy-rsa/2.0/vars
Francisco José Cruz Jiménez
4
5. OpenVPN
Ahora cargamos la configuración y seguiremos estos pasos.
# ./vars
# ./clean-all
# ./build-ca
A continuación creamos el certificado para el servidor (La anterior era para crear
la “entidad certificadora”).
# ./build-key-server servidor
Cuando nos aparezca la siguiente pantalla aceptamos pulsando “y”.
Creamos el certificado para el cliente
# ./build-key cliente1
Francisco José Cruz Jiménez
5
6. OpenVPN
Y por último creamos el dh1024.pem
# ./build-dh
A continuación necesitamos copiar dentro del directorio del servidor los
archivos necesarios, los que creamos anteriormente. (ca.crt dh1024.pem servidor.crt y
servidor.key).
$ cd /usr/share/doc/openvpn/examples/easy-rsa/2.0/keys
# cp ca.crt servidor.key servidor.crt dh1024.pem /etc/openvpn/
Ahora vamos a /usr/share/doc/openvpn/examples/sample-config-files
descomprimimos el archivo server.conf.gz
y
$ cd /usr/share/doc/openvpn/examples/sample-config-files
# gunzip server.conf.gz
Se generara un archivo llamado server.conf. Lo copiamos al directorio anterior.
# cp server.conf /etc/openvpn/
A continuación editamos el archivo server.conf, y configuramos las siguientes
directivas
# nano /etc/openvpn/server.conf
Ya tenemos configurado el servidor OpenVPN, para efectuar cambios
reiniciamos el servidor.
# service openvpn restart
Francisco José Cruz Jiménez
6
7. OpenVPN
Configuración del cliente en Windows XP
Instalamos OpenVPN en Windows XP con el ejecutable de dicho programa.
Iremos haciendo click en siguiente y cuando nos aparcezca esta pantalla le daremos a
continuar.
Ahora tenemos que copiar los archivos de certificados generados anteriormente
en el servidor, dichos archivos que necesitamos son: ca.crt, dh1024.pem, cliente1.key y
cliente1.crt. Deberemos copiarlo a la siguiente carpeta C:Archivos de
programaOpenVPNconfig en el cliente. Podemos copiarlos utilizando la herramienta
WinSCP.
Además debemos copiar el archivo client de la carpeta C:Archivos de
programaOpenVPNsample-config
a
la
carpeta
C:Archivos
de
programaOpenVPNconfig
Posteriormente lo editamos y cambiamos estas directivas.
Francisco José Cruz Jiménez
7
8. OpenVPN
Ya está todo correctamente configurado. Si hacemos doble click en el icono para
conectar, se debería establecer la conexión a la VPN.
Francisco José Cruz Jiménez
8
9. OpenVPN
Servidor OpenVPN en Windows XP y cliente en Debian
Descripción del escenario
Para este segundo escenario necesitamos las máquinas anteriores, pero
cambiaran sus papeles, es decir, la máquina Windows XP actuará como servidor, y la
Debian como cliente. Las configuraciones de red se quedarán como estaban
configuradas anteriormente.
Configuración Servidor VPN en Windows XP
Para comenzar eliminaremos todos los archivos que utilizamos anteriormente en
C:Archivos de programaOpenVPNconfig. Además copiaremos los archivos de los
certificados que generamos para el servidor en Debian a esta carpeta, también
copiaremos desde la carpeta de samples el archivo server . Nos tiene que quedar estos
archivos en esta carpeta.
Editamos el archivo server y configuramos las siguientes directivas.
La directiva donde se indica la red que se tomara para la VPN no la tocaré, ya
que está configurada para usar la subred 10.0.0.0.
A continuación ejecutamos OpenVPN GUI.
Francisco José Cruz Jiménez
9
10. OpenVPN
Si todo está correcto se conectará.
Configuración Cliente VPN en Debian
Ahora en la máquina usada anteriormente como servidor, la usaremos como
cliente, para empezar copiamos los archivos de cliente generados anteriormente a la
carpeta /etc/openvn. Nos debería quedar asi.
$ cd /usr/share/doc/openvpn/examples/easy-rsa/2.0/keys
# cp ca.crt cliente.key cliente.crt dh1024.pem /etc/openvpn/
$ cd /usr/share/doc/openvpn/examples/sample-config-files
# gunzip client.conf.gz
# cp client.conf /etc/openvpn/
A continuación editamos el archivo client.conf, y configuramos las siguientes
directivas
# nano /etc/openvpn/server.conf
Francisco José Cruz Jiménez
10
11. OpenVPN
Y reiniciamos el servicio.
# service openvpn restart
Si vamos al servidor vemos las notificaciones de que se ha conectado, además si
hacemos ping vemos que funciona correctamente.
Francisco José Cruz Jiménez
11