# OpenVPN

> Proteger OpenVPN Access Server con Ironchip mediante SAML o RADIUS con NPS: crear la aplicación, configurar el servidor, dar acceso y probar el cliente.

URL: https://docs.ironchip.com/identidad/integraciones/red/openvpn/

Esta guía explica cómo integrar **OpenVPN Access Server** con Ironchip por [SAML](https://docs.ironchip.com/identidad/protocolos/saml/) o por [RADIUS](https://docs.ironchip.com/identidad/protocolos/radius/) a través de [NPS](https://docs.ironchip.com/identidad/integraciones/red/nps/).

## SAML

### Requisitos

- OpenVPN Access Server configurado.
- Acceso a la consola de administración de Ironchip.

### Configuración en Ironchip

1. Ve a **Applications** y haz clic en **New Application**.
2. Ponle un nombre descriptivo a la aplicación y selecciona el tipo de integración **SAML**.

   [Imagen: Ventana de nueva aplicación con tipo SAML]

3. Al seleccionar el tipo, aparece abajo el botón **Download metadata file**. Descarga los metadatos: se los proporcionarás al proveedor de servicio (SP), en este caso OpenVPN.

### Configuración en OpenVPN

1. En OpenVPN, ve a **Authentication > SAML**.

   [Imagen: Apartado Authentication > SAML en OpenVPN]

2. Activa SAML. A continuación introducirás los metadatos descargados.

   [Imagen: Activación de SAML en OpenVPN]

3. OpenVPN ofrece dos opciones para introducir los metadatos: con el archivo descargado o de forma manual. En esta guía se usa el archivo: en **Configure Identity Provider (IdP) Automatically via Metadata**, haz clic en **Seleccionar archivo**.

   [Imagen: Selección del archivo de metadatos]

4. Selecciona el archivo de metadatos y haz clic en **Upload**. Para comprobar que se ha añadido correctamente, ve a la configuración manual: los campos deben estar rellenos con los datos correspondientes.

   [Imagen: Campos de la configuración manual rellenos con los metadatos]

5. Añade los metadatos del SP (OpenVPN) a la aplicación de Ironchip. En el apartado **Service Provider (SP) identity and URL**, copia la URL de **SP Identity**.

   [Imagen: Apartado Service Provider (SP) identity and URL]

6. Pega esa URL en el campo **Metadata URL** de la aplicación que estás creando en la consola de administración de Ironchip.

   :::note
   En la versión actual de la consola, este campo está en el apartado **Service Provider (SP)** de la aplicación: en **SP Metadata**, elige **URL**, pega la URL y haz clic en **Import**.
   :::

7. En OpenVPN, ve a **Authentication > Settings**, selecciona SAML como método de autenticación, haz clic en **Save Settings** y después en **Update Running Server** para aplicar los cambios.

   [Imagen: Settings con SAML como método de autenticación]

### Dar acceso a los usuarios

1. Entra en la aplicación creada en la consola de Ironchip y haz clic en el botón verde **Add access**.

   [Imagen: Botón Add access de la aplicación]

2. Selecciona el usuario que hará la autenticación.

   [Imagen: Selección del usuario que hará la autenticación]

3. Selecciona el nombre de usuario con el que accederá a la VPN.

   [Imagen: Selección del nombre de usuario para la VPN]

4. Configura las condiciones de acceso.

   [Imagen: Condiciones de acceso]

### Comprobación con el cliente de OpenVPN

Al crear una nueva conexión en el cliente, te redirige al portal de cliente de OpenVPN, donde puedes elegir entre usar un usuario local o SAML.

[Imagen: Portal del cliente de OpenVPN con la opción de SAML]

[Imagen: Autenticación con Ironchip desde el portal]

[Imagen: Conexión establecida en el cliente de OpenVPN]

## RADIUS

### Requisitos

- El rol de NPS instalado en un servidor.
- Acceso a la interfaz de administración de OpenVPN con permisos de administrador.
- Acceso a la consola de administración de Ironchip con permisos de administrador.

### Configuración en Ironchip

1. Ve a **Applications** y selecciona **MFA Integrations**.

   [Imagen: Apartado MFA Integrations]

2. Haz clic en **ADD MFA** y ponle un nombre descriptivo, en este caso `OpenVPN`.

   [Imagen: Creación de la integración MFA con el nombre OpenVPN]

3. En la ventana siguiente, copia o descarga las credenciales.

   [Imagen: Ventana para copiar o descargar las credenciales]

4. Vuelve a **Applications** y selecciona **New Application**. Añade un nombre descriptivo, selecciona el método de integración que acabas de crear y, en el apartado que se habilita, añade la política que crearás más tarde en el servidor.

   [Imagen: Nueva aplicación con la integración MFA y la política]

### Configuración de NPS

1. Crea dos grupos en el Directorio Activo: uno para autenticar con Ironchip y otro para los usuarios que no necesitan MFA.
2. Con los grupos creados y los usuarios asignados, abre la administración de NPS y crea una **política de red**.

   [Imagen: Creación de una política de red en NPS]

3. En la ventana siguiente, haz clic en **Add > User Groups** y añade uno de los grupos creados.

   [Imagen: Adición de un grupo de usuarios a la política]

4. Haz clic en **Next** hasta llegar a **Configure Authentication Methods**. Marca **Encrypted authentication (CHAP)** y **Unencrypted Authentication (PAP, SPAP)**. Haz clic en **Next** hasta finalizar.

   [Imagen: Métodos de autenticación CHAP y PAP seleccionados]

5. Ve a **RADIUS Clients** y crea un cliente RADIUS que apunte a OpenVPN Server. Indica un nombre descriptivo (el del SP al que apunta), la IP y el secreto compartido, que puedes escribir o generar automáticamente.

   [Imagen: Cliente RADIUS apuntando a OpenVPN Server]

6. En la consola de Ironchip, ve al apartado **Plugins** y descarga el plugin de NPS en el servidor.

   [Imagen: Apartado Plugins de la consola de Ironchip]

7. Ejecuta el plugin, acepta los términos y condiciones y rellena los parámetros:

   - La API key, que está en el archivo de credenciales que descargaste al crear la integración MFA.
   - En **NPS Policies**, la política que quieres proteger con Ironchip.

   [Imagen: Parámetros del plugin de NPS]

### Configuración en OpenVPN Server

1. En la interfaz de administración de OpenVPN, ve a **Authentication** y selecciona RADIUS. Activa RADIUS y los accounting reports.

   [Imagen: Activación de RADIUS y accounting reports]

2. Ve a **RADIUS Server**, añade la IP del servidor donde has configurado NPS y el secreto que pusiste en el cliente RADIUS.

   [Imagen: IP del servidor NPS y secreto en OpenVPN]

### Dar acceso a los usuarios

Para que un usuario acceda a la VPN, además de estar en el grupo del Directorio Activo, tienes que generarle un acceso en la aplicación de la consola de Ironchip.

1. Entra en la aplicación en la consola de Ironchip y haz clic en **Add Access**.

   [Imagen: Botón Add Access en la aplicación]

2. Aparecen los usuarios y grupos de la plataforma. Selecciona el usuario que hará la autenticación.

   [Imagen: Lista de usuarios y grupos de la plataforma]

3. En la ventana siguiente se pide un **User Name**. Por defecto está el email: elimina la etiqueta por defecto y escribe el nombre de usuario. Si tienes el Directorio Activo sincronizado, con [AD Connect](https://docs.ironchip.com/identidad/administracion/sincronizacion/ad-connect/) para un directorio on-premise o con una [aplicación empresarial](https://docs.ironchip.com/identidad/administracion/sincronizacion/entra-id/) de Entra ID (antes Azure AD), puedes usar la etiqueta `samAccountName`.

   [Imagen: Campo User Name con la etiqueta samAccountName]

4. Configura las condiciones de acceso.

   [Imagen: Condiciones de acceso]

### Comprobación con el cliente de OpenVPN

En el cliente de OpenVPN, genera un nuevo perfil y usa las credenciales del dominio para conectarte a la VPN.

[Imagen: Nuevo perfil en el cliente de OpenVPN]

Al generar el perfil, te pide autenticarte.

[Imagen: Solicitud de autenticación al conectar]
