SlideShare una empresa de Scribd logo
OpenVPN




            Jesús Moreno León
          Alberto Molina Coballes
            Redes de Área Local

                Junio 2009
Introducción

El proyecto OpenVPN desarrolla una implementación de
  VPNs basadas SSL/TLS
Las razones de su desarrollo son las limitaciones y
  problemas de IPSec y el rápido desarrollo de SSL
Se trata de un producto de software libre liberado bajo los
  términos de la GPL que fue creado por James Johan en el
  año 2001
Características principales

●   El componente principal es el driver tun/tap utilizado para
    simular interfaces de red, que se encarga de levantar el
    túnel y encapsular los paquetes a través del enlace virtual
●   Encriptación y autenticación con OpenSSL
●   Utiliza un único puerto TCP o UDP → fácil para firewalls
●   Multiplataforma → misma herramienta funcionando sobre
    distintos SO vs implementaciones diferentes de un mismo
    estándar en distintas arquitecturas
●   Compresión de datos LZO
Algunos problemas

●   No es compatible con IPSec, el estándar para soluciones
    VPN
●   Comunidad no muy amplia
●   Faltan dispositivos con clientes OpenVPN integrados




       COMPARATIVA: OpenVPN - IPSec
Modos de funcionamiento

●   Modo túnel
      Emplea el driver tun y es utilizado para crear túneles
      virtuales operando con el protocolo IP
●   Modo puente
      Utiliza el driver tap y es empleado para túneles que
      encapsulan directamente paquetes Ethernet. Se recomienda
      en las siguientes situaciones:
       –   La VPN necesita encapsular protocolos no-IP
       –   Se ejecutan aplicaciones que necesitan network broadcasts
       –   No se cuenta con un servidor Samba y se necesita que los
           usuarios puedan navegar por los ficheros compartidos
Autenticación

  La autenticación de los extremos remotos de una
  conexión SSL/TLS está basada en el modelo de claves
  asimétricas RSA
  Los participantes intercambian sus claves públicas a
  través de certificados digitales X.509, que han sido
  firmados previamente por una Autoridad de Certificación
  en la que se confía
Instalación

  Muy sencilla; puede hacerse desde los repositorios o
  descargando el tarball

   ●   Descomprimimos el fichero:
         tar xvzf openvpn-[version].tar.gz

   ●   Nos movemos al directorio openvpn y compilamos e
       instalamos:
         ./configure
         make
         make install
Creación CA y certificados

Para implementar una infraestructura OpenVPN es necesario
configurar una PKI (public key infrastructure):
●   Un certicado para la autoridad de certificación (CA) y una
    clave privada con los que firmar cada certificado de
    servidores y clientes
●   Un certificado (clave pública) y una clave privada para
    cada servidor y cliente


                         HOWTO
Creación de los ficheros de configuración

      La aplicación OpenVPN (de GNU/Linux) utiliza un único
      fichero de configuración donde se especifican los
      parámetros de túnel VPN SSL que se quiere establecer, y
      puede tener cualquier nombre
      Ejemplos de ficheros
      Parámetros comunes:
●   auth alg         ●   key key_file        ●   proto protocol
●   cipher alg       ●   log log_file        ●   port port
●   comp-lzo         ●   remote IP           ●   server ip mask
●   dev device       ●   ca cert_file        ●   verb level
●   route ip mask    ●   tls-client          ●   tls-server
Establecer la VPN

●   Para arrancar el servidor:
       openvpn [server config file]
       ¡OJO! Hay que tener en cuenta varias cuestiones
       importantes:
        –   Hay que abrir el puerto 1194 UDP (o el que se haya
            configurado) en el firewall y redirigir la petición a la máquina
            donde corra OpenVPN
        –   En la máquina OpenVPN hay que permitir las peticiones
            entrantes a la interfaz tun/tap
●   Para arrancar los clientes:
       openvpn [client config file]
Establecer la VPN

  Si se instaló OpenVPN desde repositorio el instalador crea
  un script de inicio. Cuando se ejecuta, el script buscará
  ficheros .conf en el directorio /etc/openvpn e iniciará un
  demonio diferente de OpenVPN para cada fichero
  encontrado

