Anda di halaman 1dari 18

VPN en servidor Linux y clientes Windows/Linux con OpenVPN + Shorewall [Parte 1]

Autor: William Lpez Jimnez Correo electrnico: william [punto] koalasoft [arroba] gmail [punto] com Sitio de Red: http://www.koalasoftmx.net Jabber ID: koalasoft@jabber.org Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.1 2006-2007 William Lpez Jimnez. Usted es libre de copiar, distribuir y comunicar pblicamente la obra y hacer obras derivadas bajo las condiciones siguientes: a) Debe reconocer y citar al autor original. b) No puede utilizar esta obra para fines comerciales (incluyendo su publicacin, a travs de cualquier medio, por entidades con fines de lucro). c) Si altera o transforma esta obra o genera una obra derivada, slo puede distribuir la obra generada bajo una licencia idntica a sta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los trminos de la licencia de esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Los derechos derivados de usos legtimos u otras limitaciones no se ven afectados por lo anterior. Licencia completa en castellano. La informacin contenida en este documento y los derivados de ste se proporcionan tal cual son y los autores no asumirn responsabilidad alguna si el usuario o lector hace mal uso de stos.

INTRODUCCIN OpenVPNes una solucin de conectividad basada en software: SSL(Secure Sockets Layer) VPNVirtual Private Network [red virtual privada], OpenVPN ofrece conectividad punto-a-punto con validacin, jerrquica de usuarios y host conectados remotamente, resulta una muy buena opcin en tecnologas Wi-Fi(redes inalmbricas EEI 802.11) y soporta una amplia configuracin, entre ellas balanceo de cargasentre otras. Est publicado bajo licencia de cdigo-libre (Open Source).

Tipo de configuracin. En esta ocasin se realizar una configuracin tipo VPN Intranet. Este tipo de redes es creado entre una oficina central [servidor] y una o varias oficinas remotas [clientes]. El acceso viene del exterior. Se utiliza este tipo de VPN cuando se necesita enlazar a los sitios que son parte de una compaa, en nuestro caso ser compuesto por un servidor Central que conectar a muchos clientes VPN entre si. La informacin y aplicaciones a las que tendrn acceso los directivos mviles en el VPN, no sern las mismas que aquellas en donde pueden acceder los usuarios que efectan actividades de mantenimiento y soporte, esto como un ejemplo de lo que se podr realizar con esta configuracin. Ademas de que podr conectarse va Terminal Server [en el caso de clientes Linux] a terminales Windows de la red VPN as como de Clientes Windows a computadoras con el mismo sistema operativo [mediante RDP]. Nota Importante: Enfocado a esta configuracin .. Una vez que los clientes [Win/Linux] se conecten a la red VPN quedarn automticamente sin conexin a Internet, lo cual NO podrn acceder a la red mundial. Esto puede ser modificable en el servidor VPN.

Servidor de Pasarela OpenVpn con clientes [Win/Linux] remotos El servidor VPN hace de pasarelapara que todos los clientes [Windows/Linux] puedan estar comunicados a travs del tnel OpenVpn, estos al conectarse por medio de Internet al tnel automticamente quedan sin lineaa la red mundial quedando como unared local, esto claro esta a travs del VPN. Cada cliente se encuentra en lugares diferentes [ciudad/estado/pas] con diferentes tipos de segmento de red, al estar conectados mediante el tnel VPN se crea un red virtual y se asigna un nuevo segmento de red proporcionada por el servidor principal en este caso con segmento [10.10.0.0/255.255.255.255].

INSTALACIN VPN CON OPENVPN Actualizacin del Sistema Antes que nada debemos actualizar todo nuestro sistema, si cuenta con acceso a Internet as como tambin correctamente configurado sus depsitos yum se har de la siguiente forma: yum -y update Lo anterior bajar lo paquetes actualizados de Internet as como sus dependencias en caso de ser necesario. Paquetes Requeridos

Instalacin a partir de RPM Se necesita los paquetes OpenVPN y lzo, se podr hacer de la siguiente forma, si cuenta en sus depsitos con la paquetera AL Desktop: yum -y install openvpn lzo

