Monografias.com > Computación
Descargar Imprimir Comentar Ver trabajos relacionados

Configuración OpenVpn



  1. Road
    Warrior
  2. Configuración del lado Cliente en
    GNU/Linux
  3. Configuración del lado Cliente Windows
    7
  4. Red a
    Red

Conexión Segura con OpenVPN –
Monografias.com

Conexión Segura con
OpenVPN

Uno de los métodos más
seguros para conectarnos en forma remota a nuestros recursos de
Red desde cualquier lugar remoto con muy pocos
requerimientos.

Vamos a comenzar con una teoría de
las Redes Privadas Virtuales. El concepto mas genérico de
VPN, es la comunicación entre redes privadas a
través de redes publicas, estableciendo un túnel
virtual entre ambas partes (ClienteServidor), los cuales
negocian esquemas de encriptación y autentificación
que asegura la confidencialidad e integridad de los datos
transmitidos por medio de una red publica, ej.
Internet.

Llamamos Túnel Virtual al enlace
lógico punto a punto o canal de comunicación usado
entre el origen y el destino de la conexión, este enlace
es cifrado, ya que el paquete original de red es encapsulado
dentro de uno nuevo, aplicando esta política.De esta
manera solo se muestra el origen y destino del
paquete.

Quedando el paquete original cifrado dentro
del segundo.

Fasc11_p12-15_1.tiff

La imagen pertenece a un Esquema de
implementación de Infraestructura con Clientes conectados
vía VPN, utilizando un Servidor Debian Squeeze con
OpenVPN

Los tipos de conexiones se pueden realizar
mediante dispositivos físicos como Firewalls o Routers que
tengan embebido un cliente VPN o por software que va a ser
nuestra situación. Vamos a realizar y repasar las
múltiples opciones y conexiones que nos ofrece el Servidor
de OpenVPN, aportando Scripts para realizar conexiones puentes,
en caso de ser necesario. Este tipo de soluciones se utiliza para
conexiones seguras a determinado lugar, ya que en muchas
situaciones, en mi opinión cada vez mas, las empresas
utilizan muchos recursos de red, como son sistemas, bases de
datos, archivos, teléfonos internos registrándonos
a nuestra Central IP, en este ultimo caso es una solución
a los protocolos SIP que requieren de un rango de puertos
abiertos apuntando a la central, de esta manera ya tenemos una
justificada implementación de redes privadas virtuales
para conservar nuestra infraestructura, ya que este tipo de
solución nos brinda Autenticidad, Autorización,
Integridad y por ultimo Confidencialidad, además de ser
una solución estable siempre y cuando las condiciones de
la infraestructura estén en optimas
condiciones.

Los algoritmos utilizados son por ejemplo,
MessegeDigest (MD), Secure Hash Algorithm
(SHA), y dentro de los cifrados encontramos, Data
Encryption Standard (DES), Triple DES (3DES) y
AdvancedEncryption Standard (AES), que hacen de una VPN
realmente muy seguras.

Para las implementación de VPN`s
podemos tener en cuenta los distintos protocolos para llevar a
cabo un proyecto, los mismo vamos a definir y realizar un breve
descripción de los mismo.

IPSEC (Internet Protocol
Security
), Es denominado el protocolo estándar para
VPN`s, donde se adapto a IPV4, ya que en sus comienzos fue
pensado para el nuevo estándar de IPV6. Actualmente en
GNU/Linux se encuentran 2 proyectos entre otros para dicho
protocolo, los mismos son OpenSwan(www.openswan.org) y StrongsWan
(www.strongswan.org)

PPTP (Point to Point
TunnelingProtocol
), fue desarrollado por un conjunto de
empresas integrantes del PPTP Forum, las misma son Microsoft,
U.S. Robotics, AscendComunications, 3Com/Primary Access y ECI
Telematics. Este protocolo es muy usado, sobre todo en usuarios
Windows, ya que puede ser instalado de manera muy fácil en
los sistemas operativos de edición server de Microsoft,
como así también los clientes son soportados por
múltiples versiones de Windows. Aquí nos
encontramos con que NO es uno de los protocolos más
seguros, ya que se han encontrado diversas vulnerabilidades, que
intentan ser corregidas de L2TP e IPSEC. Es un detalle para tener
encueta a la hora de elegir un protocolo. En GNU/Linux podemos
encontrar el proyecto PopTop (www.poptop.org)

SSL/TLS (Secure Sockets Layer
/Transport Layer Security),
es un protocolo que
hincapié en la seguridad y la confiablidad del mismo.
Empezando a ser soportado por distintos dispositivos de
comunicación.