Más contenido relacionado

PDF
Guía de configuracion Openvpn
PDF
OpenVPN
ODP
OpenVPN como solución de Redes Privadas Virtuales Corporativas
PDF
Tutorial Instalacion Openvpn
PPT
Piranha
PPTX
IPTABLES y SQUID‏
PPTX
Ccna security-ch2-securing-network-devices
PPT
Exposicion sistemas seguridad_linux_software_libre
Guía de configuracion Openvpn
OpenVPN
OpenVPN como solución de Redes Privadas Virtuales Corporativas
Tutorial Instalacion Openvpn
Piranha
IPTABLES y SQUID‏
Ccna security-ch2-securing-network-devices
Exposicion sistemas seguridad_linux_software_libre

La actualidad más candente (20)

ODP
Tecnologías libres para túneles y VPNs
PPTX
Tecnicas avanzadas de penetracion a sistemas
PPTX
Evitar Ataque a MikroTik Webproxy y DNS cache
PPTX
Seguridad de las redes
PDF
Unidad iii seguridad de redes
DOC
Manual endian
PDF
ODP
PDF
Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2
PDF
Instalación de Servidores GNU/Linux - PROXY SQUID (parte 3)
PDF
Configuraion vpn
PDF
Unidad iii seguridad de redes bmos
PDF
Squid proxy transparente en ubuntu
PDF
Filtrado der contenido web con GNU/Linux y Squid
PPT
Presentacion Squid
ODP
Conexion a servidor irc
ODP
Instalación ftp, telnet y ssh sobre linux
DOCX
Manual de instalacion Piranha
PDF
Vnc final
Tecnologías libres para túneles y VPNs
Tecnicas avanzadas de penetracion a sistemas
Evitar Ataque a MikroTik Webproxy y DNS cache
Seguridad de las redes
Unidad iii seguridad de redes
Manual endian
Instalación y Configuración SSH CentOS 6.5 / RHEL 6.2
Instalación de Servidores GNU/Linux - PROXY SQUID (parte 3)
Configuraion vpn
Unidad iii seguridad de redes bmos
Squid proxy transparente en ubuntu
Filtrado der contenido web con GNU/Linux y Squid
Presentacion Squid
Conexion a servidor irc
Instalación ftp, telnet y ssh sobre linux
Manual de instalacion Piranha
Vnc final
Publicidad

Destacado (20)

PDF
Openvpn
PPT
OpenVPN
PDF
Conclusiones informe secunia
PDF
Test de intrusión (I): intelligence gathering
ODP
Informe Seguridad Secunia 2010
PDF
Seguridad y Alta Disponibilidad: vulnerabilidades
PDF
Scratch: diseño abierto- un proyecto artístico
PDF
Scratch: creando un baile interactivo
PDF
Scratch: desarrollo colaborativo
PDF
Almacenamiento_y_copias
PDF
Scratch: introducción a las creaciones informáticas
PDF
Seguridad y Alta Disponibilidad: ataques
PDF
Scratch: secuencias de instrucciones
PDF
Introducción a la seguridad informática
PDF
Scratch: paralelismo y eventos
PDF
Cloud Storage, Almacenamiento en la nube
PDF
Sad tema2 pen_test_iii
PDF
Test de intrusion
PDF
Sad tema2 pen_test_ii
PDF
Estructura de internet
Openvpn
OpenVPN
Conclusiones informe secunia
Test de intrusión (I): intelligence gathering
Informe Seguridad Secunia 2010
Seguridad y Alta Disponibilidad: vulnerabilidades
Scratch: diseño abierto- un proyecto artístico
Scratch: creando un baile interactivo
Scratch: desarrollo colaborativo
Almacenamiento_y_copias
Scratch: introducción a las creaciones informáticas
Seguridad y Alta Disponibilidad: ataques
Scratch: secuencias de instrucciones
Introducción a la seguridad informática
Scratch: paralelismo y eventos
Cloud Storage, Almacenamiento en la nube
Sad tema2 pen_test_iii
Test de intrusion
Sad tema2 pen_test_ii
Estructura de internet
Publicidad

