Documentos de Académico
Documentos de Profesional
Documentos de Cultura
A mis Padres
Jorge y Jacqueline, lo más grande en mi vida, gracias por darme
educación y entregarme todo su amor y apoyo…
PPTP es el protocolo utilizado para establecer las conexiones VPN, principalmente por
que este protocolo soporta conexiones de clientes Windows (este sistema operativo es el
utilizado por la mayoría de los usuarios a través del mundo entero) además de la ventaja de no
tener que instalar software adicional a estos, ya que estos tienen integrado el soporte para
conexiones PPTP.
El servidor PPTP es implementado bajo Linux (Fedora Core 3), debido a las grandes
ventajas que presenta como plataforma para servidores, como el hecho de su gran estabilidad,
además de ser un sistema gratuito, lo que implica no tener que pagar por la licencia de este.
Se describen las características de las Redes Privadas Virtuales, las ventajas que estas
prestan, se estudian las principales características de seguridad que las VPN ofrecen, y se
analizan tres protocolos que son en la actualidad los más utilizados para implementar
soluciones VPN.
ÍNDICE
Página
Introducción………………………………………………………………………… . 9
1. HISTORIA DEL ARTE EN LA SEGURIDAD INFORMÁTICA…………… 11
1.1 Seguridad en redes privadas y públicas…………………………………… 12
1.1.1 Niveles de seguridad informática………………………………… 13
1.1.2 Políticas de seguridad informática
en redes de computadoras…………………………..……………. 15
1.2 Soluciones de seguridad en la interconexión
de redes WAN y accesos remotos…………………………………….……. 17
4.1 IPSec…………..…………..…………..…………..…………..………… 66
4.1.3.3 ESP…………..…………..…………..…………………… 75
4.1.3.3.1 Formato de ESP…………..……………………… 77
4.1.3.3.2 Procesamiento al añadir protección ESP.……….. 78
4.1.3.4 IPCOMP………..…………..…………..……………….. 79
4.1.4 IKE……..…………..…………..…………..…………………… 81
4.2 PPTP…..…………..…………..…………..…………..………………….. 84
4.2.1 Algoritmos de cifrado y autenticación utilizados en PPTP…… 86
4.2.2 Formato del paquete PPTP…………..……………………….. 87
Conclusiones……………………………………………………………………………. 132
Bibliografía……………………………………………………………………………… 135
Glosario…………………………………………………………………………………. 137
ÍNDICE DE FIGURAS
Página
Figura 2.1 Diagrama lógico de una VPN……………………………………….. 24
Figura 2.2 Esquema de túnel en VPN……………………………………………. 25
Figura 2.3 VPN Host-Host………………………………………………………. 31
Figura 2.4 VPN Host-Red………………………………………………………. 32
Figura 2.5 VPN Red-Red………………………………………………………… 33
Figura 2.6 Topología en estrella…………………………………………………. 34
Figura 2.7 Topología en malla completa…………………………………………. 35
Figura 3.1 Esquema encriptación DES…………………………………………… 45
Figura 3.2 Detalle de una iteración en DES……………………………………… 46
Figura 3.3 Generación de claves públicas de Diffie-Hellman…………………… 52
Figura 3.4 Firma digital con una autoridad central……………………………… 56
Figura 3.5 Firmas digitales usando criptografía de clave pública………………. 57
Figura 3.6 Servidor VPN en un firewall………………………………………… 62
Figura 3.7 Servidor VPN en paralelo con un firewall………………………….. 63
Figura 3.8 Servidor VPN tras un firewall……………………………………… 64
Figura 4.1 Transporte adyacente……………………………………………….. 68
Figura 4.2 Modo transporte IPSec………………………………………………. 71
Figura 4.3 Modo túnel IPSec…………………………………………………….. 71
Figura 4.4 Ubicación de AH en modo transporte y modo túnel……………….. 72
Figura 4.5 Formato de cabecera AH……………………………………………. 73
Figura 4.6 Aplicación de ESP en modo transporte……………………………… 76
Figura 4.7 Aplicación de ESP en modo Túnel………………………………….. 76
Figura 4.8 Formato de cabecera/info. final de ESP…………………………….. 78
Figura 4.9 Formato de encapsulado PPTP…………………………………….. 87
Figura 4.10 Túnel voluntario……………………………………………………. 88
Figura 4.11 Túnel obligatorio……………………………………………………. 88
Figura 4.12 Paquete de control de conexión PPTP……………………………… 90
Figura 4.13 Estructura de los datos a través del túnel PPTP……………………. 91
Figura 4.14 Estructura del protocolo L2TP……………………………………… 96
Figura 4.15 Formato cabecera L2TP……………………………………………. 97
Figura 5.1 Esquema VPN a configurar………………………………………... 103
Figura 5.2 Esquema de configuración para la VPN……………………………. 103
Figura 5.3 Página de autenticación para Webmin……………………………… 116
Figura 5.4 Página principal de Webmin………………………………………… 117
Figura 5.5 Página para configurar servicios de red……………………………… 117
Figura 5.6 Página principal del servidor PPTP………………………………….. 118
Figura 5.7 Página “opciones del servidor PPTP”……………………………….. 119
Figura 5.8 Página de “opciones PPP”…………………………………………… 119
Figura 5.9 Cuentas PPP…………………………………………………………. 120
Figura 5.10 Página de administración de “conexiones activas”…………………… 120
Figura 5.11 Asistente para conexión nueva……………………………………….. 121
Figura 5.12 Elección de tipo de conexión………………………………………… 121
Figura 5.13 Forma de conectarse a la red…………………………………………. 122
Figura 5.14 Nombre de la conexión nueva………………………………………… 122
Figura 5.15 Selección para usar o no una conexión inicial……………………….. 123
Figura 5.16 Dirección IP o nombre de host del servidor VPN…………………….. 123
Figura 5.17 Fin del asistente de conexión………………………………………… 124
Figura 5.18 Conexiones de red…………………………………………………….. 124
Figura 5.19 Propiedades de la conexión…………………………………………… 125
Figura 5.20 Opciones de marcado de la conexión…………………………………. 125
Figura 5.21 Seguridad de la conexión……………………………………………… 126
Figura 5.22 Funciones de red……………………………………………………… 126
Figura 5.23 Ventana de conexión a la VPN………………………………………. 127
Figura 5.24 Ventana de nueva conexión…………………………………………… 128
Figura 5.25 Dirección IP o nombre del Servidor VPN…………………………….. 128
Figura 5.26 Nueva conexión creada……………………………………………… 129
Figura 5.27 Propiedades de conexión VPN………………………………………. 129
Figura 5.28 Ventana de conexión VPN…………………………………………… 130
ÍNDICE DE TABLAS
INTRODUCCIÓN
Hoy en día es cada vez más constante la necesidad de acceder a redes privadas o bien a
un equipo privado en forma remota asegurando que la información no sea “atacada” por
personas inescrupulosas (hackers) que nos roben o dañen nuestra información.
El presente informe trata sobre el concepto de VPN (Red Privada Virtual), el cual es una
solución cada vez más recurrente y la cual presenta grandes ventajas principalmente
relacionadas con la seguridad que estas ofrecen y los bajos costos económicos en relación a
otras alternativas de interconexión de redes WAN.
Durante los cinco capítulos con que cuenta este informe se explica lo que es una VPN,
sus características, ventajas y desventajas, analizando los mecanismos de seguridad que deben
estar presentes en toda comunicación a una red remota a través de un medio inseguro como
bien podría ser Internet.
El primer capítulo está referido a la seguridad que se debe tener en toda organización en
materia informática. El segundo capítulo define y describe el concepto de VPN en su totalidad.
Las características de seguridad que deben estar presentes en toda comunicación y algunos de
los mecanismos que se utilizan para satisfacer estas características y que son propias de una
VPN son estudiadas en el tercer capítulo.
Tres protocolos VPN son los analizados en el capítulo número cuatro, estos son: el
protocolo IPSec, PPTP y L2TP. Se describe la forma en cómo estos funcionan y cómo
trabajan sobre los datos que se transmiten. Se explican los mecanismos utilizados por estos
protocolos para proveer seguridad en la comunicación de datos.
Por último, en el quinto capítulo se explica como configurar un servidor VPN utilizando
PPTP en Linux. Se opta por este protocolo debido, a que a pesar de ser originado por
Microsoft, puede ser instalado en Linux y posee la cualidad de soportar clientes remotos con
sistema operativo Windows.
10
Objetivo General:
• Crear y configurar un servidor VPN para dar acceso remoto a los recursos de una
red privada en forma segura.
Objetivos específicos:
• Estudiar el concepto de VPN y sus características
• Analizar los mecanismos de seguridad que deben estar presentes en toda
comunicación de datos.
• Analizar la seguridad implicada en el uso de una VPN.
• Describir la configuración de un servidor VPN PPTP para permitir clientes
Windows.
Capítulo 1 Historia del Arte en la Seguridad Informática 11
Hoy en día son cada vez más los equipos conectados a Internet debido a una constante
necesidad de comunicación y/o de información que es posible obtener en esta gran red.
Sin embargo, producto de este gran incremento de usuarios que ha tenido la red Internet,
es cada vez más fácil obtener información sobre vulnerabilidades de un equipo o sistema
operativo, pudiéndose atacar con facilidad y total impunidad equipos situados en cualquier
organización.
Hoy en día las organizaciones se ven forzadas a doblegar sus medidas de seguridad en el
ámbito informático, y a pesar de ello no saben cuando o como pueden estar expuestas. Es por
ello que cada sistema de seguridad debe estar implementado, de tal forma que intente1 cumplir
de manera efectiva con su objetivo en la protección de los datos informáticos, tanto en la
creación o implantación de software de seguridad (antivirus actualizados, firewall en sus
redes, u otros), como además en la implantación de un conjunto de políticas de seguridad
dentro de la empresa.
Sin embargo, existen también otros peligros para la información, que son de carácter
interno (a una empresa u otro ente privado), como errores humanos, la falta de una política de
seguridad, inexistencia de copias de seguridad de datos o tener passwords (claves)
compartidas.
Si se habla de seguridad informática hay que referirse a distintos niveles sobre la que
esta actúa o sobre la que está definida. Los más importantes y que deben ser aplicados en toda
empresa u organización son:
Seguridad física
Es la relacionada directamente con la seguridad y protección física de los datos, es decir,
la protección del lugar de almacenamiento de ellos. Se puede distinguir entre:
• Pasiva: protege de eventos tales como variaciones ambientales de temperatura,
humedad, caídas en el suministro eléctrico, catástrofes producidas por la naturaleza,
entre otras.
• Activa: como ataques humanos tales como robos, accesos no autorizados, etc.
Las políticas de seguridad son las reglas y procedimientos que regulan la forma en que
una organización previene, protege y maneja los riesgos de daño sobre:
• Los computadores de sus sistemas y los elementos físicos asociados con éstos
(edificación, impresoras, discos, cables, dispositivos de interconexión, etc.).
• El software y la información almacenada en tales sistemas.
• Los usuarios del sistema.
Una política de seguridad esta compuesta por distintos elementos que deben ser
aplicados a la organización en cuanto a las medidas de seguridad se refiere. Entre los
componentes de una política de seguridad están:
• Política de privacidad.
• Política de acceso.
• Política de autenticación.
• Política de contabilidad.
• Política de mantenimiento para la red.
• Política de reporte de incidentes.
• Política de divulgación de información.
Las políticas establecidas dentro de una empresa deben ser obligatorias y pueden o
deben ser tratadas como leyes de la propia organización. Es importante que la organización
establezca medidas de “castigo” para aquellas personas que no cumplan con las políticas de
seguridad establecidas, ya sea amonestaciones monetarias, suspensiones de labores o incluso
el despido del empleado.
Sin embargo, supervisar a todo el personal de una empresa no es una tarea fácil, la
solución es que todos ellos aprendan a autogestionarse y para ello necesitan las instrucciones
adecuadas para poder hacerlo bien. Así, la herramienta más importante para el manejo de la
conducta individual en el área de la seguridad informática lo constituye indudablemente el
documento de políticas de seguridad informática.
Capítulo 1 Historia del Arte en la Seguridad Informática 17
Para poder elaborar una buena política de seguridad es importante asegurar que esta
cumpla con las siguientes características:
• Se pueda implementar y hacer cumplir.
• Sea concisa y fácil de entender para todos los empleados de la organización.
• Compense la protección con la productividad.
Características importantes que hacen que una política de seguridad sea buena son:
• Su constante actualización.
• El hacerla pública y respaldada por los usuarios en la vida práctica.
Pero recientemente, con el auge que ha tenido Internet, por el cada vez menor costo que
la gente tiene que pagar para acceder a esta gran red y con el significado que esta ha adquirido
como el principal medio mundial de comunicación es que Internet se presenta actualmente
como una de las soluciones más adecuadas para empresas medianas, en las interconexiones de
sus LAN (o para los accesos remotos a sus recursos por parte de sus empleados, o
simplemente para que una persona tenga acceso al computador de su hogar desde cualquier
parte del mundo) tanto del punto de vista tecnológico como económico.
Capítulo 1 Historia del Arte en la Seguridad Informática 19
Sin embargo, como Internet tiene el gran problema de que los datos son transmitidos en
texto y pueden ser interceptados por terceros, es necesario implementar una solución que
proteja los datos transmitidos a través de la red, es decir, el proporcionar recursos por Internet
significa que dichos recursos pueden estar disponibles para cualquier persona conectada a esta
red y no sólo para los usuarios que están dirigidos.
Si se da este problema de que los datos estén comprometidos, la empresa se puede ver
afectada por la revelación no autorizada de secretos comerciales, de información registrada y
de la propiedad industrial, transformándose lo anterior en pérdidas cuantiosas para la empresa
afectada.
Para dar una solución a este gran problema que es la inseguridad en el transporte de
datos a través de Internet es que ha surgido el término de Red Privada Virtual (VPN)
definido comúnmente como una conexión privada que se realiza sobre una red pública, en este
caso Internet. Con una VPN se puede establecer una comunicación segura entre redes
privadas, utilizando un canal inseguro como Internet.
Si comparamos las VPN con la utilización de líneas dedicadas, estas últimas son útiles
para algunas aplicaciones. Por ejemplo “si se tiene una base de datos esencial para el
funcionamiento de un negocio y que necesita mucho rendimiento, una línea dedicada podría
ser una buena elección porque ofrece un ancho de banda garantizado [KOL2003]”, pudiéndose
alquilar líneas dedicadas según el rendimiento que se necesite.
Capítulo 1 Historia del Arte en la Seguridad Informática 20
El hecho que las VPN se construyan sobre canales públicos ya creados ha hecho que las
empresas que las implementan ahorren más del 50% del costo que antes tenían que pagar en
llamadas de larga distancia y en equipos físicos de acceso remoto o en alquiler de enlaces
privados o dedicados.
Las soluciones basadas en VPN sobre IP, han emergido con fuerza principalmente en
los usuarios individuales o pequeñas oficinas sucursales, ya que estas (las VPN) prestan los
servicios que ellos necesitan de interconexión de sus redes o accesos remotos a sus recursos
informáticos, además de proveer de mecanismos de seguridad en la transmisión, transporte y
recepción de los datos.
Pero utilizar una VPN es una decisión que debe ser considerada si realmente esta fuese
la solución que necesita la empresa u organización tanto del punto de vista económico, como
de seguridad y rapidez de transmisión de los datos, en comparación a otras alternativas.
Capítulo 2 Tecnologías Actuales para la Implementación de Sistemas de Seguridad en la 21
Interconexión de Redes: Uso de VPN
Por mucho tiempo antes de que existieran las redes privadas virtuales (VPN), la única
opción para la interconexión de redes privadas a distancia era la utilización de tecnologías de
enlaces dedicados punto a punto o el uso de circuitos Frame Relay (protocolo de switcheo de
paquetes para conectar dispositivos a través de una red WAN), entre otros.
Sin embargo, el auge que ha tenido el acceso a Internet y por ser este una posibilidad
bastante económica en comparación a la utilización de líneas dedicadas que implican un alto
costo en términos de dinero y poca flexibilidad, es que el uso de las VPN ha aumentado
considerablemente en su tarea de interconectar redes privadas y proveer accesos remotos.
Las redes privadas virtuales cada vez ganan más adeptos ya que funcionan sobre una
infraestructura de red pública o compartida y con la misma seguridad y atributos que las
líneas privadas.
Otra empresa que también cuenta con el uso de las VPN es Quimatic, empresa
proveedoras de materias primas importadas para los rubros alimenticio, de empaque e
industrial. "Usualmente desde las 08:00 AM trabajo desde mi casa efectuando llamadas
telefónicas a Pakistán, Suiza, Holanda o Dinamarca, y para tomar decisiones o consultar
estadísticas accedo directamente a la red empresarial", cuenta Carlos Alberto Figueroa,
gerente general de Quimatic.1
"La VPN es la próxima etapa en aplicaciones de la banda ancha que debería penetrar en
el país, pues sus beneficios son particularmente evidentes para forestales, pesqueras,
industrias, banca y finanzas y todas aquellas empresas, incluidas Pymes, que operen con
sucursales", sostuvo Sebastián Muñoz, gerente general de Ebosa.2 "Tal como en el caso de
Duomo, mejora la calidad de la información, la rapidez con que se accede a ella, la
transparencia en la obtención de datos y permite que el personal se sienta más seguro con la
información que maneja, mejorando la gestión empresarial", concluye el ejecutivo de Ebosa.
_________________________________________
Implementar una VPN trae consigo tanto beneficios como desventajas dependiendo de la
utilización que se le quiera dar. Además se puede implementar VPN para distintos casos, en lo
que se definirá y explicará como topologías de VPN.
VPN significa Red Privada Virtual (Virtual Private Network). El concepto de Red no
amerita definición a diferencia de los otros dos términos.
Por lo tanto, “una VPN es una red (infraestructura a través de la cual las computadoras
se comunican) privada (utiliza criptografía, mecanismo de cifrado de datos, para hacer que la
información sea confidencial) virtual (no necesita hardware independiente) [KOL2003]”.
Una VPN se usa para comunicar en forma "privada" máquinas o redes utilizando una red
pública en la cual no se podría garantizar privacidad, autenticidad, u otro elemento de
seguridad, tal como si fuera una comunicación punto a punto. Esta red pública o compartida
comúnmente es Internet.
En una VPN existen diferentes elementos a destacar como son el concepto de tunelado,
cifrado y autenticación.
En la vida cotidiana podemos darnos cuenta de la gran importancia que tiene el concepto
de privacidad o confidencialidad. Sólo por dar algunos ejemplos, la privacidad está presente
en el simple hecho de no querer que un doctor revele nuestros secretos médicos, o
simplemente en mantener nuestro verdadero nombre en secreto al chatear en Internet.
Capítulo 2 Tecnologías Actuales para la Implementación de Sistemas de Seguridad en la 25
Interconexión de Redes: Uso de VPN
Para la transmisión de los datos a través de la red pública, una VPN usa una técnica
llamada entunelamiento (tunneling), es decir, crea túneles, circuitos virtuales que aíslan los
flujos de datos determinados de cualquier otro tráfico que discurra por el mismo medio de
transmisión (Figura 2.2). De esta forma se logra que sobre un medio completamente público
como Internet se logre la misma seguridad y características de operación que existen en los
circuitos de comunicación de carácter privado.
Los paquetes de datos son enrutados por la red pública, ya sea Internet o alguna otra red
comercial, en un túnel privado que simula una conexión punto a punto. Este recurso hace que
por la misma red puedan crearse muchos enlaces por diferentes túneles virtuales a través de la
misma infraestructura.
Capítulo 2 Tecnologías Actuales para la Implementación de Sistemas de Seguridad en la 26
Interconexión de Redes: Uso de VPN
El cifrado de los datos a través de la criptografía es otro elemento presente en una VPN,
gracias a ella los datos se cifran en la transmisión y se descifran en la recepción, haciendo
posible el hecho de que si alguien intercepta los datos, le sea enormemente difícil, por no decir
imposible, el poder leerlos.
La autenticación por su parte, permite asegurar que los mensajes proceden de usuarios
válidos, a los cuales se les garantiza el acceso, mientras que a usuarios no válidos, se les
deniega.
La implementación de una VPN puede ser tanto de Hardware, Software como también
sistemas basados en Cortafuegos.
con hardware dedicado para la encriptación u a otras tareas que están presentes en una
conexión VPN.
Como ya se ha dicho, el objetivo final de una VPN es brindar a un usuario remoto, una
conexión, de tal forma que este estuviera disfrutando directamente de su red privada y de los
beneficios y servicios que dentro de ella dispone, aunque esta conexión se realice sobre una
infraestructura pública. Un cliente VPN adquiere totalmente la condición de miembro de la red
a la cual está accediendo. Esta es la principal característica de una VPN.
Las VPN se caracterizan también por su flexibilidad. Pueden ser conexiones punto-punto
o punto-multipunto. Estos serán explicados como topologías de VPN.
Pero, a la hora de querer implementar una VPN, ¿cuáles son los reales beneficios o
ventajas que se tiene en comparación a otras alternativas de acceso remotos o interconexión de
redes privadas?. A continuación se mencionarán y describirán las principales ventajas que se
tiene al implementar una Red Privada Virtual:
Seguridad
Las VPN son capaces de asegurar variados flujos de comunicación a través de un único
mecanismo, pudiéndose asegurar el tráfico Web, el correo electrónico, transferencia de
archivos, o cualquier otro que utilice el protocolo TCP/IP para el transporte. La
implementación de una VPN ofrece variados elementos de seguridad para las redes privadas
en la cual se implementa y a la que se quiere acceder. Una VPN mitiga los riesgos externos tal
como el sniffing (espionaje del tráfico de una red), pérdida de confidencialidad, el
Capítulo 2 Tecnologías Actuales para la Implementación de Sistemas de Seguridad en la 28
Interconexión de Redes: Uso de VPN
Bajo costo
El hecho de que las VPN utilicen un canal de red ya creado o existente, implica ya un
importante ahorro de dinero, esto es lo que se conoce con el nombre de transporte subyacente.
Como en la mayoría de los casos la tecnología VPN utiliza el protocolo TCP/IP, que mantiene
funcionando la red Internet, que es una red de alcance mundial, se elimina la necesidad de
contratar enlaces o líneas dedicadas para conectar redes privadas. El costo de una línea
dedicada, ya sea ATM o Frame Relay, es muy elevado desde su implementación hasta lo que
es arriendo y mantenciones de equipos, a diferencia de los costos cada vez menores que se
tienen por una conexión a Internet. Además con una VPN no es necesario tener que invertir en
otras líneas dedicadas en caso de futuras migraciones o esfuerzos de expansión de la empresa,
como creación de nuevas sucursales, si se quiere dar un ejemplo.
Solución de problemas
Una persona que implemente o administre una VPN debe conocer muy bien los
protocolos presentes en Internet. Los problemas que se pueden originar en una conexión
VPN, están principalmente ligados a que los datos pasan por una puerta de enlace VPN, en el
cual los datos entran por ella sin cifrar y salen cifrados, y por tanto la localización y solución
de problemas tales como fallos de autenticación, falta de sincronización en las claves, o carga
o sobrecarga de la puerta de enlace, es una tarea bastante complicada.
Capítulo 2 Tecnologías Actuales para la Implementación de Sistemas de Seguridad en la 30
Interconexión de Redes: Uso de VPN
Disponibilidad de Internet
Como las VPN principalmente ocupan Internet para las conexiones, se puede deducir el
gran riesgo que presenta una posible falla de la conexión a Internet. Este problema no sólo es
responsabilidad de una caída en el ISP (Proveedor de Servicios de Internet), sino también
producto de caídas en redes intermedias, como fallas a algún nodo o en un enlace de una red a
otra. Este problema difiere en la utilización de líneas dedicadas, ya que en estas prácticamente
la cantidad o probables puntos de fallo es mucho menos que en una VPN. Además no es una
garantía contar con acceso a Internet en cualquier parte del mundo y todo el tiempo.
Ancho de banda
No contar con un ancho de banda importante para la conexión a Internet es algo que
puede impedir que la VPN como tecnología de interconexión para redes privadas, sea una
solución correcta para una determinada organización. Además, la característica que tienen las
VPN, de realizar la tarea de encapsular los paquetes de datos, e incluso en algunos casos, la
encriptación de ellos, produce una mayor relentización de la mayoría de las conexiones. Si se
desea un mayor tráfico de datos y a una mayor velocidad, una línea dedicada es una mejor
solución.
A parte de las anteriores desventajas, las redes VPN dependen de un área externa a la
organización, en concreto de Internet, por lo que depende de factores externos al control de la
organización. Las redes VPN requieren un conocimiento profundo de la seguridad en las redes
públicas, lo que implica que la empresa que la implemente debe tomar las precauciones a lo
largo de todo su desarrollo.
Capítulo 2 Tecnologías Actuales para la Implementación de Sistemas de Seguridad en la 31
Interconexión de Redes: Uso de VPN
Una VPN puede ser implementada siguiendo tres topologías distintas como son: VPN
Host-Host, VPN Host-Red y VPN Red-Red. Cada una de ellas para satisfacer distintas
necesidades de los usuarios, ya sea la necesidad de conectar dos pc’s a través de Internet en
forma segura, el proveer de acceso remoto de un empleado a la intranet de su empresa, o la
necesidad de estas últimas de interconectar sus sucursales, por dar algunos ejemplos.
2.1.3.1 HOST-HOST
Esta situación puede darse al tener los host conectados a través de un hubs,
conmutadores, routers y nubes WAN. En el caso de que los hosts estén conectados
directamente mediante un cable ethernet, el único riesgo que se estaría mitigando con una
VPN serían las escuchas sobre el tendido, aunque ese efecto es poco probable encontrarlo.
Capítulo 2 Tecnologías Actuales para la Implementación de Sistemas de Seguridad en la 32
Interconexión de Redes: Uso de VPN
Una comunicación entre dos hosts a través Internet, ya sea por una línea dedicada o
mediante una conexión de marcado telefónico, no es segura y podría ser el blanco de hackers u
otros personajes que cometen delitos informáticos a través de la red. Al implementar una VPN
host-host, todas las comunicaciones entre ambas máquinas quedan protegidas por el transporte
VPN autenticado y cifrado.
Un ejemplo de dónde podría ser apropiada una VPN host-host es cuando existen dos
servidores, cada uno protegido por un firewall, en distintas redes LAN y en la cual estos no
necesiten tener una conexión permanente o continua por largos periodos de tiempo. Un caso
común es el de servidores responsables de la contabilidad financiera de un banco, estos no
necesitan tener una conexión durante todo el día, es mas, prácticamente es improbable que
dichos servidores se comuniquen para sincronizar sus datos. Por lo general este tipo de
implementación se hace solamente utilizando software y no hardware dedicado para la VPN.
2.1.3.2 HOST-RED
En este caso se crea un túnel entre un host a una red LAN. En esta configuración, cada
host se conecta independientemente con una LAN mediante una puerta de enlace VPN. Se
autentica cada host, y los túneles VPN se inician para cada uno de ellos. Este diseño se
muestra en la figura 2.4
Por dar un ejemplo de esta topología, es común el acceso remoto de un empleado, que
por motivos de trabajo se encuentre fuera de la ciudad o incluso del país y que quiera acceder
a la base de datos de su empresa, o al correo interno, o a cualquier otro recurso de su red
corporativa (a este tipo de usuarios se les conoce con el término de Road Warrior). Este sólo
tiene que conectarse a Internet mediante cualquier tipo de conexión, ya sea de marcación
telefónica, una conexión LAN o un enlace inalámbrico y ejecutar el software cliente VPN que
debe estar en su equipo, ya sea este un portátil o un computador de escritorio.Un usuario se
puede conectar con la intranet de su empresa a través de la puerta de enlace VPN, presente en
la red LAN.
En la actualidad es cada vez más común utilizar esta topología VPN para los empleados
que trabajan desde su casa en la cual la VPN hace que el tráfico sea privado e ilegible hasta
que llega a la puerta de enlace VPN de la empresa.
2.1.3.3 RED-RED
La interconexión se produce a nivel de dos o más redes LAN, de forma que las
máquinas de una red pueden comunicarse mediante VPN con las máquinas de la otra red
participante. Un ejemplo de ello es la interconexión de sucursales o sedes geográficamente
distantes y pertenecientes a una misma empresa. Esta topología se muestra en la figura 2.5.
Una ventaja importante de esta configuración es que las LAN remotas de la VPN son
transparentes para el usuario final. Inclusive, las puertas de enlace VPN tienen la apariencia de
routers para los usuarios.
Se puede encontrar esta topología de VPN red-red para conectar la intranets de una
empresa a lo largo de sus sucursales. Los datos que se transfieren entre las intranets son
confidenciales durante la transmisión.
Como puede darse el caso de que una empresa deba interconectar más de dos sucursales,
es decir, conectar dos o más redes LAN, se puede mencionar principalmente dentro de esta
topología de VPN Red-Red, a la topología de malla completa y topología en estrella.
La gran ventaja de esta topología es que agregar nuevos sitios es sencilla, al producirse
los cambios de configuración de la VPN sólo en la máquina que actúa como hub VPN.
La solución a estos inconvenientes es agregar hubs para distribuir la carga y con ello
aumentar la tolerancia a fallos.
La principal ventaja de ella es que los sitios no dependen de un hub VPN central,
lográndose con ello que la falla de conectividad VPN sólo se pierda en la red afectada y no en
toda la malla. Además el rendimiento general de la red no esta limitada al uso de un solo
sistema VPN. Otra ventaja es que sitios geográficamente cercanos sí pueden comunicarse
directamente.
Otro aspecto que se debe tener en cuenta en materia de seguridad para una empresa y a la
hora de implementar una VPN en ella, es el papel que juegan los firewall y la interacción que
deben tener con el servidor VPN. Esto, será analizado al final de este capítulo.
3.1.1 AUTENTICACIÓN
El concepto de autenticación está presente diariamente en nuestras vidas, un ejemplo de
este concepto es el hecho de que un cajero de un banco nos solicite nuestro carné de identidad
para verificar si realmente somos la persona que decimos ser. Este concepto también debe ser
aplicado en materia de seguridad en la comunicación de datos.
En una VPN es importante que exista tanto autenticación de datos como autenticación
de usuarios. La primera, asegura que el mensaje ha sido enviado completamente y que no ha
sido alterado de ninguna forma. Le autenticación de usuarios es el proceso que permite que el
usuario tenga acceso a la red.
A modo de ejemplo, para acceder a la red, a través de un servidor VPN, un usuario debe
introducir un nombre de usuario y una contraseña válida. Dado que las contraseñas se vinculan
a las cuentas de usuario, un sistema de autenticación de contraseñas constituye la primera línea
de defensa frente a usuarios no autorizados.
3.1.1.1 CONTRASEÑAS
Esta es la forma de autenticación más utilizada por los usuarios en la actualidad, debido
a la sencillez, economía y conveniencia de su instalación e implementación. Sin embargo, las
contraseñas son un método pobre para garantizar la seguridad en el acceso a una red.
“ Las fallas de la seguridad de las contraseñas son muy peligrosas debido a que una sola
computadora puede tener cientos o miles de cuentas protegidas con contraseñas [BRO2001]”,
además, basta con que una de las partes (servidor o usuario) no mantenga la contraseña en
secreto para que toda la seguridad del modelo se pierda; por ejemplo, si el usuario comparte su
clave con un tercero, o si ese tercero consigue leerla y rompe su cifrado, automáticamente esa
persona puede autenticarse fácilmente tomando una identidad de usuario que no le
corresponde.
S/Key aplica iterativamente una función hash1 (algoritmo MD4). Este algoritmo tiene las
versiones SHA-1 y MD4/5. Principalmente lo que hace S/Key (descrito en el RFC-1760) es
generar, a través de un proceso criptográfico, una secuencia fija de 128 bits en MD4 y 160 bits
en SHA-1. El resultado del algoritmo es usado para crear un password.
_____________________________
1. Las funciones hash MD5 y SHA-1 serán explicadas durante este capítulo.
Capítulo 3 Seguridad en las VPN 40
A diferencia de PAP, CHAP utiliza una metodología más segura (MD5) para enviar
información a través de la Red. En CHAP, el proceso de autenticación puede producirse en
cualquier momento del enlace PPP, siendo este controlado tanto en frecuencia y duración por
el servidor de autenticación. En PAP la autenticación sólo se realiza una vez.
Capítulo 3 Seguridad en las VPN 41
3.1.1.4 RADIUS
Remote Access Dial in User Service (Servicio de Marcación para Autenticación de
Usuarios Remotos) “es un sistema de seguridad distribuida que garantiza el acceso remoto y
servicios de redes frente al acceso no autorizado, al emplear el protocolo UDP[BRO2001]”.
Hacer que la información que se transmite sea accesible sólo por las personas
autorizadas, y no puedan ser leídas, aunque sean interceptadas durante la transmisión a través
de la red Internet u otra red compartida, en el caso de las conexiones VPN, es una necesidad
indispensable para la seguridad en las comunicaciones.
En las VPN el tráfico de los datos es transmitido a través de un túnel cifrado, logrando
con ello la privacidad o confidencialidad de los datos. Este cifrado, hecho mediante procesos
criptográficos, se realiza al momento de la transmisión de los datos y una vez que llegan al
receptor, se descifran.
3.1.2.1 CRIPTOGRAFÍA
La criptografía proviene del griego y significa “escritura secreta”. El propósito de la
criptografía es poder cifrar (o encriptar) los datos de tal forma que sólo las personas
autorizadas puedan leerlos.
“El cifrado de los datos es una transformación caracter por caracter o bits por bits, sin
importar la estructura lingüística del mensaje [TAN2003]”
La cantidad de claves o llaves posibles que tiene cada algoritmo depende del número de
bits de la llave y el cual viene dado por la formula 2n, donde n es el número de bits. Lo
anterior, haciendo referencia a que la gran fortaleza del cifrado depende de la longitud de la
llave. Un gran número de posibles claves, dificulta la posibilidad de descubrir la clave
correcta, al existir una gran cantidad de combinaciones posibles.
En la tabla 3.1 se muestran algunos de los algoritmos de clave simétrica más comunes,
siendo DES, TDES y Rijndael los más utilizados y que serán analizados en los siguientes
puntos.
Capítulo 3 Seguridad en las VPN 44
DES encripta un texto plano en bloques de 64 bits, produciendo 64 bits de texto cifrado.
Actualmente se usan 56 bits de los 64 para la encriptación y los últimos bits de cada grupo de
8 bits se utilizan como bits de paridad y se usan para detección de errores en el proceso.
El algoritmo, que utiliza una clave de 56 bits, tiene 19 etapas diferentes. La primera
etapa es una transposición o permutación, independiente de la clave, del texto llano de 64 bits.
La última etapa es el inverso exacto del proceso de transposición. La penúltima etapa
intercambia los 32 bits de la izquierda y los 32 de la derecha. Las 16 etapas restantes
funcionan de la misma forma, pero se parametrizan mediante funciones de la clave. Este
proceso se muestra en la figura 3.1.
Capítulo 3 Seguridad en las VPN 45
56
En un sistema DES, la clave efectiva es de 56 bits, siendo posible tener un total de 2
claves, unas 72.000 billones de claves, lo que hace que sea muy poco probable su ruptura si no
se dispone de suerte y de una gran potencia de cálculo. Sin embargo, DES se pudo romper en
Enero de 1999 con un poder de computo que efectuaba cerca de 250 mil millones de ensayos
en un segundo. Debido a lo anterior, actualmente DES ya no es estándar, y se hace inseguro
para propósitos de alta seguridad.
Capítulo 3 Seguridad en las VPN 47
TRIPLE DES
TDES o “triple DES es un conjunto de algoritmos para incrementar la fuerza del DES
normal [BRO2001]”.
Existen distintas versiones o modos para TDES, entre ellas están: DES-EEE3, el cual
aplica el algoritmo DES tres veces, cada una con una clave de cifrado diferente; DES-EDE3,
es el algoritmo DES el cual utiliza tres claves de cifrado distinta pero el proceso de cifrado
consiste en cifrar-descifrar-cifrar; DES-EEE2, similar a DES-EEE3 pero en la cual el primer y
el tercer proceso de cifrado utilizan la misma clave; DES-EDE2, similar a DES-EDE3 pero la
primera y la tercera repetición utilizan la misma clave.
Existen otros modos de este proceso, pero en materia de seguridad, la mayor solidez en
el uso del algoritmo DES radica en la utilización de tres claves distintas.
Capítulo 3 Seguridad en las VPN 48
Tras 15 candidatos aceptados, en 1998 quedaron como finalistas 5 propuestas con base a
la seguridad, eficiencia, simplicidad, flexibilidad y requerimientos de memoria (necesarios
para los sistemas integrados), estos son, con sus respectivos puntajes finales:
1. Rijndael (86 votos).
2. Serpent (59 votos).
3. Twofish (31 votos).
4. RC6 (23 votos)
5. MARS (13 votos)
Rijndael (nombre que deriva de los apellidos de sus autores, Vincent Rijmen y Joan
Daemen, dos criptográficos belgas) soporta longitudes de clave y tamaños de bloque de 128 a
256 bits en pasos de 32 bits. Las longitudes de claves y de bloques pueden elegirse de manera
independiente. Sin embargo, AES especifica que el tamaño de bloque debe ser de 128 bits y la
longitud de clave debe ser de 128, 192 o 256 bits.
Capítulo 3 Seguridad en las VPN 49
La criptografía asimétrica o de llaves públicas es aquella que utiliza dos claves diferentes
para cada usuario, una para el que cifra, llamada clave pública y otra para descifrar, llamada
clave privada.
DA ( EA (P) ) = P
Aquí se tiene un texto plano P que es cifrado mediante una función matemática con la clave
pública EA y que para descifrarlo se utiliza la clave privada DA, obteniendo el texto original.
Capítulo 3 Seguridad en las VPN 51
DIFFIE-HELLMAN
Este algoritmo de encriptación nace en 1976, y fue propuesto por dos investigadores de
la Universidad de Stanford, Whitfield Diffie y Martin Hellman y publicado como artículo en
“Nuevas directrices en Criptografía”.
La importancia de este algoritmo radica en que es el punto de partida para los sistemas
asimétricos. Sin embargo, en la práctica este algoritmo no es usado para encriptar datos como
podría pensarse, sino que sólo es válido para el intercambio seguro de secretos compartidos
(generalmente se emplea junto con algoritmos de cifrado simétrico, como método para acordar
una clave secreta), y con esta funcionalidad es muy usado en los diferentes sistemas seguros
implementados en Internet, como SSL (Secure Socket Layer) y VPN (Virtual Private
Network).
a
• Potencia discreta: Y = X mod q
1. Dos partes quieren iniciar un cifrado de datos, y por lo tanto desean tener un secreto
compartido (llave simétrica). Las partes son A y B.
2. Se busca un número grande y primo llamado q.
3. Se obtiene un número p (p<q), raíz primitiva de q, es decir, debe cumplir que pmodq,
p2modq, p3modq,...pq-1modq son números diferentes.
4. p y q son claves públicas.
5. Para generar la clave simétrica compartida entre los usuarios A y B, ambos parten de
un generador de números pseudo-aleatorios, que suministra un número de este tipo
diferente a cada uno, XA y XB para A y B respectivamente. XA y XB son menores que
q. Estos números son las claves privadas de A y B.
Capítulo 3 Seguridad en las VPN 52
8. A y B intercambian sus llaves públicas, YA y YB entre sí, operando cada uno con la
clave que recibe del otro, obteniendo en la operación el mismo número, de la siguiente
forma:
XA
K = (YB ) mod q
XB
K = (YA ) mod q
9. Este número K es la clave simétrica que a partir de ese momento ambos comparten, y
que pueden utilizar para establecer una comunicación cifrada utilizando cualquier
sistema simétrico, que es mucho más liviano que un mecanismo asimétrico.
De esta forma la llave compartida nunca se transmite de un lado a otro, evitando que sea
interceptada y descubierta, sin embargo, el intercambio de claves usando Diffie-Hellman es
vulnerable a ataques tipo “El hombre en la mitad”, ya que se podría interceptar la
comunicación, hacerse pasar por el lado remoto y enviarle al emisor su llave pública
haciéndose pasar por el receptor. La solución a este problema es usar firmas digitales en la
cual se asegure que la persona con la cual se esta estableciendo la comunicación sea
efectivamente quien dice ser.
ALGORITMO RSA
RSA, llamado así por las siglas de sus creadores (Rivest, Shamin, Adleman), es el
algoritmo de clave pública más popular. El algoritmo se puede usar para encriptar datos, para
firmas digitales y para el intercambio de claves.
La clave es de tamaño variable, sin embargo, requiere que ella sea de por lo menos 1024
bits para una buena seguridad (en comparación con los 128 bits de los algoritmos de clave
simétrica), lo que hace que la seguridad del algoritmo aumente, pero disminuye su eficiencia
al tener que generar más texto cifrado. Los bloques de texto cifrado generados son del tamaño
de la clave.
4. Se busca otro número d tal que (ed-1) es divisible por z. A este valor d se le llama
exponente privado y puede ser calculado usando la siguiente formula:
e*d mod z = 1
Para desencriptar:
d
m = C mod n.
• Fuerza bruta: probar todas las claves privadas posibles, actualmente imposible para el
tamaño de claves que se utilizan.
• Factorizar n (conocido públicamente) en números primos ya que así se podría obtener
p y q, y a partir de estos z. Esta tarea es hoy computacionalmente imposible en un
tiempo razonable para claves mayores de 1.024 bits. Según Riverst y sus colegas, la
factorización de un número de 500 dígitos requiere 1025 años de tiempo de cómputo
utilizando el mejor algoritmo conocido y un computador con un tiempo de instrucción
de 1 µseg [TAN2003].
Capítulo 3 Seguridad en las VPN 55
La utilización de la firma digital permite que una parte pueda enviar un mensaje
“firmado” a otra parte (al igual como ocurre con cualquier documento legal o de otro tipo en
la cual se pone la firma manuscrita del interesado), de modo que:
• El receptor verifique la identidad del transmisor (autenticación).
• El transmisor no podrá repudiar o negar después el contenido del mensaje.
• El receptor no haya podido elaborar el mensaje el mismo.
La segunda propiedad es la que más caracteriza al uso de una firma digital, es decir,
cumplir con la propiedad de “no rechazo” de una comunicación. Los principales requisitos de
la firma digital son:
• Debe ser fácil de generar.
• Será única, sólo posible de generar por su propietario.
• Será fácil de autenticar o reconocer por su propietario y los usuarios receptores.
• Debe depender del mensaje (por compendio) y del autor (por certificado).
Cada usuario escoge una clave secreta y la lleva personalmente a la autoridad central X.
Por tanto, sólo el usuario y X conocen la clave secreta del usuario. En el caso de un usuario
A, sería la clave secreta KA.
Ahora, en el caso de que el usuario A negara haber enviado el mensaje a B, este último
puede afirmar que el mensaje vino de A y no de un tercero C, pues X no hubiera aceptado un
mensaje de A, a menos que estuviese cifrado con KA, por lo que no hay posibilidad de que
otro usuario C enviara a X un mensaje falso en nombre de A ya que X lo detectaría de
inmediato. B además presenta la prueba KX(A,t,P), que a su vez X (en quien todo el mundo
confía) la puede descifrar y con ello testificar que B dice la verdad.
Se observa que tanto A conoce la clave pública de B como también B conoce la clave pública
de A. Un diagrama del proceso se muestra en la figura 3.5.
Por tanto, con los problemas anteriormente citados, parece que sí es recomendable que se
requiera alguna autoridad para registrar todos los cambios de clave y sus fechas.
Capítulo 3 Seguridad en las VPN 58
Para cumplir con el tercer criterio, la función hash debe ser de cuando menos 128 bits de
longitud, y de preferencia mayor, y para cumplir con el cuarto criterio, la función hash debe
truncar los bits minuciosamente de forma similar a como lo hacen los algoritmos de
encriptación de clave simétrica.
MD5
El compendio MD5 es el quinto2 de una serie de funciones de dispersión diseñadas y
propuestas por Ronald Rivest en el año 1992 (RFC-1321). “El algoritmo opera truncando los
bits de una manera tan complicada que cada bit de salida es afectado por cada bit de entrada
[TAN2003]”.
Una vez terminado el cálculo, el contenido del búfer de 128 bits forma el compendio del
mensaje.
_____________________________
2. Anteriores versiones como MD2 y MD4 están explicadas en las RFC-1319 y RFC-1186 y 1320
respectivamente
3. El objetivo de usar una función conocida como el seno es para evitar cualquier sospecha de que el diseñador
construyó una puerta trasera ingeniosa por la cual sólo él pudiese entrar.
Capítulo 3 Seguridad en las VPN 60
SHA-1
SHA-1 (Algoritmo Seguro Hash 1) fue desarrollado por la NSA. Al igual que MD5,
SHA-1 procesa los datos de entrada en bloques de 512 bits, pero a diferencia del MD5 genera
un compendio de mensaje de 160 bits.
La seguridad que debe tener toda organización cuando desee conectar su red privada a
Internet es crucial para proteger los datos o información que esta posea, para prevenir de
ataques de piratas o hackers que intentan entrar a su red interna a través de Internet. Esto se
logra principalmente al utilizar firewall (cortafuego), los cuales administran los posibles
accesos de Internet a la red privada.
Tipos de firewall
Existen principalmente tres tipos de firewall: los filtros de paquete, los firewall de nivel
de aplicación y firewall de inspección de estado.
Los cortafuegos del nivel de aplicación actúan a modo de proxy para las distintas
aplicaciones que controlarán. En lugar de comprobar simplemente los parámetros IP, estos
cortafuegos miran los datos del nivel de aplicación.
Los cortafuegos de inspección de estado están en un punto medio entre los firewall de
aplicación y los filtros de paquetes. Según Oleg Kolesnikov, “en lugar de leer todo el diálogo
entre el cliente y el servidor, leen sólo la cantidad necesaria para determinar cómo se debe
comportar. Logrando con ello ventajas de rendimiento con respecto a los firewall de nivel de
aplicación [KOL20003]”.
Capítulo 3 Seguridad en las VPN 62
Estos son los tipos de cortafuegos más utilizados, pero a la hora de la implementar un
servidor VPN en conjunto con un firewall en alguna red privada, se puede encontrar distintas
configuraciones, en relación a la ubicación que se le da a cada uno. Estas configuraciones
deben ser planificadas en detalle y cada una tiene sus ventajas y desventajas.
Entre las ventajas de esta configuración están: 1) se tiene un sólo lugar que controle la
seguridad, lo que implica tener menos equipo que mantener y 2) se pueden crear normas de
firewall que se apliquen al tráfico VPN utilizando las mismas herramientas que se utilizan para
administrar el firewall.
Sin embargo, también existen desventajas en esta configuración como el hecho de que al
ser un sólo equipo que controle la seguridad, este debe imprescindiblemente ser
extremadamente seguro; se debe configurar las rutas del tráfico de la red.
Capítulo 3 Seguridad en las VPN 63
Entre las desventajas de poner el servidor VPN en paralelo con el firewall están:
• Se debe tener especial cuidado con la seguridad del servidor VPN, al estar este
conectado directamente a Internet. En caso contrario, se podría tener acceso a la red
interna, principalmente, por atacantes informáticos.
Capítulo 3 Seguridad en las VPN 64
Esta configuración tiene como principal ventaja que el servidor VPN está completamente
protegida por el firewall frente a Internet, siendo este último, el único equipo que controla
todo el acceso desde y hacia Internet.
Capítulo 3 Seguridad en las VPN 65
Las principales desventajas de esta topología y que destaca Oleg Kolesnikov en su libro
“Redes privadas virtuales con Linux” [KOL2003] son:
• Al tener que pasar todo el tráfico VPN por el firewall, implica la aparición de cierto
grado de latencia.
• El firewall al no poder inspeccionar el tráfico VPN por estar este cifrado, necesitará
un filtro de ACL (lista de control de acceso) de paquetes sencillos o un proxy plug
de aplicación.
• Es problemático el hecho de que algunos firewall no saben que hacer con los
protocolos IP distintos de ICMP, TCP y UDP. Al ocurrir esto, “se hace muy difícil
o imposible soportar las VPN que utilizan protocolos IP diferentes, como los
paquetes ESP de una VPN IPSec o los paquetes GRE de una VPN PPTP
[KOL2003]”.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 66
4.1 IPSEC
IPSec está basado en un conjunto de protocolos, que proveen de seguridad a los paquetes
IP, mejorando considerablemente los problemas con que contaba el protocolo IPv4. Para IPv6
la integración de IPSec es de carácter obligatorio. IPSec provee servicios tanto de
autenticación, integridad, protección contra la repetición, como también confidencialidad.
Una SA indica a un dispositivo IPSec como procesar paquetes IPSec entrantes, o como
generar paquetes IPSec salientes. Es una relación en un sólo sentido entre un emisor y un
receptor. En el caso que fuese necesario un intercambio seguro entre dos sentidos, entonces se
requiere dos asociaciones de seguridad.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 67
Las SA pueden ser identificadas de manera única por tres parámetros. Ellos son el SPI
(Índice del Parámetro de Seguridad), una dirección IP destino y un identificador del protocolo
de seguridad. El SPI es un número de 32 bit que se utiliza para que el receptor de un paquete
IPSec identifique la asociación de seguridad y con ello poder descifrar la comunicación. El SPI
puede estar tanto en la cabecera del protocolo AH como del protocolo ESP de los paquetes
protegidos IPSec.
Otros parámetros que pueden contener las SA son: números de puerto de origen y de
destino, parámetros de autenticación (como firma o algoritmo de dispersión criptográfico,
claves, etc.), parámetros de protección contra la repetición (por ejemplo un contador de
números de secuencia y el indicador de flujo del contador de números de secuencia de las SA
de salida), modo que se utilizará (transporte o túnel), vida de la SA (indicada como tiempo,
número de bytes a utilizar, o bien, utilizar en forma combinada), parámetros de fragmentación
(MTU), entre otros.
El método de transporte adyacente (figura 4.1) permite aplicar tanto AH como ESP al
mismo datagrama IP y ellos son aplicados por el mismo host, de tal forma que la protección se
agrega en el modo transporte y en el cual sólo es posible un orden: la primera cabecera es IP,
la siguiente AH, y la última ESP.
En túneles iterados, se permite anidar tantas cabeceras AH o ESP como sea necesario,
con lo cual se logra proveer de capas anidadas de seguridad. También puede empaquetar SA
que se solapen pero que tengan direcciones de origen o destino diferentes.
Existen tres casos posibles en la utilización de tunelado iterado o repetido, los que están
basados en las direcciones IP de origen y de destino de las SA empaquetadas. El primer caso
es cuando todas las SA tienen las mismas direcciones IP de origen y de destino. El segundo
caso es cuando la IP de origen o la de destino es la misma para todas las SA de un paquete. El
tercer caso es cuando tanto las IP de origen como las de destino son diferentes para todas las
SA. IPSec obliga implementar los dos últimos casos [KOL2003].
Las Base de Datos de Políticas de Seguridad (SPD), definidas por el administrador del
sistema (administrador del servidor VPN, en este caso) contiene de forma ordenada las reglas
(políticas de seguridad) que le dicen a IPSec que hacer tanto con los paquetes IP entrantes
como con los paquetes salientes (del servidor VPN). Cada una de estas reglas consta de un
número de selectores, los que clasifican un paquete IP sobre una determinada acción.
___________________________
3. Ejemplo extraído del libro “Redes Privadas Virtuales con Linux” [KOL 2003].
Capítulo 4 Análisis de Seguridad en Protocolos VPN 70
IPSec trata de forma diferente al tráfico saliente del tráfico entrante. En el caso de un
paquete saliente, el módulo IPSec comprueba primero su SPD y si especifica que un
procesamiento IPSec es necesario, se consulta la SAD para determinar si una SA ha sido
establecida, de no serlo, se negocia una SA nueva para el paquete, la que es almacenada en la
SAD.
Ahora, para el caso de un paquete entrante, IPSec no comprobará primero la SPD, sino
que en primer lugar buscará en la SAD la SA apropiada para el paquete. Una vez determinada
la SA apropiada, se realiza la autenticación y descifrados necesarios4. Terminado este proceso
el módulo IPSec busca la entrada SPD adecuada utilizando la SA que se tenía de referencia
para decidir que hacer posteriormente, ya sea para redireccionar, descartar o bien para
aplicarle procedimientos adicionales como reglas de algún firewall al paquete.
IPCOMP, AH y ESP funcionan a nivel IP, por lo que no existen puertos asociados a
ellos. AH y ESP poseen en su lugar números de protocolos (51 y 50, respectivamente)
asociados a ellos [KOL2003].
En el modo túnel (figura 4.3), IPSec trata al paquete IP como a un bloque de datos,
encapsulando el datagrama entero en otro, tratando al datagrama original como la carga útil del
segundo. Es decir, añade una nueva cabecera y protege los datos del paquete original haciendo
que formen parte de la información útil cifrada del paquete nuevo.
4.1.3.2.1 FORMATO DE AH
La cabecera de autenticación tiene una longitud de 24 bytes y esta compuesta por seis
campos los cuales se muestran en la figura 4.5.
____________________________
6. La autenticación del paquete recibido es comprobada cuando el receptor compara el valor hash calculado
con el ICV del paquete entrante.
7. HMAC-MD5 y HMAC-SHA1 son los algoritmos hash usados por defecto por AH.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 75
4.1.3.3 ESP
ESP (Encapsulating Security Payload, Información Útil de Seguridad del Encapsulado)
es un protocolo (cuyo valor asociado a él es el 50) que provee los tres tipos de protección que
ofrece AH (autenticación opcional, integridad, y protección contra la repetición, esta última al
igual que en AH es también opcional) agregando también confidencialidad a los datos por
medio del cifrado. ESP esta definido en el RFC-2406.
Los algoritmos de cifrado que utiliza ESP son definidos en la SA sobre la cual los
paquetes IP son enviados. A diferencia de AH, que protege tanto la cabecera exterior como la
información útil del paquete, ESP sólo protege la información útil.
Al igual que AH, ESP puede aplicarse en modo túnel y en modo transporte,
insertándose además varios campos adicionales al paquete IP de forma similar y de iguales
significados a los insertados a AH.
Las figuras 4.6 y 4.7 muestran el formato de un paquete IP al cual se le ha aplicado ESP,
tanto en modo transporte como en modo túnel respectivamente.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 76
Con respecto a los algoritmos usados por ESP, se encuentran (de forma obligatoria) a
DES en modo CBC, HMAC con MD5 y con SHA-1, algoritmos de autenticación NULL y de
encriptación NULL (los cuales deshabilitan tales opciones), no descartándose el uso de otros
algoritmos, los cuales son todos especificados en las respectivas SA.
En cuanto a algoritmos de encriptación, ESP esta diseñado para usarse con algoritmos
simétricos de encriptación debido a que los paquetes IP podrían llegar desordenados y se
requiere cierta información para establecer la sincronización criptográfica.
4.1.3.4 IPCOMP
IPCOMP sin ser un protocolo de seguridad como tal, sí es, al igual que AH y ESP un
protocolo de manipulación de paquetes IP.
Utilizar IPCOMP es especialmente útil cuando el cifrado se aplica a los datagramas IP.
El RFC-2393 además señala que si se requiere la compresión y el cifrado, la compresión se
debe aplicar antes del cifrado.
_____________________________
10. En el caso de habilitar la autenticación, primero se realiza la encriptación para que el receptor realice
primero la autenticación y se acelere el rechazo de paquetes no aceptados.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 80
Consideraciones finales:
Para dar una descripción final de las características de usar cada
protocolo de manipulación de datos, ya sea en forma individual o combinada se
especificarán las siguientes opciones [KOL2003]:
• Sólo AH: Autenticación avanzada, integridad y antirepetición.
• Sólo ESP: Autenticación (opcional), integridad, antirepetición y cifrado.
• ESP y AH: Autenticación avanzada, integridad, antirepetición y cifrado.
• ESP y IPCOMP: Autenticación, integridad, antirepetición, cifrado y
compresión.
• ESP, AH e IPCOMP: Autenticación avanzada, integridad, antirepetición,
cifrado y compresión.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 81
4.1.4 IKE
Uno de los problemas de IPSec es que carece de un sistema propio de negociar las SA de
forma automática y de administrar las claves criptográficas, ya sea en la creación, intercambio
y mantenimiento de ellas.
Para solucionar este problema IPSec utiliza como protocolo de administración de claves
a IKE (protocolo de Intercambio de Claves en Internet) el cual permite negociar las SA
automáticamente. IKE esta definido en el RFC-2409.
ISAKMP utiliza dos formas de negociación: la primera es ISAKMP SA, en la cual las
partes negocian cómo proteger las comunicaciones que se establecen luego entre ellas. La
segunda forma de negociación se usa para establecer las asociaciones de seguridad para otros
protocolos de seguridad como IPSec, es decir, las asociaciones de seguridad propias de IPSec
son negociadas entre los nodos ISAKMP, pudiéndose negociar varias de ellas. Esta última fase
se utiliza para establecer la protección de los datos del usuario y por lo general las claves son
renovadas cada uno o dos minutos.
En el modo agresivo, sólo se usa la mitad de mensajes que en el modo principal para
alcanzar su objetivo (es decir, tres datagramas UDP). Las SA, los parámetros de intercambio
de claves y la información de identidad se intercambian en un único mensaje, luego de la
propuesta del host A al host B de las SA. Y posteriormente, se realiza la autenticación. La
desventaja de este modo, es la gran cantidad de cálculos que realiza el host B en respuesta a
las propuestas del host A, lo que afectaría en el caso que un atacante envíe una gran cantidad
de propuestas con IP de origen falsas, que implicaría un aumento en el consumo de los
recursos y una negación del servicio.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 83
Fase II:
Luego de establecer un canal seguro en la comunicación durante la Fase I, ambos host
deben compartir una SA de ISAKMP nueva. Esta nueva SA de ISAKMP es utilizada para
proteger las subsecuentes negociaciones durante esta fase. Durante la fase II, se negocian una
o más SA IPSec.
Las negociaciones durante esta fase son más rápidas debido a que el canal ya está
asegurado. Por esta razón es que el protocolo para las negociaciones es llamada modo rápido
(QM).
Al igual que en la Fase I, las partes intercambian propuestas, las que incluyen una lista
de conjuntos de protección por cada SA IPSec propuesta, además de información adicional
(como tiempo de vida de la SA de IPSec propuesta, grupo DH11 , indicador de modo transporte
o túnel, información de claves, etc.). Para que esta fase se lleve a cabo, es indispensable que la
primera fase haya concluido.
Observación:
La especificación del protocolo IKE determina la forma de intercambiarse las
claves, y se refiere al inicio de la comunicación y no al final de ella. Este es un
problema, debido a que IKE especifica que cualquiera de las partes podría
terminar una sesión, no existiendo forma de que el otro extremo sepa que la
sesión ha terminado. El extremo emisor seguiría enviando datos de ser el receptor
el que termine la sesión.
__________________________
11. Los grupos DH identifican grupos diferentes del algoritmo de intercambio de claves Diffie-Hellman, cuya
diferencia radica en la longitud del módulo de números primos.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 84
4.2 PPTP
“PPTP (Point-to-Point Tunneling Protocol, Protocolo de tunelado punto a punto) es una
mejora del PPP desarrollado por Microsoft. PPTP se utiliza de manera más específica para
crear sesiones VPN para usuarios móviles en configuraciones host-red o host-host
[KOL2003]”
“PPTP es una combinación del Protocolo Punto a Punto (PPP) y del Protocolo de
Control de Transmisión/Protocolo Internet (TCP/IP) [BRO2001]”, ya que utiliza y combina
funciones del PPP tales como el multiprotocolo, la autenticación de usuarios y la privacidad
con la comprensión de paquetes de datos, y TCP/IP permite enrutar tales paquetes a través de
Internet.
PPP
PPP (Point-to-Point Protocol) es una derivación del popular HDLC (High
Level Data Link Control, Control de enlace de datos de capa superior) utilizado
para conseguir actividades de control de líneas y encapsular datos de usuarios.
PPTP utiliza el protocolo PPP para establecer la conexión conmutada entre el cliente y el
servidor de acceso a la red, es decir, PPP es el encargado del establecimiento y finalización de
la conexión física, de la autenticación de los usuarios y de la creación de los datagramas PPP.
PPTP puede presentarse en dos modos: modo obligatorio y modo voluntario. Además,
en el tráfico PPTP se pueden definir dos tipos de datos: paquetes de datos y paquetes de
control. Los paquetes de datos son paquetes que han sido encapsulados con el protocolo GRE
versión 2 (GREv2) de Internet, y contienen los datagramas del protocolo de red usado. Los
paquetes de control son utilizados para verificar en forma periódica sobre el estado del enlace
y las señales de manejo entre el cliente y el servidor PPTP, además de ser usados para enviar
información sobre el manejo de los dispositivos y su configuración.
_____________________________
12. Algoritmos tales como PAP y CHAP son utilizados por PPTP para proporcionar autenticación.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 87
De lo anterior, el túnel PPTP puede darse de dos formas: modo obligatorio o permanente
y modo voluntario.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 88
Los túneles permanentes u obligatorios son transparentes para el usuario, ya que son
creados de forma automática, sin la acción del usuario y sin permitirle a este escoger algún
tipo de privilegio. “Una sesión PPTP en modo obligatorio utiliza los servicios de un ISP junto
con un procesador frontal PPTP (FEP) [BRO2001]”, como se muestra en la figura 4.11. En
este caso no se utiliza ningún software (de cliente VPN) en el usuario final o cliente, sino que
el cliente PPTP se encuentra en el ISP al que se conecta el usuario final. Con esto, el
computador del usuario final deja de ser el punto terminal del túnel, en su lugar, es el RAS,
entre la computadora del usuario final y el servidor PPTP, el punto terminal del túnel,
actuando como cliente del túnel.
Una vez que se realiza la conexión inicial, todo el tráfico de la red de y hacia el cliente se
envía automáticamente a través del túnel. En los túneles obligatorios, el computador cliente
realiza una conexión única PPP y cuando un cliente marca en el NAS, se crea un túnel y todo
el tráfico se enruta automáticamente a través de éste. Se puede configurar un FEP para hacer
un túnel a todos los clientes de marcación hacia un mismo servidor PPTP, es decir, un túnel
permanente PPTP permite que múltiples conexiones sean transportadas sobre el mismo túnel.
También el FEP podría hacer túneles individuales de los clientes basados en el nombre o
destino del usuario.
A diferencia de los túneles por separado creados para cada cliente voluntario, un túnel
entre el FEP y servidor PPTP puede estar compartido entre varios clientes de marcación.
Cuando un segundo cliente marca al servidor de acceso (FEP) para alcanzar un destino para el
cual ya existe un túnel, no hay necesidad de crear una nueva instancia del túnel entre el FEP y
el servidor PPTP. El tráfico de datos para el nuevo cliente se transporta sobre el túnel
existente. Ya que puede haber varios clientes en un túnel único, el túnel no se termina hasta
que se desconecta el último usuario del túnel.
Una vez que es establecida la conexión a través del protocolo PPP, el protocolo PPTP
realiza la conexión entre el cliente y el servidor PPTP. La conexión de control PPTP está entre
las direcciones IP del cliente PPTP que utiliza un puerto TCP asignado dinámicamente y la
dirección IP del servidor PPTP que utiliza el puerto TCP reservado 1723.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 90
Los paquetes de control de conexión PPTP consisten de una cabecera IP, una cabecera
TCP y un mensaje de control PPTP como lo muestra la figura 4.12. El paquete de control de
conexión PPTP también incluye una cabecera de la capa de enlace de datos y una cola.
La tabla 4.3 muestra los principales mensajes de control utilizados por PPTP.
Por último, la etapa final en la transmisión son los túneles PPTP de datos, el cual se logra
con múltiples niveles de encapsulación. La figura 4.13 muestra la estructura de los datos
enviados a través del túnel PPTP.
El proceso es el siguiente:
• La carga inicial es encriptada y comprimida con una cabecera PPP para crear el
paquete PPP, el que luego es encapsulado con una cabecera GRE modificada.
• La carga resultante encapsulada por PPP y por GRE posteriormente es
encapsulada con una cabecera IP conteniendo las direcciones IP destino y origen
apropiadas para el cliente y el servidor.
• Por último, el datagrama IP es encapsulado con una cabecera y una cola de
acuerdo a la tecnología por el cual se enviarán los datos, es decir, tecnología de
enlace de datos. Por ejemplo, si los datagramas IP son enviados por una interfaz
Ethernet, el datagrama es encapsulado con una cabecera y una cola Ethernet.
Finalmente, una vez que reciben los datagramas, el servidor PPTP o el cliente PPTP
realiza lo siguiente:
• Procesa y elimina la cabecera y la cola del enlace de datos.
• Procesa y elimina la cabecera IP.
• Procesa y elimina las cabeceras GRE y PPP.
• Desencripta, descomprime, o ambas, la carga PPP (si se requiere).
• Procesa la carga para recepción o reenvío.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 92
PPTP está implementado para PAC y PNS. Un PAC puede prestar servicios a muchos
PNS. PPTP requiere el establecimiento de un túnel para cada comunicación PNS-PAC, el cual
es usado para llevar todos los paquetes PPP de sesión de usuario participando un par
determinado de PNS y PAC. Los paquetes de datos PPP son transportados entre el PAC y el
PNS, encapsulados en paquetes GRE los cuales son transportados sobre IP.
Sin embargo, con la siguiente versión de PPTP de Microsoft llamada PPTPv2 estas
vulnerabilidades fueron corregidas: PPTPv2 incluye una versión nueva del protocolo de
autenticación, MS-CHAPv2. MS-CHAPv2 aumenta la aleatoriedad de las claves, elimina el
envió del algoritmo hash de contraseñas más débil LAN Manager y permite que MPPE utilice
claves de cifrado diferentes para cada dirección del tráfico VPN. Esta nueva versión es
incompatible con la primera versión MS-CHAPv1.
Sin embargo, PPTPv2 aún hace derivar la clave de cifrado de la contraseña del usuario.
Estas claves de usuario, “en su mayoría no contienen 40 bits de entropía, por tanto, no importa
cuantos bits pueda estar utilizando el cifrado, el cifrado efectivo sólo puede ser tan fuerte
como lo sea la contraseña [KOL2003]”.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 94
4.3 L2TP
El protocolo L2TP (Layer 2 Tunnelling Protocol, Protocolo de establecimiento de túnel
de nivel 2) fue creado como sucesor del protocolo PPTP y del protocolo L2F (Layer 2
Forwarding, Protocolo de reenvío de nivel 2). En 1998, las compañías desarrolladoras de
PPTP (Microsoft, Ascend y 3Com) y Cisco Systems, desarrolladora de L2F, acordaron
trabajar en conjunto para desarrollar una nueva especificación para la IETF (Internet
Engineering Task Force, Grupo de trabajo en Ingeniería de Internet): L2TP
L2TP se apoya en PPP para establecer una conexión por marcación, pero a diferencia de
PPTP, define su propio protocolo para establecer túneles, basado en L2F. Cuando L2TP está
configurado para utilizar IP como su transporte, L2TP se puede utilizar como protocolo de
túnel VPN, utilizando el puerto UDP 1701.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 95
L2TP utiliza UDP para enviar tramas PPP encapsuladas en L2TP como datos del túnel.
Estas tramas PPP encapsuladas se pueden cifrar y/o comprimir. Cuando estos túneles L2TP
aparecen como paquetes IP, emplean la seguridad IPSec estándar mediante el modo de
transporte IPSec, con ello logra obtener una fuerte protección de integridad, autenticidad,
reproducción y privacidad.
Los mensajes de datos son utilizados para encapsular los marcos o tramas PPP que son
transportados por el túnel. Los mensajes de control utilizan un canal confiable de control
dentro de L2TP, para garantizar la entrega. Los mensajes de datos no se retransmiten cuando
ocurre la pérdida del paquete.
Los mensajes del control se envían sobre un canal de control confiable L2TP que
transmite los paquetes en banda sobre el mismo transporte del paquete. Los números de
secuencia requieren estar presentes en todos los mensajes de control y se utilizan para
proporcionar la entrega confiable en el canal de control. Los mensajes de datos pueden
utilizar números de secuencia para reordenar los paquetes y para detectar los paquetes
perdidos.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 97
Cuando se utiliza en redes IP, L2TP es muy similar a PPTP. Se crea un túnel L2TP entre
un cliente L2TP y un servidor L2TP. El cliente puede incluirse a una red IP que puede
alcanzar al servidor del túnel, o un cliente puede marcar a un servidor de acceso de red (NAS)
para establecer la conectividad IP.
L2TP usa PPTP en enlaces conmutados, por ende utiliza los mismos mecanismos de
autenticación provenientes de PPP, tales como PAP, CHAP, MS-CHAP, MS-CHAPv2 y el
protocolo de autenticación extensible EAP (Extensible Authentication Protocol), este último,
que admite mecanismos de autenticación de tarjetas token y tarjetas inteligentes.
• T: El bit T (type) indica el tipo de mensaje. Es 0 para los mensajes de datos y 1 para
los mensajes del control.
• L: (leng), cuando es 1 indica que el campo de la longitud está presente. Debe ser fijado
para los mensajes del control.
• X: los bits X son reservados para las extensiones futuras. Todos los bits reservados se
fijan a 0 en mensajes de salida y son ignorados por el receptor.
• S: (sequence), si se fija el bit S de secuencia en 0 (cero), los campos de Nr y del Ns
están presentes. S se debe fijar en 1 para los mensajes del control.
• O: (offset), cuando está fijado (en 1), este campo indica que el campo de tamaño offset
esta presente. Este bit se fija a 0 para los mensajes del control.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 98
El LNS es el par del LAC, y es un punto de terminación lógica de una sesión PPP que
está siendo tunelizada desde el sistema remoto por el LAC. El LNS opera sobre cualquier
plataforma con capacidad de terminación PPP y gestiona el lado del servidor del protocolo
L2TP. Al LNS también se le conoce como Home Gateway (HGW) en la terminología L2F.
El túnel L2TP opera entre una pareja LAC-LNS, y consiste de una conexión de control y
de ninguna o más sesiones L2TP. El túnel transporta datagramas PPP encapsulados y mensajes
de control entre el LAC y el LNS. El protocolo L2TP soporta dos modos de túneles, el modo
obligatorio y el modo voluntario.
_____________________________
16. L2TP usa el Protocolo de Control de Red (Network Control Protocol NCP) para asignar la IP y autentificar
en PPP.
Capítulo 4 Análisis de Seguridad en Protocolos VPN 100
Dado que el protocolo pasajero es PPP, L2TP hereda los mismos mecanismos de
autenticación de este (tales como CHAP, MS-CHAP, MS-CHAPv2, protocolo de
autenticación extensible EAP, etc) al igual que los protocolos empleados para el control de la
encriptación (ECP) y la compresión (CCP), además de incluir un soporte propio de
autenticación que podrá ser empleado en ambos extremos del túnel.
La autenticación L2TP es llevada a cabo desde los servidores de red L2TP (LNS), en los
cuales deben autenticarse todos los concentradores de acceso L2TP (LAC). Esto provoca la no
existencia de mecanismos de protección del tráfico de control y datos tomando como base los
paquetes intercambiados. Con ello, la autenticación L2TP deja al túnel creado en un estado
vulnerable frente a posibles ataques, como de snooping (espía), denegaciones de servicio,
modificaciones o incluso interceptación de los procesos de negociación de la encriptación
(ECP) y de la compresión (CCP).
Capítulo 4 Análisis de Seguridad en Protocolos VPN 101
Por otro lado, PPP autentica a los clientes en los LNS pero tampoco proporciona una
autenticación basada en paquetes. La encriptación PPP cumple los requisitos de
confidencialidad de tráfico PPP pero sin embargo, tampoco cumple con los requisitos
necesarios para la integridad, la autenticación y la gestión de las claves. Además, el proceso de
negociación ECP no es llevado a cabo de una manera cifrada. Producto de ello, el proceso de
encriptación PPP ofrece un mecanismo de seguridad demasiado débil, además de no ayudar al
proceso de seguridad del canal L2TP.
Actualmente, cuando se usa L2TP para conectarse al servidor VPN, el L2TP para
realizar la autenticación se fundamenta en el método de autenticación de dos factores17,
además de los estándares de encriptación e integridad de datos. El protocolo L2TP utiliza los
certificados18 del cliente y del servidor para autenticar los sistemas. Una vez que esta sea
exitosa, L2TP establece una conexión IPSec en modo ESP, el cual provee privacidad,
integridad de datos y autenticación para cada paquete que se transmite. Con ello, L2TP
encripta todos los datos que viajan por el túnel VPN en Internet, protegiendo la conexión de
ataques.
_____________________________
17. El método de autenticación de “doble factor” consiste en combinar una contraseña con algo físico, como una
tarjeta inteligente o un certificado de seguridad.
18. Microsoft, frente a la necesidad de aprovisionar todos los computadores de sus correspondientes certificados
(los certificados no son transportables, por lo que se deben instalar en las distintos computadores en los cuales se
quiera utilizar para poder tener acceso a la VPN), facilita herramientas con el fin de que esta tarea y otras
relacionadas con el acceso remoto a través de VPN sean más llevaderas.
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 102
__________________________
1. Cuya página oficial, con documentación y software necesario es www.poptop.org
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 105
Una vez descargados los paquetes rpm, los paquetes de la siguiente forma:
Acceder como root desde una consola linux, para ello teclear el comando:
su
se pedirá la contraseña, digitarla y aceptar.
El paquete ppp-2.4.3-4.fc3.i386.rpm2 es opcional, sólo para actualizar el paquete que viene por
defecto al instalar Fedora Core 33.
Ya estando como root teclear lo siguiente:
rpm –U /ruta_del_paquete/ppp-2.4.3-4.fc3.i386.rpm
Obs: Para comprobar que se tiene el programa pppd correcto, es decir, con soporte MPPE, se
puede realizar lo siguiente:
Como root teclear en una consola de linux:
Strings $(which pppd) | Grep –i mppe |wc -l
Si da un valor distinto de 0 (cero), se tiene el pppd correcto.
________________________________
2. Este paquete es para Fedora Core 3, en caso de usar otra distribución que trabaje con archivos rpm, bajar el
paquete respectivo.
3. En caso de estar usando una distribución de linux más antigua y que la versión de pppd no cuente con
soporte para MPPE y MS-CHAPv2, será necesario descargar la última versión de PPP que seguramente sí
contará con el soporte necesario.
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 106
Con esto quedará instalado el programa pptpd, el cual creará archivos en diversos
directorios, de los cuales el archivo /etc/pptpd.conf y /etc/ppp/options.pptp serán los que
se modificarán para configurar el servidor. El otro archivo que se utilizará será el
/etc/ppp/chap-secrets para crear los usuarios que podrán conectarse a la VPN.
Para parchear el kernel, y así añadirle el soporte para el cifrado MPPE, basta con
instalar el paquete kernel_ppp_mppe-0.0.5-2dkms.noarch.rpm, Para ello, primero es necesario
instalar el paquete dkms-2.0.5-1.noarch.rpm. Ambos pueden ser descargados desde la página
oficial de Poptop.
Estando como root teclear lo siguiente:
rpm –i /ruta_del_paquete/dkms-2.0.5-1.noarch.rpm
rpm –i /ruta_del_paquete/kernel_ppp_mppe-0.0.5-2dkms.noarch.rpm
Obs.: Para comprobar que todo resultó bien y que ya se tiene el kernel con soporte MPPE, se
puede realizar lo siguiente:
Como root teclear en una consola de linux:
modprobe ppp_mppe
Con esto se cargará el módulo ppp_mppe, si no da algún mensaje de error, es porque se ha
cargado exitosamente.
Obs.: con el comando lsmod se listan los módulos cargados. Los módulos que deben estar
presentes para el funcionamiento del servidor PPTP son: ppp_mppe, ppp_generic.
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 107
# TAG: option
# Specifies the location of the PPP options file.
# By default PPP looks in '/etc/ppp/options'
#
option /etc/ppp/options.pptpd
# TAG: debug
# Turns on (more) debugging to syslog
#
#debug
# TAG: stimeout
# Specifies timeout (in seconds) on starting ctrl connection
#
# stimeout 10
# TAG: noipparam
# Suppress the passing of the client's IP address to PPP, which is
# done by default otherwise.
#
#noipparam
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 108
# TAG: logwtmp
# Use wtmp(5) to record client connections and disconnections.
#
logwtmp
# TAG: bcrelay <if>
# Turns on broadcast relay to clients from interface <if>
#
#bcrelay eth1
# TAG: localip
# TAG: remoteip
# Specifies the local and remote IP address ranges.
#
# Any addresses work as long as the local machine takes care of the
# routing. But if you want to use MS-Windows networking, you should
# use IP addresses out of the LAN address space and use the proxyarp
# option in the pppd options file, or run bcrelay.
#
# You can specify single IP addresses seperated by commas or you can
# specify ranges, or both. For example:
#
# 192.168.0.234,192.168.0.245-249,192.168.0.254
#
# IMPORTANT RESTRICTIONS:
#
# 1. No spaces are permitted between commas or within addresses.
#
# 2. If you give more IP addresses than MAX_CONNECTIONS, it will
# start at the beginning of the list and go until it gets
# MAX_CONNECTIONS IPs. Others will be ignored.
#
# 3. No shortcuts in ranges! ie. 234-8 does not mean 234 to 238,
# you must type 234-238 if you mean this.
#
# 4. If you give a single localIP, that's ok - all local IPs will
# be set to the given one. You MUST still give at least one remote
# IP for each simultaneous client.
#
# (Recommended)
#localip 192.168.0.1
#remoteip 192.168.0.234-238,192.168.0.245
# or
#localip 192.168.0.234-238,192.168.0.245
#remoteip 192.168.1.234-238,192.168.1.245
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 109
Para que el servidor logre permitir conexiones VPN, bastará con modificar
principalmente la opción localip y la opción remoteip, el resto originadas por defecto son las
adecuadas y que se ocuparán en esta configuración.
Las principales opciones de este archivo que hay que considerar para los propósitos de
hacer funcionar el servidor correctamente son:
La opción option indica al demonio pptpd el archivo con las opciones de conexión
que utilizará PPP, opciones tales como encriptación, servidores dns, wins, etc.
La opción localip indica la IP que utilizará el servidor para atender las conexiones
VPN.
4
La opción debug de ser activada permite ver en los “logs” del sistema todos los
pasos y procesos que realiza el servidor PPTP para establecer las conexiones de los clientes.
Es de gran ayuda en caso de que el servidor no funcione y a simple vista no se sepa el motivo,
para poder detectar las causas del problema.
La opción remoteip sirve para especificar la o las direcciones IP que tomarán los
clientes al momento de conectarse a la red por medio del servidor PPTP. Pueden ser rangos5
de red ya creados o existentes en la propia red o bien crear rangos de red que sólo serán
utilizados por los clientes (y que serán válidos dentro de la red privada) que se conecten a
través del servidor VPN. Se debe considerar, que cada cliente conectado simultáneamente
debe tener una dirección IP distinta, por tanto, se debe tener disponible tantas direcciones IP
como conexiones VPN simultáneas se desee tener.
_____________________________
4. En sistemas Red Hat la ruta es: /var/sys/log/messages o /var/log/messages.
5. Estos rangos no deben tener direcciones IP que se estén utilizando por algún equipo dentro de la red, ya que se
producirían conflictos.
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 110
############################################################################
###
# $Id: options.pptpd,v 1.5 2004/04/23 07:11:33 quozl Exp $
#
# Sample Poptop PPP options file /etc/ppp/options.pptpd
# Options used by PPP when a connection arrives from a client.
# This file is pointed to by /etc/pptpd.conf option keyword.
# Changes are effective on the next connection. See "man pppd".
#
# You are expected to change this file to suit your system. As
# packaged, it requires PPP 2.4.2 and the kernel MPPE module.
############################################################################
###
# Authentication
# Encryption
# (There have been multiple versions of PPP with encryption support,
# choose with of the following sections you will use.)
# BSD licensed ppp-2.4.2 upstream with MPPE only, kernel module ppp_mppe.o
# {{{
refuse-pap
refuse-chap
refuse-mschap
# Require the peer to authenticate itself using MS-CHAPv2 [Microsoft
# Challenge Handshake Authentication Protocol, Version 2] authentication.
require-mschap-v2
# Require MPPE 128-bit encryption
# (note that MPPE requires the use of MSCHAP-V2 during authentication)
require-mppe-128
# }}}
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 111
# OpenSSL licensed ppp-2.4.1 fork with MPPE only, kernel module mppe.o
# {{{
#-chap
#-chapms
# Require the peer to authenticate itself using MS-CHAPv2 [Microsoft
# Challenge Handshake Authentication Protocol, Version 2] authentication.
#+chapms-v2
# Require MPPE encryption
# (note that MPPE requires the use of MSCHAP-V2 during authentication)
#mppe-40 # enable either 40-bit or 128-bit, not both
#mppe-128
#mppe-stateless
# }}}
# Logging
# Print out all the option values which have been set.
# (often requested by mailing list to verify options)
#dump
# Miscellaneous
# Create a UUCP-style lock file for the pseudo-tty to ensure exclusive
# access.
lock
Las opciones estándar y necesarias para poder establecer conexiones VPN son las
siguientes:
La opción name corresponde al nombre del servidor, y utilizado por el archivo chap-
secrets. Utilizar el nombre “pptp” es conveniente para saber como están entrando las personas.
En el ámbito de la autenticación de los clientes son las opciones pap, chap, mschap y
mschap-v2. Para el caso de encriptación de datos las opciones las opciones para usar son las
referidas con mppe.
Las opciones ms-dns y ms-wins, son necesarias activar en caso de poseer en la red
local servidores DNS y/o WINS, para que los equipos que se conecten a la red a través del
servidor VPN logren encontrar los nombres de los computadores conectados a la red privada.
La opción proxy-arp se activa para permitir que el servidor VPN actúe como Proxy-
arp. Con esto, el servidor agrega una entrada a la tabla ARP8 con la dirección del cliente. De
esta forma hace que los equipos de la red les parezca que el equipo cliente está en la misma
red.
La opción debug activarla permite aumentar la información y facilitar la solución de
problemas concernientes a la conexión de los clientes al servidor VPN.
_____________________________
6. Opción que dependerá de la configuración que se le ha dado al cliente VPN, es decir, es este el que indica el
nivel de cifrado que tendrán los datos, en caso de requerirlo.
7. Usar esta opción, si se desea considerar a equipos con Windows 98 o inferior, ya que estos en principio sólo
encriptan usando llaves de 40 bits.
8. Convierte direcciones IP en direcciones ethernet.
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 113
Estas son las opciones básicas que deben tener los archivos de configuración del
servidor VPN, para permitir una conexión de los clientes a la red privada a través del servidor
PPTP, de forma segura, aplicando tanto reglas de autenticación como de confidencialidad de
los datos.
______________________________
9. En otras distribuciones linux la ubicación del archivo puede ser otra.
10. La contraseña en este archivo (chap-secrets) está en texto plano, es decir, no esta cifrada, por lo que el
acceso a él debe ser restringido sólo a personas autorizadas o simplemente al administrador del sistema (root)
para que sólo él pueda ver este archivo.
11. Esta dirección IP debe estar dentro del rango especificado en el archivo pptpd.conf.
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 114
Si se utilizan reglas de iptables para configurar el firewall, las reglas que deben ser
aplicadas para permitir el túnel PPTP son las siguientes:
Reglas de entrada:
Reglas de salida:
El servidor PPTP (pptpd) se pondrá automáticamente a escuchar por el puerto TCP 1723, en
espera de conexiones entrantes.
http://192.168.60.1:10000
Con lo que aparecerá la ventana como la de la figura 5.3 en la que se pide el usuario y
el password del administrador del sistema.
____________________________
12. Webmin es una interfaz Web utilizada para administrar y configurar un sistema Unix usando cualquier
navegador que soporte tablas y formularios (y java para el módulo de administración de archivos). La página
oficial de Webmin es http://www.webmin.com/
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 117
Si los datos ingresados son los correctos se redireccionará a la siguiente página, que es
como la de la figura 5.4.
Luego hacer clic en el link “Server VPN PPTP”, aparecerá la página (figura 5.6) donde
se encontrarán los link para configurar las “Opciones del servidor PPTP” (lo que modifica el
archivo pptpd.conf), las “Opciones del PPP” (para configurar el archivo options.pptpd),
modificar las “Cuentas PPP” (crear, borrar o modificar las opciones de cuantas de usuario;
configuración del archivo chap-secrets) y por último el link para administrar las “Conexiones
Activas” del servidor (ver quién se encuentra conectado y desde dónde lo está, su IP y saber
la hora en que inicio la sesión).
En esta página, además se encuentra el botón para aplicar los cambios que se han
realizado al servidor y además el botón para iniciar y/o detener el servidor PPTP.
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 119
Al acceder a las “Opciones del servidor PPTP” se llegará a una página como la de la
figura 5.7.
Las “Opciones del PPP” 13, se verán como las de la figura 5.8.
___________________________________
13. Las opciones de configuración seleccionadas, son las necesarias para que el servidor PPTP pudiera
establecer conexiones VPN, utilizando autenticación MS-CHAPv2 y cifrado MPPE.
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 120
Y por último el link de “Conexiones activas” mostrará una página como la de la figura
5.10.
En esta página (figura 5.10), además de saber que usuario está conectado a la VPN, a que hora
estableció conexión, su IP pública y la que el servidor le ha asignado dentro de la red local, se
puede también desconectar al cliente.
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 121
La conexión que se describirá será para un equipo con Windows XP Profesional. Los
pasos para crear y configurar la conexión son los siguientes:
Ingresar la información requerida y presionar Siguiente. Con esto aparecerá una última
ventana con la que ya se finaliza la creación de la conexión.
En esta última ventana (figura 5.17) el asistente le pregunta si desea agregar un acceso
directo a la conexión en el escritorio de Windows. Luego presionar el botón Finalizar, con lo
que terminará el proceso de creación de la conexión.
La nueva conexión ya ha sido creada y puede accederse a ella ya sea desde el acceso
directo creado o bien desde la ventana “Conexiones de red” (figura 5.18), siguiendo la
siguiente ruta:
Inicio -> Accesorios -> Comunicaciones -> Conexiones de red.
La primera pestaña “General” (figura 5.19) se especifica la IP o el nombre del host del
servidor VPN, es la que se indicó al crear la conexión.
La pestaña “Funciones de red”, figura 5.22, no debe ser modificado a no ser que se
desee por ejemplo, que el propio cliente decida que IP tomará al momento de conectarse a la
VPN, en este caso se deberá modificar en las propiedades del protocolo TCP/IP, al igual como
se modifican estos parámetros al configurar un equipo para trabajar en una red local.
Para crear la nueva conexión PPTP en Windows 98 realizar los siguientes pasos:
Paso 3: En la nueva ventana (figura 5.25) digitar el nombre del servidor o bien su dirección IP.
Apretar Siguiente.
Paso 4: La siguiente ventana que aparecerá es sólo para indicar que se ha terminado de crear
la nueva conexión. Para terminar el proceso, presionar el botón Finalizar. Con esto se creará
un ícono que representa la nueva conexión.
Para modificar las propiedades de la conexión hacer clic con el botón secundario del
mouse e ir a “Propiedades”. Así como se muestra en la figura 5.26
Finalmente, para establecer la conexión con el servidor PPTP hacer doble clic en el
ícono de la conexión, con lo que aparecerá una ventana como la de la figura 5.28. En ella
ingresar el nombre de usuario y la contraseña respectiva para el cliente PPTP y presionar el
botón Conectar.
• Imposible que el cliente pueda establecer conexión con el servidor (estando este
activo):
S1: Verificar que el cliente esté conectado a Internet.
S2: Verificar que el firewall permita el tráfico PPTP.
S3: Verificar que el usuario y la contraseña ingresados por el cliente sean válidos.
S4: Es posible que, ya sea el cliente o bien el servidor no tengan activada la opción de
cifrado, exigiendo la otra parte tal opción. Verificar las opciones de conexión del cliente.
S5: Es posible que estén conectados el máximo de usuarios que permite el servidor de
forma simultánea.
Capítulo 5 Configuración de Servidor VPN Utilizando PPTP bajo Plataforma Linux 131
• El cliente establece la conexión con el servidor PPTP pero no se cifran los datos (el
servidor está configurado para que cifre los datos):
S1: Verificar que en el servidor se encuentre cargado el módulo ppp_mppe. Para listar los
módulos cargados teclear en una consola Linux el comando lsmod. Para cargar el módulo
teclear como root: modprobe ppp_mppe
• El cliente establece la conexión con el servidor PPTP , pero no tiene comunicación con
el resto de los equipos de la red privada:
S1: Verificar que el servidor tenga activado el fordward. Para ello teclear como root lo
siguiente: cat /proc/sys/net/ipv4/ip_forward , si el resultado es 0 es porque no está
activado, si es 1, está activado. Para activarlo teclear lo siguiente:
echo “1”> /proc/sys/net/ipv4/ip_forward
S2: Verificar el rango IP que el servidor asigna a los clientes. Este debe ser válido para la
red interna.
Pueden existir otro tipo de problemas a los descritos anteriormente, ya sea con el mismo
servidor PPTP (archivos de configuración relacionados directamente a él), como también a
otras causas, como problemas generales de PPP, o bien relacionados con el hardware
propiamente tal. Sin embargo, los anteriores son los más comunes, y los que pueden dar más
problemas a la hora de administrar el servidor PPTP.
Recomendaciones
• Para poder detectar las posibles causas a los problemas de conexión con el servidor u a
otros relacionados con el mismo, es recomendable tener activada la opción debug,
tanto en el archivo pptpd.conf como en options.pptp.
• El equipo servidor como debe contar con dos tarjetas de red, se debe asegurar de que
ambas estén activas y en conectividad ya sea con la red interna como con el exterior.
• Para que el servidor PPTP funcione como VPN (cifrando los datos) debe estar cargado
el módulo ppp_mppe y tener activados en el archivo options.pptpd la opción require-
mppe para exigir que el servidor cifre los datos.
132
CONCLUSIONES
Tomar la decisión de implementar una VPN está sujeta a las reales necesidades o
requerimientos que tenga ya sea una organización o bien un usuario individual. Como bien se
estudió en el primer capítulo de este informe, la seguridad informática es un elemento
altamente importante para tomar en cuenta y que esta nunca estará ciento por ciento asegurada,
por lo que implementar las medidas más actuales y robustas de seguridad informática no es
sinónimo de que nuestra información esté libre de amenazas. Sin embargo, contar con ellas
minimiza en gran medida el riesgo.
Tanto la seguridad que se desea a la hora de una comunicación como también los costos
económicos, son los argumentos principales que se analizan para contar ya sea con una acceso
remoto o bien para interconectar redes privadas. Se vio que una VPN trae consigo
innumerables beneficios, principalmente relacionados con la seguridad que estas ofrecen como
también con los menores costos económicos en su implementación en comparación a la de
contratar líneas dedicadas.
Sin embargo, también tienen desventajas como el hecho de no contar con acceso a
Internet completamente asegurado desde cualquier parte, o de la rapidez de transferencia de
datos, que son algunas limitantes de las conexiones Internet, sobre todo para aquellas
organizaciones que deseen interconectar sus redes LAN y que los flujos de datos que se
transmiten son demasiado grandes, lo que implica en una disminución del ancho de banda y
que hace que en estos casos por ejemplo, contratar un línea dedicada sea una mejor solución.
Para aquellas organizaciones sobre todo pequeñas que quieran proveer a sus empleados
de acceso a su Intranet, por dar un ejemplo, en forma remota, una VPN es una buena solución
que conjuga adecuadamente el compromiso entre la seguridad (autenticación y
confidencialidad) y el costo que ofrecen en la comunicación de los datos.
133
En efecto, en este informe de dio a conocer una configuración de un servidor VPN con
protocolo PPTP, la cual no siendo la mejor evaluada (por expertos en seguridad) en cuanto a la
seguridad que ofrece, en comparación a la utilización de IPSec, sí es una buena alternativa
para quienes quieran implementar una VPN para dar acceso remoto seguro por ejemplo a
empleados móviles, principalmente si estos usuarios al igual que la mayoría en la actualidad
aún utilizan como plataforma de trabajo a Windows.
Como conclusión cabe señalar también la ventaja de implementar este tipo de servidor
en el propio hogar, ya que sin estar frente a nuestro equipo por ejemplo, sí podríamos
establecer una conexión con él a través de Internet con mecanismos que nos garantizan una
alta seguridad en la comunicación. También esta solución puede estar orientada a los propios
administradores de los sistemas de una empresa, quienes desde su propio hogar pueden tener
acceso a los servidores o a otros recursos y desde allí realizar el mismo trabajo que el que
harían al estar en su propia oficina.
BIBLIOGRAFÍA
_____________________________
1. Las RFC son una serie de documentos de acceso público, que detallan prácticamente todo lo relacionado
con las tecnologías empleadas en Internet: protocolos, recomendaciones, comunicaciones, etc. La página oficial
donde se encuentran alojadas las RFC es http://rfc.net/
136
GLOSARIO
Confidencialidad: Proceso que asegura que nadie que se tope con el flujo cifrado de datos
pueda leerlo.
Contraseña: Medida básica de seguridad que proporciona autenticación al usuario.
Criptografía: Ciencia del cifrado/descifrado.
Criptoanálisis: Ciencia de volver a convertir el texto cifrado en el texto simple original sin el
uso de la clave cifrada.
Descifrado: Proceso de revertir el proceso de cifrado, mediante el cual el texto se convierte
de no legible en legible.
Diffie-Hellman (DH): Algoritmo de clave pública desarrollado por Diffie y Hellman en 1976,
el cual permite la transferencia de claves secretas en un medio inseguro, como
Internet.
EAP: Extensible Authentication Protocol, Protocolo de autenticación extensible. Al utilizar
EAP, se pueden agregar varios esquemas de autenticación, entre los que se incluyen
tarjetas de identificación, contraseñas de un sólo uso, autenticación por clave pública
mediante tarjetas inteligentes, certificados y otros.
Encabezado o cabecera de autenticación (AH): Una de las normas IPSec que considera la
integridad de los paquetes de datos.
Encapsulamiento: proceso de colocar un datagrama dentro de un paquete de datos de otro
paquete de la red.
Entropía: Medida matemática que mide la cantidad de incertidumbre.
ESP: Información útil de seguridad del encapsulado. Una de las normas de IPSec que
proporciona la confidencialidad de los paquetes de datos.
Firewall: Máquina que conecta el perímetro de la red confiable de una compañía a una red no
confiable. Proporciona protección contra ataques al utilizar filtración de puertos,
traducción de direcciones y tecnologías para inspección.
Firma digital: Una firma digital es equivalente a una firma manuscrita, donde el usuario
firma su clave pública con un valor de transformación del código para asegurar que
no haya rechazo.
Frame Relay: Frame Relay es una tecnología de conmutación rápida de tramas, basada en
estándares internacionales, que puede utilizarse como un protocolo de transporte y
como un protocolo de acceso en redes públicas o privadas proporcionando servicios
de comunicaciones.
139