Esquema de Negociaciones entre Cliente y
Servidor.

  • 1- Negocian que algoritmos se van
    a usar para la comunicación. A continuación se
    detallan los usados comúnmente.

  • Criptografía de clave publica:
    RSA, Diffie-Hellman, DSA (Digital
    SignatureAlgorithm)
    o Fortalezza.

  • Cifrado Simetrico: RC2, RC4, IDEA
    (International Data EncryptionAlgorithm), DES
    (Data Encryption Standard), Triple DES o AES
    (Aadvanced Encryption Standard).

  • Hash: MD5 o de la familia
    SHA,

  • 2- Se realiza el intercambio de
    claves publicas y autenticación basada en certificados
    digitales.

  • 3- Se cifra el trafico
    basándose para esto en el cifrado
    simétrico.

Fasc11_p12-15_2.tiff

Esquema del formato del Paquete
Encapsulado por OpenVPN, para el trafico de Red. Con la ventaja
de administrar todas las conexiones por un solo
puerto.

Desde el año 2001 OpenVPN es
el proyecto mas usado en GNU/Linux y el que tiene mas desarrollo
con este protocolo.

OPENVPN

Tal como mencionamos anteriormente, OpenVPN
es un software basado en autenticación SSL/TLS, que
implementa conexiones de capa 2 o capa 3 del modelo OSI, es decir
el túnel realizado puede interactuar con protocolo IP, y
también los que no lo son, ejemplo Broadcast (NetBios).
Esto da cuenta de la gran flexibilidad del proyecto ya que no
todos los protocolos lo admiten.