Similar a OpenVPN: una solución VPN basada en SSL/TLS (20)

PDF
Redes Privadas Virtuales y cómo configurar routers de Teltonika
PDF
188997662 como-configurar-servidor-punto-multipunto-con-open vpn-y-cliente-en...
PDF
Openvp non redhat
PDF
IMPLEMENTACIÓN DE OPENVPN EN RED HAT 6.2
PDF
Openvp non redhat
PDF
Despliegue de Imágenes en aulas de informática
DOCX
Trabajo de 2 previo en sistemas operativos en red
PDF
Servicio VPN con OpenVPN y Latch sobre Raspberry Pi
PPT
Presentacion Leydi Ramirez Leyva
PDF
Extensiones remotas seguras en Elastix
ODP
Hardening Telnet ssh final
PDF
Configuracion vpn
PDF
HTTPS: Usted, úselo bien.
PDF
Practica 15 21 qde cota
PDF
Vip genial conceptos de red 127145558 capa-de-transport-e
PPTX
PPT
Mikrotik RouterOs basics v0.3 español
Redes Privadas Virtuales y cómo configurar routers de Teltonika
188997662 como-configurar-servidor-punto-multipunto-con-open vpn-y-cliente-en...
Openvp non redhat
IMPLEMENTACIÓN DE OPENVPN EN RED HAT 6.2
Openvp non redhat
Despliegue de Imágenes en aulas de informática
Trabajo de 2 previo en sistemas operativos en red
Servicio VPN con OpenVPN y Latch sobre Raspberry Pi
Presentacion Leydi Ramirez Leyva
Extensiones remotas seguras en Elastix
Hardening Telnet ssh final
Configuracion vpn
HTTPS: Usted, úselo bien.
Practica 15 21 qde cota
Vip genial conceptos de red 127145558 capa-de-transport-e
Mikrotik RouterOs basics v0.3 español

Más de Jesús Moreno León (20)

PDF
Pensamiento computacional e inteligencia artificial en la educación
PDF
Investigación sobre el desarrollo del pensamiento computacional en la escuela
PDF
Tecnología educativa en infantil
PDF
Programación y robótica en la escuela. ¿Un juego de niños pasajero?
PDF
On the development of computational thinking skills in schools through comput...
PDF
Assessing computational thinking with tools in the classroom
PDF
On the quest for assessing computational thinking
PDF
Can we Measure Computational Thinking with Tools? Present and Future of Dr. S...
PDF
El repositorio de proyectos Scratch. Nuevas oportunidades de investigación y ...
PDF
Code to learn in k-12?
PDF
How social are Scratch learners? A comprehensive analysis of the Scratch plat...
PDF
Code to Learn with Scratch? A systematic literature review
PDF
La programación informática como vía de emprendimiento. Programamos.
PDF
Dr. Scratch, una herramienta de asistencia al docente en la evaluación de pro...
PDF
Developing Mathematical Thinking with Scratch: An Experiment with 6th Grade S...
PDF
Analyze your Scratch projects with Dr. Scratch and assess your Computational ...
PDF
La programación informática y el desarrollo del pensamiento computacional en ...
PDF
Dr. Scratch, Análisis de proyectos Scratch para medir el desarrollo del a Pen...
PDF
The Europe Code Week (CodeEU) initiative
PDF
Computer Programming as an Educational Tool in the English Classroom: a preli...
Pensamiento computacional e inteligencia artificial en la educación
Investigación sobre el desarrollo del pensamiento computacional en la escuela
Tecnología educativa en infantil
Programación y robótica en la escuela. ¿Un juego de niños pasajero?
On the development of computational thinking skills in schools through comput...
Assessing computational thinking with tools in the classroom
On the quest for assessing computational thinking
Can we Measure Computational Thinking with Tools? Present and Future of Dr. S...
El repositorio de proyectos Scratch. Nuevas oportunidades de investigación y ...
Code to learn in k-12?
How social are Scratch learners? A comprehensive analysis of the Scratch plat...
Code to Learn with Scratch? A systematic literature review
La programación informática como vía de emprendimiento. Programamos.
Dr. Scratch, una herramienta de asistencia al docente en la evaluación de pro...
Developing Mathematical Thinking with Scratch: An Experiment with 6th Grade S...
Analyze your Scratch projects with Dr. Scratch and assess your Computational ...
La programación informática y el desarrollo del pensamiento computacional en ...
Dr. Scratch, Análisis de proyectos Scratch para medir el desarrollo del a Pen...
The Europe Code Week (CodeEU) initiative
Computer Programming as an Educational Tool in the English Classroom: a preli...

