Configuración del cliente Viscosity con OpenVPN#

Esta guía mostrará cómo configurar el cliente Viscosity para conectarse a una instancia de OpenVPN, utilizando un Nitrokey Pro 2 (o Nitrokey Storage 2), y Autenticación PKCS#11.

Requisitos previos#

Para esta guía, necesitará un servidor remoto OpenVPN instalado y configurado para los clientes. Para el propósito de este documento, hemos utilizado OpenVPN 2.49 instalado en un servidor Debian 10.

Para leer cómo configurar OpenVPN para autenticarse con Nitrokey Pro, puedes consultar la siguiente documentación, ya que en esta guía sólo cubriremos la forma de configurar el cliente Viscosity.

También necesitarás lo siguiente:

  • Un Nitrokey Pro 2 o Nitrokey Storage 2

  • La clave privada del cliente client.key cargada en la Nitrokey

  • Certificado del cliente client.crt cargado en la Nitrokey

  • Utilice un editor de texto para añadir la siguiente configuración a <x id=»51»></x>`<x id=»53»></x><x id=»104»></x>`.

  • Opcional: El archivo de clave secreta compartida, es decir, ta.key

Para más información sobre PKCS#11 la gestión de claves con OpenVPN, consulte la documentación de OpenVPN.

Uso#

  1. Inicie Viscosity y cree una nueva conexión «openVPN» (puede nombrarla como desee)

    img1
  2. Haga clic con el botón derecho en la conexión y haga clic en editar

    img2
  3. Añada la dirección IP de su servidor y configure el puerto según su configuración.

  4. En la autenticación, en Type desplácese hasta SSL/TLS Client (PKCS11)

  5. Seleccione el archivo CA para su conexión

    Opcional: Seleccione el ta.key en la sección TLS-Auth.

    img3
  6. Haga clic en el botón Añadir junto al campo Proveedores y seleccione el módulo PKCS#11 para su Nitrokey. Se pueden especificar múltiples proveedores, y por ejemplo usaremos OpenSC.

    En macOS, la ubicación más habitual de los módulos es el directorio /usr/lib. Consulte la documentación incluida con su software de controlador para saber la ubicación que debe utilizar. El módulo de OpenSC se encuentra en /Library/OpenSC/lib/opensc-pkcs11.so.

    En Windows, la ubicación más común para las bibliotecas es en C:\Program Files o C:\Windows\System32. Las bibliotecas de OpenSC se encuentran generalmente en C:\Program Files\OpenSC Project\OpenSC\pkcs11. Puede haber más de una biblioteca disponible aquí, puedes probar cada una o simplemente añadir ambas.

  7. Elija un método de recuperación en el menú desplegable de Recuperación

    img4
    • Si sólo se va a utilizar una Nitrokey en este ordenador, seleccione Use certificate name below. Si la Nitrokey está actualmente conectada al ordenador, haga clic en el botón Detect para que la Viscosidad rellene automáticamente el campo Nombre. De lo contrario, este campo puede completarse manualmente.

    • En caso de duda, o si se va a utilizar más de una Nitrokey (es decir, varios usuarios), seleccione Prompt for certificate name.

    Si se ha seleccionado Prompt for certificate name, Viscosity detectará automáticamente la clave requerida en la Nitrokey, utilizando el/los módulo/s PKCS#11 especificados. Seleccione uno de los dispositivos encontrados, o introduzca el nombre del serialized id para utilizarlo manualmente. De nuevo, se le pedirá al usuario una contraseña/PIN si es necesario.

  8. Haga clic en el botón Guardar y conéctese desde su interfaz principal

Referencias#

Notas#

  • Viscosity no es gratuito, por lo que puede tener problemas al utilizar la versión gratuita.

  • Estamos considerando el uso de Pritunl como alternativa libre y gratuita.