Instalacin a partir de paquete TAR. En caso de no contar con paquetes RPMpuede hacerlo de forma manual. Se requiere utilizar la compresin sobre el enlace VPN, para esto instale la biblioteca LZO [http://www.oberhumer.com/opensource/lzo/]. Si utiliza un Linux 2.2 o anterior descargue el controlador TUN/TAP [http://vtun.sourceforge.net/tun/]. Los usuarios de Linux 2.4.7 o superior deberan tener el controlador TUN/TAP ya incluido en su kernel. Usuarios de Linux 2.4.0 -> 2.4.6 deberan leer la advertencia al final del archivo INSTALL. Descargue ahora la ltima release de OpenVPN: [http://prdownloads.sourceforge.net/openvpn/] Instalar desde paquete .tar, descomprima el paquete donde x.x-x es la versin del Openvpn: tar zxvf openvpn-x.x-x.tar.gz Compilar OpenVPN: cd openvpn-x.x. ./configure make make install Si no se descarg la biblioteca LZO, aada --disable-lzoal comando configure. Se pueden habilitar otras opciones como el soporte para pthread(./configure --enable-pthread) para mejorar la latencia durante los intercambios dinmicos de clave SSL/TLS. Si desea mas informacin acerca de todas las opciones de configuracin para OpenVPN puede usar el comando. ./configure help

Preparacin de guiones (script) RSA.

Para la administracin de la PKI (Infraestructura de Llave Publica - Public Key Infrastructure) usaremos los guiones que vienen junto con OpenVPN (easy-rsa) la versin reciente trae consigo muchas mejoras, es esta easy-rsa 2.0. cp -Rp /usr/share/doc/openvpn-x.x-x/easy-rsa/ /etc/openvpn cp /etc/openvpn/easy-rsa/openssl.cnf /etc/openvpn A continuacin ser modificar la Autoridad Certificadora ( CA) para generar las llaves, para esto se edita el archivo /etc/openvpn/easy-rsa/vars de la siguiente forma, por ejemplo: export KEY_COUNTRY=MX export KEY_PROVINCE=MiEstado/Provincia export KEY_CITY=MiCiudad export KEY_ORG="midominio.com" export KEY_EMAIL="fulanito@modominio.com" De lo anterior, cada elemento significa lo siguiente: KEY_COUNTRY: Especifica el pas donde se encuentra el servidor vpn KEY_PROVINCE: Provincia o estado donde se encuentra este. KEY_CITY: Ciudad ubicado el servidor vpn. KEY_ORG: Dominio o departamento de la organizacin/Empresa. KEY_MAIL: Correo electrnico de la organizacin/empresa.

Importante: Se deben de llenar todos los parmetros ya que son indispensables para los certificados que sern creados. Seguidamente se ejecutarn los guiones (scripts) para general las llaves correspondientes de la siguiente forma: Inicializando Autoridad Certificadora el CA Para generar el CA deber realizar los siguientes pasos: cd /etc/openvpn/ source easy-rsa/2.0/./vars sh easy-rsa/2.0/clean-all sh easy-rsa/2.0/build-ca cd /etc/openvp

Generando Parametros Diffie Hellman. Los parmetros Diffie Hellmandeben de ser generados en el Servidor OpenVPN, para realizar esto deber ejecutar el guin de la siguiente forma: sh easy-rsa/2.0/build-dh

Generacin de llaves. Para generar el certificado y llave privada para el servidor ser de la siguiente forma: sh easy-rsa/2.0/build-key-server miservidor En donde [miservidor] es una variable para identificar la llave privada del servidor. Para generar el certificado y llave para los clientes se har de la siguiente forma: Recomendacin: Cada cliente deber tener su propia llave. sh easy-rsa/2.0/build-key cliente sh easy-rsa/2.0/build-key cliente1 sh easy-rsa/2.0/build-key cliente2 Una ves que se han generado las llaves correspondientes a los clientes y servidor, se podr rescatar estas en el directorio /etc/openvpn/easy-rsa/2.0/keys

CONFIGURACIN. Configuracin del Servidor Linux VPN Para la creacin del servidor OpenVPN se deber crear un archivo de configuracin udppara el este en el directorio /etc/openvpn/ con el nombre servidorvpn-udp-1194.conf port 1194 proto udp dev tun #---- Seccion de llaves ----ca keys/ca.crt cert keys/server.crt key keys/server.key dh keys/dh1024.pem #---------------------------server 10.11.0.0 255.255.255.0 ifconfig-pool-persist ipp.txt keepalive 10 120 comp-lzo

persist-key persist-tun status openvpn-status-servidorvpn-udp-1194.log verb 3

Descripcin: Port: Especifica el puerto que ser utilizado para que los clientes vpn puedan conectarse al servidor. Proto: tipo de protocolo que se emplear en a conexin a travs de VPN dev: Tipo de interfaz de conexin virtual que se utilizar el servidor openvpn. ca: Especifica la ubicacin exacta del archivo de Autoridad Certificadora [.ca]. cert: Especifica la ubicacin del archivo [.crt] creado para el servidor. key: Especifica la ubicacin de la llave [.key] creada para el servidor openvpn. dh: Ruta exacta del archivo [.pem] el cual contiene el formato de Diffie Hellman (requirerido para --tlsserversolamente). server: Se asigna el rango IP virtual que se utilizar en la red del tnel VPN. Ifconfig-pool-persist: Archivo en donde quedarn registrado las direcciones IP de los clientes que se encuentran conectados al servidor OpenVPN. Keepalive 10 120 : Enva los paquetes que se manejan por la red una vez cada 10 segundos; y asuma que el acoplamiento es abajo si ninguna respuesta ocurre por 120 segundos. comp-lzo: Especifica los datos que recorren el tnel vpn ser compactados durante la trasferencia de estos paquetes. persist-key: Esta opcin soluciona el problema por llaves que persisten a travs de los reajustes SIGUSR1, as que no necesitan ser reledos. Persist-tun: Permite que no se cierre y re-abre los dispositivos TAP/TUN al correr los guiones up/down status: archivo donde se almacenar los eventos y datos sobre la conexin del servidor [.log] verb: Nivel de informacin (default=1). Cada nivel demuestra todo el Info de los niveles anteriores. Se recomienda el nivel 3 si usted desea un buen resumen de qu est sucediendo. 0 --No muestra una salida excepto errores fatales. 1 to 4 Rango de uso normal. 5 -Salida Ry Wcaracteres en la consola par los paquetes de lectura y escritura, maysculas es usada por paquetes TCP/UDP minsculas es usada para paquetes TUN/TAP. Para la configuracin del Servidor VPN necesitamos insertar el mdulo (tun) para controlar los interfaces /dev/net/tunXque se necesiten en le sistema, as pues creamos el directorio /var/emptypara hacer chroot y seguidamente reiniciamos el servicio OpenVPN: Cargamos el mdulo: modprobe tun Y habilitamos el IP forwarding: echo 1 > /proc/sys/net/ipv4/ip_forward Comprobamos que tenemos /dev/net/tun, si no existelo lo creamos con: mknod /dev/net/tun c 10 200 A continuacin se crear un directorio para hacer chroot [jaula], en el cual solamente serusado para configuracin de clientes Linux (no-Windows), de la siguienteforma:

mkdir /var/empty Ahora signamos el tipo de usuarios y grupo como [nobody].. chown nobody.nogroup /var/empty Para la ejecucin del servidor OpenVPN puede utilizar el siguiente guin y guardarlo con el nombre de [iniciovpnserver], tendr el siguiente contenido: #!/bin/bash # #-- Variables -RUTACONFIG=/etc/openvpn/ NOMCONFIG=servidorvpn-udp-1198.conf # #-- Ejecucinde la configuracinpara el servicioOpenVPN # $RUTACONFIG./$NOMCONFIG # exit 0 Y damos los permiso de ejecucin correspondientes: chmod +x iniciovpnserver Para ejecutar nuestro guin al inicio del sistema (arranque), puede colocar lo siguiente dentro del archivo /etc/rc.local #inicia la configuracin OpenVPN /donde/este/tu/archivo/iniciovpnserver

Configuracin del cortafuego [Shorewall] Acerca de shorewall Shorewall(Shoreline Firewall) es una robusta y extensible herramienta de alto nivel para la configuracin de muros cortafuego.Shorewall solo necesita se le proporcionen algunos datos en algunos archivos de texto simple y ste crear las reglas de cortafuegos correspondientes a travs de iptables. Shorewallpuede permitir utilizar un sistema como muro cortafuegos dedicado, sistema de mltiples funciones como puerta de enlace, dispositivo de encaminamiento y servidor.

URL: http://www.shorewall.net/ En esta ocasin se supone que el servidor VPN se encuentra en el mismo Firewall. Procedimiento Archivo de configuracin /etc/shorewall/zones En este archivo se definir las zonas que se administrarn con Shorewall. La zona fwest presente en el archivo /etc/shorewall.confcomo configuracin predefinida. En el siguiente ejemplo se registrarn las zonas de Internet (net), Red Local (loc) y el tnel virtualtunpara el vpn (rem): #ZONE DISPLAY OPTIONS fw net loc firewall ipv4 ipv4

# OpenVPN ---rem ipv4

#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE

Archivo de configuracin /etc/shorewall/interfaces En ste se establecen cuales sern las interfaces para las tres diferentes zonas. Se establecen las interfaces que corresponden a la Internet, virtual tuny Red Local. A continuacin se cuenta con una interfaz ppp0 para acceder hacia Internet, una interfaz eth0 para acceder hacia la LANy una interfaz rem para acceder hacia la red virtual tun y en todas se solicita se calcule automticamente la direccin de transmisin (Broadcast): #ZONE INTERFACE BROADCAST net loc ppp0 eth0 detect detect OPTIONS GATEWAY

# OpenVPN ---rem tun0 detect

#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE

Archivo de configuracin /etc/shorewall/policy En este archivo se establece como se acceder desde una zona hacia otra y hacia la zona de Internet.

#SOURCE loc fw net net

DEST POLICY LOG ACCEPT ACCEPT

LIMIT:BURST

# OpenVpn ---rem fw net rem # -----------net all all all DROP info REJECT info fw rem rem net ACCEPT ACCEPT ACCEPT ACCEPT

#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE Lo anterior hace lo siguiente: 1. La zona de la red local puede acceder hacia la zona de Internet. 2. La zona virtual tun (rem) puede acceder hacia el cortafuegos, viceversa y tambin hacia la zona de Internet. 3. El cortafuegos mismo puede acceder hacia la zona de Internet. 4. Se impiden conexiones desde Internet hacia el resto de las zonas. 5. Se establece una poltica de rechazar conexiones para todo lo que se haya omitido.

Archivo de configuracin /etc/shorewall/tunnels En ste se establecen el tipo de conexin vpn. Puesto que es un servidor VPN se le indicar a al cortafuego que en el servidor vpn se utilizar el puerto que nosotros le indiquemos as como tambin la IP donde se encuentra este, en nuestro caso siguiendo el tipo de configuracin ser en la red 192.168.2.0/24: #TYPE # openvpnserver:1194 ZONE GATEWAY ZONE rem 192.168.2.0/24 GATEWAY

#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE

Archivo de configuracin /etc/shorewall/rules Todos los puertos estn cerrados de modo predefinido, as que se deber habilitar el puerto configurado para el tnel vpn en el cual fue especificado en la configuracin del servidor OpenVpn. Esto debe ser especificado con la accin [ACCEPT] en [rules]. ACCEPT La accin ACCEPT se especificar que se permiten conexiones para el puerto OpenVpn desde o hacia una(s) zona (s) un protocolo(s) y puerto(s) en particular. A continuacin se permiten conexiones desde Internet hacia el firewall y viceversa por el puerto UDP [1194]. Los nombres de los servicios se asignan de acuerdo a como estn listados en el archivo /etc/services. #ACTION SOURCE # # OpenVPn --ACCEPT ACCEPT net fw fw net udp udp 1194 1194 DEST PORT PROTO DEST

#LAST LINE -- ADD YOUR ENTRIES BEFORE THIS ONE -- DO NOT REMOVE

Configuracin de SELinux. A fin de permitir que OpenVPN funcione en un sistema con SELinux activo, es necesario activar la poltica setsebool openvpn_disable_trans de la siguiente manera. setsebool openvpn_disable_trans 1

Configuracin de Clientes VPN con OpenVPN. Clientes Windows Para la configuracin de clientes OpenVPN utilizaremos el programa OpenVPN GUI para Windows. OpenVPN GUI para Windowscorre normalmente en una ventana de consola, al ser conectado al servidor remoto/local VPN le da un aviso en el rea de notificacin (el rea de abajo a la derecha por el reloj en la barra ), desde all puede tener el control de iniciar/parar el Cliente OpenVPN, consultar los avisos (log), incluso cambiar su contrasea. Puede ser descargado en el sitio OpenVPN GUI for Windows [http://openvpn.se]. Preparativos y configuracin A continuacin deber copiar los siguientes archivos: ca.crt.

cliente1.crt. cliente1.csr. cliente1.key Estos fueron creados en el directorio /etc/openvpn/easy-rsa/2.0/keys y debern ser colocados en la mquina cliente dentro de C:Program FilesOpenVPNconfig o a su vez en C:|Archivos de Programa|OpenVPN|config Se crear un archivo de configuracin cliente para el OpenVPN dentro del directorio C:|Archivos de ProgramaOpenVPNconfigcon el nombre de cliente1-udp-1194.ovpn. Tendr la siguiente configuracin: client dev tun proto udp remote dominio-o-ip.del.servidor.vpn 1194 float resolv-retry infinite nobind persist-key persist-tun #------ SECCION DE LLAVES -------ca ca.crt cert cliente.crt key cliente.key ns-cert-type server #--------------------------------comp-lzo verb 3

Descripcin: client: Especifica el tipo de configuracin, en este caso tipo cliente OpenVPN. Port: Especifica el puerto que ser utilizado para que los clientes VPN puedan conectarse al servidor. Proto: tipo de protocolo que se emplear en a conexin a travs de VPN dev: Tipo de interfaz de conexin virtual que se utilizar el servidor openvpn. remote: Host remoto o direccin IP en el cliente, el cual especifica al servidor OpenVPN. El cliente OpenVPN puede tratar de conectar al servidor con host:porten el orden especificado de las

opciones de la opcin --remote. float: Este le dice a OpenVPN aceptar los paquetes autenticados de cualquier direccin, no solamente la direccin cul fue especificado en la opcin --remote. resolv-retry: Si la resolucin del hostname falla para -- remote, la resolucin antes de fallar hace una re-comprobacin de n segundos. nobind: No agrega bind a la direccin local y al puerto. ca: Especifica la ubicacin exacta del archivo de Autoridad Certificadora [.ca]. cert: Especifica la ubicacin del archivo [.crt] creado para el servidor. key: Especifica la ubicacin de la llave [.key] creada para el servidor OpenVPN. remote: Especifica el dominio o IP del servidor as como el puerto que escuchara las peticiones para servicio VPN. comp-lzo: Especifica los datos que recorren el tnel VPN ser compactados durante la trasferencia de estos paquetes. persist-key: Esta opcin soluciona el problema por llaves que persisten a travs de los reajustes SIGUSR1, as que no necesitan ser reledos. Persist-tun: Permite que no se cierre y re-abre los dispositivos TAP/TUN al correr los guiones up/down verb: Nivel de informacin (default=1). Cada nivel demuestra toda la Informacin de los niveles anteriores. Se recomienda el nivel 3 si usted desea un buen resumen de qu est sucediendo. 0 --No muestra una salida excepto errores fatales. 1 to 4 Rango de uso normal. 5 -Salida Ry Wcaracteres en la consola par los paquetes de lectura y escritura, maysculas es usada por paquetes TCP/UDP minsculas es usada para paquetes TUN/TAP. Una ves configurado el cliente VPN con Windows, deber ir al rea de notificacin (el rea de abajo a la derecha por el reloj en la barra de Windows) y dar un click derecho al icono del cliente OpenVPN, all aparecer un men en el cual podr elegir la opcinconectar [connect].

VPN en servidor Linux y clientes Windows/Linux con OpenVPN + Shorewall [Parte 2] Autor: William Lpez Jimnez Correo electrnico: william [punto] koalasoft [arroba] gmail [punto] com Sitio de Red: http://www.koalasoftmx.net Jabber ID: koalasoft@jabber.org Creative Commons Reconocimiento-NoComercial-CompartirIgual 2.1 2007 William Lpez Jimnez. Usted es libre de copiar, distribuir y comunicar pblicamente la obra y hacer obras derivadas bajo las condiciones siguientes: a) Debe reconocer y citar al autor original. b) No puede utilizar esta obra para fines comerciales. c) Si altera o transforma esta obra o genera una obra derivada, slo puede distribuir la obra generada bajo una licencia idntica a sta. Al reutilizar o distribuir la obra, tiene que dejar bien claro los trminos de la licencia de esta obra. Alguna de estas condiciones puede no aplicarse si se obtiene el permiso del titular de los derechos de autor. Los derechos derivados de usos legtimos u otras limitaciones no se ven afectados por lo anterior. Licencia completa en castellano. La informacin contenida en este documento y los derivados de ste se proporcionan tal cual son y los autores no asumirn responsabilidad alguna si el usuario o lector hace mal uso de stos.

Nota: Para una mejor comprensin se recomienda haber ledo la [Parte 1] de este manual. Continuacin ...

Men del cliente OpenVPN para efectuar la conexin al servidor VPN

Cuando intente conectarse al servidor VPN una vez que haya elegido la opcin [connect] aparecer una ventana de notificacin en el cual vera los procesos de verificacin e intento de conexin al servidor VPN, si todo sale bien, en el icono de notificacin del cliente OpenVPN le indicar la correcta conexin y le mostrar el nmero de IP virtual [tun] que se le fue asignado.

Mensaje de notificacin al conectarse al servidor VPN

Pruebas de Conexin Una ves efectuada la conexin al servidor, para asegurarse que estamos dentro del tnel VPN y tenemos conexin al servidor, podemos realizar una bsqueda de direccin IP [Ping], as como tambin verificar el nmero IP asignado por el servidor VPN al estar conectarnos en el tnel. Para esto utilizaremos el comando [cmd] para hacer llamado al MS-Dos de Windows a travs de la aplicacin [ejecutar]. Una ves estando en la consola en modo texto, utilice el comando [ipconfig] para ver que direccin IP se le fue asignado.

Verificacin de asignacin de direccin IP virtual [tun]

Verificacin de conexin de red a travs del tnel VPN Importante: Deber desactivar el cortafuego que trae como predeterminado Windows o cual quier otro que este utilizando.

Clientes Linux Para la configuracin de clientes Linux con OpenVPN utilizaremos el modo texto [terminal] y el arranque a travs de un bash. Preparativos y configuracin A continuacin deber copiar los siguientes archivos:

ca.crt

cliente1.crt cliente1.csr cliente1.key

Estos fueron creados en el directorio /etc/openvpn/easy-rsa/2.0/keys y debern ser colocados en la mquina cliente dentro del directorio OpenVPN. Supongamos que las llaves la tenemos en el directorio /tmp/llaves, debemos copiar estas en el siguiente directorio/etc/openvpn/keys, para esto hay que crearlo antes. mkdir /etc/openvpn/keys cp -R /tmp/llaves/* /etc/openvpn/keys/ cd /etc/openvpn/ A continuacin se crear un archivo de configuracin cliente para el OpenVPN dentro del directorio /etc/openvpn/ con el nombre de cliente1-udp-1194.ovpn. Tendr la siguiente configuracin: client dev tun proto udp remote dominio-o-ip.del.servidor.vpn 1194 float resolv-retry infinite nobind persist-key persist-tun #------ SECCION DE LLAVES -------ca ca.crt cert cliente.crt key cliente.key ns-cert-type server #--------------------------------comp-lzo verb 3 Descripcin: client : Especifica el tipo de configuracin, en este caso tipo cliente OpenVPN. Port : Especifica el puerto que ser utilizado para que los clientes VPN puedan conectarse al servidor. Proto: tipo de protocolo que se emplear en a conexin a travs de VPN dev : Tipo de interfaz de conexin virtual que se utilizar el servidor openvpn. remote : Host remoto o direccin IP en el cliente, el cual especifica al servidor OpenVPN. El cliente OpenVPN puede tratar de conectar al servidor con host:port en el orden especificado de las opciones de la opcin --remote. float : Este le dice a OpenVPN aceptar los paquetes autenticados de cualquier direccin, no solamente la direccin cul fue especificado en la opcin --remote. resolv-retry : Si la resolucin del hostname falla para -- remote, la resolucin antes de fallar hace una re-comprobacin de n segundos. nobind : No agrega bind a la direccin local y al puerto. ca : Especifica la ubicacin exacta del archivo de Autoridad Certificadora [.ca]. cert : Especifica la ubicacin del archivo [.crt] creado para el servidor. key : Especifica la ubicacin de la llave [.key] creada para el servidor OpenVPN. remote : Especifica el dominio o IP del servidor as como el puerto que escuchara las peticiones para servicio VPN. comp-lzo : Especifica los datos que recorren el tnel VPN ser compactados durante la trasferencia de estos paquetes.

persist-key : Esta opcin soluciona el problema por llaves que persisten a travs de los reajustes SIGUSR1, as que no necesitan ser reledos. Persist-tun : Permite que no se cierre y re-abre los dispositivos TAP/TUN al correr los guiones up/down verb : Nivel de informacin (default=1). Cada nivel demuestra toda la Informacin de los niveles anteriores. Se recomienda el nivel 3 si usted desea un buen resumen de qu est sucediendo. 0 -- No muestra una salida excepto errores fatales. 1 to 4 Rango de uso normal. 5 -- Salida R y W caracteres en la consola par los paquetes de lectura y escritura, maysculas es usada por paquetes TCP/UDP minsculas es usada para paquetes TUN/TAP Ahora necesitamos insertar el mdulo [tun] para controlar los interfaces /dev/net/tunX que se necesiten en le sistema para el servicio OpenVPN: Cargamos el mdulo: modprobe tun y habilitamos el IP forwarding: echo 1 > /proc/sys/net/ipv4/ip_forward Comprobamos que tenemos /dev/net/tun, si no existe lo creamos con: mknod /dev/net/tun c 10 200 Para la ejecucin del cliente OpenVPN puede utilizar el siguiente guin y guardarlo con el nombre de [iniciovpncliente], tendr el siguiente contenido: #!/bin/bash # #-- Variables -RUTACONFIG=/etc/openvpn/ NOMCONFIG=cliente1-udp-1194.conf # #-- Ejecucin de la configuracin para el servicio OpenVPN # /usr/bin/openvpn $RUTACONFIG./$NOMCONFIG # exit 0 Y damos los permiso de ejecucin correspondientes: chmod +x iniciovpncliente Si desea ejecutar el servicio VPN al inicio del sistema (arranque), puede colocar lo siguiente dentro del archivo /etc/rc.local #inicia la configuracin OpenVPN /donde/este/tu/archivo/iniciovpncliente Pruebas de Conexin Una ves efectuada la conexin al servidor VPN, para asegurarse que estamos dentro del tnel VPN y tenemos conexin al servidor, podemos realizar una bsqueda de direccin IP [Ping], as como tambin verificar el nmero IP asignado por el servidor VPN al estar conectarnos en el tnel. Para esto utilizaremos el necesitamos entrar a la terminal de comando, una ves estando en la consola en modo texto, utilice el comando [ifconfig] para ver que direccin IP se le fue asignado.

Verificacin de asignacin de direccin IP [tun] con ifconfig

Prueba de conexin con el comando [ping] hacia el servidor VPN

Comprobacin de conexin hacia el servidor VPN en interfaz grfica Si SELinux est activo en el sistema y se va a utilizar el componente de OpenVPN para NetworkManager(NetworkManager-openvpn) y se van a utilizar certificados almacenados en el directorio del usuario, se debe activar la poltica openvpn_enable_homedirs. setsebool -P openvpn_enable_homedirs 1

Anda mungkin juga menyukai