Último (20)

PDF
Salcedo, J. et al. - Recomendaciones para la utilización del lenguaje inclusi...
PDF
Breve historia de los Incas -- Patricia Temoche [Temoche, Patricia] -- Breve ...
DOCX
V UNIDAD - PRIMER GRADO. del mes de agosto
PDF
Crear o Morir - Andres Oppenheimer Ccesa007.pdf
PDF
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
PDF
Romper el Circulo de la Creatividad - Colleen Hoover Ccesa007.pdf
PDF
Cronograma de clases de Práctica Profesional 2 2025 UDE.pdf
PDF
el - LIBRO-PACTO-EDUCATIVO-GLOBAL-OIEC.pdf
PDF
Híper Mega Repaso Histológico Bloque 3.pdf
PDF
TRAUMA_Y_RECUPERACION consecuencias de la violencia JUDITH HERMAN
PDF
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
PDF
Guia de Tesis y Proyectos de Investigacion FS4 Ccesa007.pdf
PDF
Escuela de Negocios - Robert kiyosaki Ccesa007.pdf
PDF
Tomo 1 de biologia gratis ultra plusenmas
PPT
Cosacos y hombres del Este en el Heer.ppt
PDF
CONFERENCIA-Deep Research en el aula universitaria-UPeU-EduTech360.pdf
PDF
Educación Artística y Desarrollo Humano - Howard Gardner Ccesa007.pdf
PDF
COMPLETO__PROYECTO_VIVAN LOS NIÑOS Y SUS DERECHOS_EDUCADORASSOS.pdf
PDF
Lección 6 Escuela Sab. A través del mar rojo.pdf
DOCX
2 GRADO UNIDAD 5 - 2025.docx para primaria
Salcedo, J. et al. - Recomendaciones para la utilización del lenguaje inclusi...
Breve historia de los Incas -- Patricia Temoche [Temoche, Patricia] -- Breve ...
V UNIDAD - PRIMER GRADO. del mes de agosto
Crear o Morir - Andres Oppenheimer Ccesa007.pdf
SESION 12 INMUNIZACIONES - CADENA DE FRÍO- SALUD FAMILIAR - PUEBLOS INDIGENAS...
Romper el Circulo de la Creatividad - Colleen Hoover Ccesa007.pdf
Cronograma de clases de Práctica Profesional 2 2025 UDE.pdf
el - LIBRO-PACTO-EDUCATIVO-GLOBAL-OIEC.pdf
Híper Mega Repaso Histológico Bloque 3.pdf
TRAUMA_Y_RECUPERACION consecuencias de la violencia JUDITH HERMAN
GUIA DE: CANVA + INTELIGENCIA ARTIFICIAL
Guia de Tesis y Proyectos de Investigacion FS4 Ccesa007.pdf
Escuela de Negocios - Robert kiyosaki Ccesa007.pdf
Tomo 1 de biologia gratis ultra plusenmas
Cosacos y hombres del Este en el Heer.ppt
CONFERENCIA-Deep Research en el aula universitaria-UPeU-EduTech360.pdf
Educación Artística y Desarrollo Humano - Howard Gardner Ccesa007.pdf
COMPLETO__PROYECTO_VIVAN LOS NIÑOS Y SUS DERECHOS_EDUCADORASSOS.pdf
Lección 6 Escuela Sab. A través del mar rojo.pdf
2 GRADO UNIDAD 5 - 2025.docx para primaria

