30 mar. 2016

Certificados gratuitos Let's Encrypt en Cisco ASA para accesos VPN

Hace unos días se conoció la noticia que el servicio Let's Encrypt alcanzó el millón de certificados emitidos. Esta CA es gratuita, open-source y en ella ya confían la mayoría de los navegadores.

Por eso le voy a dedicar este artículo, para mostrarles como usarla para generar un certificado que vamos a utilizar no para un servidor web, si no para utilizar en nuestro firewall que en este caso será un Cisco ASA, hacia donde los usuarios de nuestra red y otros externos, se pueden conectar por medio de VPN.

Si las PC que se conectan a la VPN, estasen toda administradas por un servidor de dominio, sería suficiente con utilizar un certificado firmado por nuestra CA interna en la que confien todos los equipos. Pero esto no siempre se da en la práctica, por ejemplo podría darse un escenario en que se conecten por VPN clientes o proveedores con pcs particulares, que tengan accesos específicos a algún servicio de nuestra red, y no está mal que utilicemos una CA pública para garantizar identidad en el dominio. Esto, siempre y cuando, utilicemos un nombre de dominio para el acceso y no únicamente la dirección IP, lo que es generalmente más cómodo y fácil de recordar.

Let's Encrypt utiliza un mecanismo de chequeo de propiedad de dominio basado en la validación de un código numérico que se debe ubicar en un path específico del dominio en cuestión, mediante acceso web, que se genera al momento de solicitar el certificado.

Entonces, lo que vamos a hacer es, para generar el certificado de nuestro firewall, primero asociar el dominio que utilizamos para VPN a algún webserver que controlemos, para poder poner el código que Let's Encrypt verificará, luego lo volveremos a mover a la IP original que tiene la outside del firewall y configuraremos el certificado generado en el firewall.

Instalar Let's Encrypt, es tán sencillo como clonar el repositorio de GIT y ejecutar un script que hace todo el proceso de instalación de dependencias. Yo recomiendo instalarlo en un servidor dedicado, y no en el mismo webserver, ya que como la instalación es automática no controlamos específicamente los paquetes que instala. Mejor levantar una virtual dedicada a este servicio.

Contenido completo por Gabriel Soltz en 3OPS

6 comentarios:

  1. Letencrypt si mal no recuerdo genera certificados con lifitime de 90 dias... de ser asi, hay que repetir este procedimiento manual cada 3 meses, que ademas implica dejar sin servicio la VPN dado que requiere cambiar la IP del outside del ASA?

    ResponderEliminar
    Respuestas
    1. Desde noviembre, se pueden generar certificados de cualquier validez.

      Eliminar
    2. No encuentro ninguna referencia de que sea posible, tendras por favor algun link donde confirmarlo?

      Eliminar
    3. My mistake. Aquí esta el motivo.

      https://letsencrypt.org/2015/11/09/why-90-days.html
      https://community.letsencrypt.org/t/pros-and-cons-of-90-day-certificate-lifetimes/4621

      Me había quedado con la fecha correcta pero no con los días, gracias por notarlo :)

      Eliminar
    4. Muchas gracias Cristian, siendo asi continua sin convencerme la solucion, ya que requiere cada 3 meses ejecutar un procedimiento manual algo tedioso, que ademas implica cambiarle la IP del outside del ASA temporalmente. Estoy malinterprentando algo, o es asi?

      Eliminar
    5. Sería asi. Si bien el procedimiento de update es mucho mas rapido q la instalacion original.
      De todos modos quizas te conviene esperar hasta que habiliten más tiempo.

      Eliminar

Gracias por dejar un comentario en Segu-Info
Si vas a dejar una consulta, procura tener habilitado tu perfil en Blogger o deja una forma de contacto.

Gracias por comentar!