En entre las cualidades mas destacadas
encontramos la capacidad de trabajar bajo red NAT, es decir,
nuestros servidores y clientes pueden estar trabajando con IP`s
privadas y funcionar perfectamente.

En cuanto a las conexiones soporta estar en
redes con Proxy sin inconvenientes, además de trabajar con
IP´s dinámicas asociándolas a un cliente DDNS
(DynDns, No-IP, etc), por lo tanto, si tenemos conexiones de
internet convencionales como ADSL o Cablemodem también
este software se adapta a estas circunstancias.

Por ultimo, podemos asegurar que los
clientes son MULTIPLATAFORMA, ya podemos trabajar con
diversos sistemas operativos, Linux, Solaris, OpenBSD, Windows
2000/Xp/Server , y Mac OS X.

En este artículo veremos 2 tipos de
conexiones que podemos realizar con OpenVPN, utilizando como
distribución GNU/Linux Debian Squeeze.

Road
Warrior

Es una configuración muy utilizada,
ya nos permite conectarnos a nuestro servidor OpenVPN
integrándonos a nuestra red LAN/Intranet, y pudiendo
acceder a todos los recursos necesarios. Este tipo de soluciones
son usadas para trabajadores remotos u oficinas pequeñas
que necesitan acceder a recursos, de esta manera se reducen
costos de infraestructura ya que lo único que
necesitaremos es tener instalado de forma local un cliente
OpenVPN y una conexión a Internet. De la misma manera como
ya comentamos anteriormente, a este usuario se le podría
habilitar un interno remoto con un cliente Softphone, como Zoiper
(www.zoiper.com), y registrarlo en nuestra Central IP, junto a
nuestros FileServer, Dominio, Impresoras de red, Sistemas, Bases
de Datos.

En nuestro primer paso, recordemos realizar
el Port Forward, hacia nuestro servidor OpenVPN, por defecto usa
el UDP 1194, pero mi recomendación es usar un puertos mas
altos, ej. 10194. Vamos a tomar como parámetros para que
la explicación sea mas visible lo siguiente;

IP VpnServer :
10.10.10.200

Puerta de Enlace:
10.10.10.1

Dirección Publica :
vpnserver.dyndns.org

  • 1- Ahora si, desde nuestro
    servidor ejecutamos la instalación de los paquetes
    necesarios.

  • 2- Generar llaves para el
    servidor. Primero Copiar la carpera "easy-rsa" al directorio
    de OpenVPN para luego modificar el archivo

"vars". Alli modificamos las líneas
64 a 68, con nuestro editor preferido (nano, vi, vim).

  • 3- A continuación,
    seguiremos con una serie de pasos a configurar del lado
    Servidor. ejecutar los siguientes comandos, para la
    creación del Certificado de Autoridad, Servidor de
    llaves, llaves de Usuarios, Generar Diffie Hellamn, Generar
    Static Key. ~#

  • 4- Configuración del
    server.conf, ubicado en /etc/openvpn/server.conf.

  • 5- Bridge o Puente Script, para
    que nos introduzca en la red.


Luego, en este paso vamos a darle permisos
de ejecución al Script en Bash, para luego agregarlo en el
inicio del sistema

Fasc11_p12-15_3.jpg

 

Reiniciando el servidor con "init 0"o
"reboot", ya deberíamos tener nuestro servidor andando,
luego realizamos un "ifconfig" y veremos las interfaces de red
que nos muestra el servidor.

Configuración del lado Cliente en
GNU/Linux

  • 1- Instalando OpenVPN en GNU/Linux
    Utilizando nuevamente Debian Squeeze, instalamos OpenVPN y
    luego el directorio key para los certificados.

  • 2- GNU/Linux, como primera medida
    debemos pasaron los certificados que generamos en el
    servidor, tanto los de usuarios como los de autoridad, este
    proceso vamos a realizar mediante la herramienta
    SCP.

Nos paramos en el servidor y realizamos el
traspaso

  • 3- Creando el archivo de
    configuración cliente en el servidor en
    /etc/openvpn/client.conf

Con estos 3 pasos deberíamos de
estar en condiciones de tener nuestro cliente conectado, solo
restaría reiniciar el cliente ("init 6"), o reiniciar el
servicio con ("/etc/init.d/openvpnrestart").

Consola del Cliente OpenVPN. Como
vemos la interfaz física "eth0", nos brinda una ip privada
de una Lan, y por otro lado la interfaz virtual "tap0", que tomo
IP desde nuestro servidor en el rango configurado
(10.10.10.10–10.10.10.20)

Aquí ya podríamos realizar un
PING a un dispositivo de red, o conectarnos a un recurso activo,
mediante los protocolos determinados.

Configuración del lado Cliente Windows
7

  • 1- Descargamos el programa OpenVPN
    Cliente para Windows (www.openvpn.net), ejecutamos el
    instalador y procedemos con la instalación dejando
    todo por defecto. Durante el proceso nos instala un driver de
    red para la interface virtual "tap".

  • 2- Ingresar a la carpeta del
    programa ubicada en "C:Archivos de
    ProgramaOpenVPNsimple-config" y copiar el archivo
    "client.ovpn" a "C:Archivos de
    ProgramaOpenVPNconfig".

  • 3- Mediante el programa "WinSCP",
    podemos extraer los certificados del Servidor, que se ubican
    en "/etc/openvpn/keys", los mismos son "usuario02.crt –
    usuario02.key – ca.crt – ta.key" e introducirlos dentro
    del mismo directorio que "cliente" (C:Archivos de
    ProgramaOpenVPNconfig).

  • 4- Continuamos con la
    edición del "client.ovpn", mediante un Bloc de Notas
    por ejemplo, y copiamos lo siguiente.

Fasc11_p12-15_5.tiff

Esquema de configuración de
OpenVPN para cliente Windows 7. Para otros sistemas operativos
Windows, el procedimiento de instalación es
igual.

  • 5- En este ultimo paso, debemos
    realizar un "click derecho" sobre el icono de OpenVPN y
    seleccionar "Connect"

Fasc11_p12-15_6.tiff

En este grafico observamos nuestro
Windows 7, conectado a una VPN, entregándonos el rango de
IP seleccionado y ya pudiendo acceder a nuestros recursos
compartidos.

Red a
Red

Red a Red es una configuración
utilizada mayormente para unir sucursales de empresas, ya que
funciona teniendo servidores actuando como clientes, autenticando
contra uno que actúa como Servidor Master. La
configuración se realiza de manera similar a Road Warrior
entre servidores, pero luego para los clientes es transparente,
es decir, Lan A puede compartir recursos con Lan B, y similar
para mas redes involucradas.

Para realizar esta configuración,
solo debemos crear una carpeta con el nombre "ccd" y agregar la
configuración cliente.

Fasc11_p12-15_6.tiff

Lo que indica el grafico, es
visualizar la comunicación, es decir que busque dentro de
"ccd" la configuración cliente, indicándola la ruta
para alcanzar la red.

 

 

Autor:

Gustavo Martin Moglie

Linktec Argentina

 

Nota al lector: es posible que esta página no contenga todos los componentes del trabajo original (pies de página, avanzadas formulas matemáticas, esquemas o tablas complejas, etc.). Recuerde que para ver el trabajo en su versión original completa, puede descargarlo desde el menú superior.

Todos los documentos disponibles en este sitio expresan los puntos de vista de sus respectivos autores y no de Monografias.com. El objetivo de Monografias.com es poner el conocimiento a disposición de toda su comunidad. Queda bajo la responsabilidad de cada lector el eventual uso que se le de a esta información. Asimismo, es obligatoria la cita del autor del contenido y de Monografias.com como fuentes de información.

Categorias
Newsletter