OpenVPN: una solución VPN basada en SSL/TLS

  • 1. OpenVPN Jesús Moreno León Alberto Molina Coballes Redes de Área Local Junio 2009
  • 2. Introducción El proyecto OpenVPN desarrolla una implementación de VPNs basadas SSL/TLS Las razones de su desarrollo son las limitaciones y problemas de IPSec y el rápido desarrollo de SSL Se trata de un producto de software libre liberado bajo los términos de la GPL que fue creado por James Johan en el año 2001
  • 3. Características principales ● El componente principal es el driver tun/tap utilizado para simular interfaces de red, que se encarga de levantar el túnel y encapsular los paquetes a través del enlace virtual ● Encriptación y autenticación con OpenSSL ● Utiliza un único puerto TCP o UDP → fácil para firewalls ● Multiplataforma → misma herramienta funcionando sobre distintos SO vs implementaciones diferentes de un mismo estándar en distintas arquitecturas ● Compresión de datos LZO
  • 4. Algunos problemas ● No es compatible con IPSec, el estándar para soluciones VPN ● Comunidad no muy amplia ● Faltan dispositivos con clientes OpenVPN integrados COMPARATIVA: OpenVPN - IPSec
  • 5. Modos de funcionamiento ● Modo túnel Emplea el driver tun y es utilizado para crear túneles virtuales operando con el protocolo IP ● Modo puente Utiliza el driver tap y es empleado para túneles que encapsulan directamente paquetes Ethernet. Se recomienda en las siguientes situaciones: – La VPN necesita encapsular protocolos no-IP – Se ejecutan aplicaciones que necesitan network broadcasts – No se cuenta con un servidor Samba y se necesita que los usuarios puedan navegar por los ficheros compartidos
  • 6. Autenticación La autenticación de los extremos remotos de una conexión SSL/TLS está basada en el modelo de claves asimétricas RSA Los participantes intercambian sus claves públicas a través de certificados digitales X.509, que han sido firmados previamente por una Autoridad de Certificación en la que se confía
  • 7. Instalación Muy sencilla; puede hacerse desde los repositorios o descargando el tarball ● Descomprimimos el fichero: tar xvzf openvpn-[version].tar.gz ● Nos movemos al directorio openvpn y compilamos e instalamos: ./configure make make install
  • 8. Creación CA y certificados Para implementar una infraestructura OpenVPN es necesario configurar una PKI (public key infrastructure): ● Un certicado para la autoridad de certificación (CA) y una clave privada con los que firmar cada certificado de servidores y clientes ● Un certificado (clave pública) y una clave privada para cada servidor y cliente HOWTO
  • 9. Creación de los ficheros de configuración La aplicación OpenVPN (de GNU/Linux) utiliza un único fichero de configuración donde se especifican los parámetros de túnel VPN SSL que se quiere establecer, y puede tener cualquier nombre Ejemplos de ficheros Parámetros comunes: ● auth alg ● key key_file ● proto protocol ● cipher alg ● log log_file ● port port ● comp-lzo ● remote IP ● server ip mask ● dev device ● ca cert_file ● verb level ● route ip mask ● tls-client ● tls-server
  • 10. Establecer la VPN ● Para arrancar el servidor: openvpn [server config file] ¡OJO! Hay que tener en cuenta varias cuestiones importantes: – Hay que abrir el puerto 1194 UDP (o el que se haya configurado) en el firewall y redirigir la petición a la máquina donde corra OpenVPN – En la máquina OpenVPN hay que permitir las peticiones entrantes a la interfaz tun/tap ● Para arrancar los clientes: openvpn [client config file]
  • 11. Establecer la VPN Si se instaló OpenVPN desde repositorio el instalador crea un script de inicio. Cuando se ejecuta, el script buscará ficheros .conf en el directorio /etc/openvpn e iniciará un demonio diferente de OpenVPN para cada fichero encontrado