# Proxy LDAP

> Instala y configura el proxy LDAP de Ironchip en Windows, sincroniza usuarios y grupos desde LDAP y protege grupos del directorio con Ironchip.

URL: https://docs.ironchip.com/identidad/administracion/sincronizacion/proxy-ldap/

El proxy LDAP de Ironchip se sitúa delante del controlador de dominio LDAP para proteger con Ironchip la autenticación de los usuarios de un grupo concreto, y permite sincronizar usuarios entre LDAP e Ironchip. Esta página es para quien administra la plataforma e integra su directorio LDAP.

## Requisitos

- Una cuenta de administrador de la consola de administración de Ironchip.
- La compañía creada en Ironchip. Para saber qué datos preparar, consulta [Antes de empezar](https://docs.ironchip.com/identidad/protocolos/#antes-de-empezar) en Protocolos de integración.
- Un controlador de dominio LDAP y un equipo Windows donde instalar el proxy.

## Crear la aplicación en Ironchip

El proxy se conecta a Ironchip con la API key de una aplicación de tipo API KEY.

1. Ve a **Applications** y haz clic en **New Application**.
2. Escribe el nombre de la aplicación en **Name** y elige **API KEY** en **Application integration type**.
3. Sigue los pasos de la ventana hasta terminar. La aplicación aparece en el listado de **Applications**.

:::caution[Guarda la API key]
Guarda la API key que se devuelve al crear la aplicación. Solo se muestra esta vez y la necesitarás al configurar el proxy (`ironchip_api_key`).
:::

Para más información, consulta [Aplicaciones](https://docs.ironchip.com/identidad/administracion/aplicaciones/).

## Dar acceso a los usuarios

1. Ve a **Applications** y, en la columna **Add access** de la aplicación, haz clic en **Add**. Se abre la ventana **Add a new access**.
2. En **Select a group**, marca los usuarios o grupos que se autentican a través del proxy y haz clic en **Next**.
3. En **Select usernames**, define el nombre de usuario. Debe ser el mismo con el que el usuario se autentica. Haz clic en **Next**.
4. En **Select authentication policies**, elige el método de autenticación y haz clic en **Next**.
5. En **Review**, revisa el resumen y haz clic en **Add**.

El acceso queda creado con la configuración elegida y puedes cambiarlo en cualquier momento. Para más información, consulta [Dar acceso a usuarios y grupos](https://docs.ironchip.com/identidad/administracion/aplicaciones/#dar-acceso-a-usuarios-y-grupos).

## Descarga

El servicio de proxy LDAP está en la sección **Plugins** de la consola de administración de Ironchip.

## Instalación

1. Mueve el ejecutable descargado a una carpeta del sistema adecuada para ejecutar servicios.
2. Ejecútalo con el parámetro `configuration` para generar el archivo de configuración predeterminado:

   ```powershell
   ldap-windows.exe configuration
   ```

3. Edita el archivo de configuración (consulta la sección siguiente) e instala el servicio:

   ```powershell
   ldap-windows.exe service install
   ```

4. Inicia el servicio:

   ```powershell
   ldap-windows.exe service start
   ```

## Configuración

Puedes modificar el archivo de configuración en cualquier momento. Para que los cambios se apliquen, reinicia el servicio:

```powershell
ldap-windows.exe service restart
```

El archivo de configuración tiene estas propiedades:

- **Ruta**: la ruta del archivo de configuración.
- **`ldap`**:
  - `server_address`: el FQDN del controlador de dominio LDAP.
  - `server_port`: el puerto del controlador de dominio LDAP.
  - `network`: el esquema de comunicación que usa el cliente. Actualmente solo se admite `tcp`.
  - `base_dn`: el DN base al que se adjunta el proxy.
- **`proxy`**:
  - `server_address`: la dirección en la que sirve el proxy.
  - `server_port`: el puerto en el que sirve el proxy.
  - `protected_group`: el nombre del grupo protegido con Ironchip.
  - `network`: el esquema de comunicación que usa el proxy. Actualmente solo se admite `tcp`.
- **`ironchip`**:
  - `ironchip_api_key`: la API key generada para el servicio de Ironchip asociado.
  - `ironchip_host`: la dirección de tu entorno de Ironchip. Normalmente, `https://api.ironchip.com`.

Un archivo de configuración de ejemplo:

```json
{
  "ldap": {
    "server_address": "localhost",
    "server_port": 389,
    "tls_enable": false,
    "key_file": "",
    "cert_file": "",
    "time_out_seconds": 5,
    "network": "tcp",
    "base_dn": ""
  },
  "proxy": {
    "server_address": "0.0.0.0",
    "server_port": 4389,
    "tls_enable": false,
    "key_file": "",
    "cert_file": "",
    "protected_group": "",
    "time_out_seconds": 5,
    "network": "tcp"
  },
  "ironchip": {
    "ironchip_api_key": "<API_KEY>",
    "ironchip_host": "https://api.ironchip.com"
  }
}
```

## Grupos protegidos

Los usuarios que pertenecen al grupo protegido quedan protegidos con Ironchip.

1. En el controlador de dominio, haz clic derecho y selecciona **Nuevo > Grupo**.

   [Imagen: Menú Nuevo > Grupo en el controlador de dominio]

2. Crea el grupo con un nombre específico.

   [Imagen: Ventana de creación del grupo]

   :::note
   El nombre del grupo debe coincidir exactamente con la propiedad `protected_group` de la configuración del proxy LDAP.
   :::

3. Para añadir un usuario al grupo, haz clic derecho en el usuario y selecciona **Agregar a un grupo...**

   [Imagen: Opción Agregar a un grupo en el menú del usuario]

4. Selecciona el grupo y haz clic en **Aceptar**.

   [Imagen: Selección del grupo al que añadir el usuario]

El usuario queda protegido con Ironchip.

## Comprobar la autenticación con LDAP Admin

Con el servicio en marcha y el usuario en el grupo protegido, prueba la autenticación en la aplicación LDAP Admin:

1. Inicia una conexión: haz clic en **Start** y después en **Connect**.
2. Haz clic derecho en **Custom** y selecciona **Properties**.
3. Define estas propiedades y haz clic en **OK**:
   - **Host**: el nombre o la dirección del equipo donde se ejecuta el proxy.
   - **Port**: el puerto en el que sirve el proxy (`server_port` de `proxy`).
   - **Username**: el nombre de usuario que usaste en la configuración del servicio.
4. Haz clic de nuevo en **OK** para iniciar la autenticación.

El usuario recibe una notificación del servicio y autoriza el acceso. La autenticación tarda unos segundos. Cuando termina, ves que el usuario se ha autorizado correctamente.

## Sincronización de usuarios

Para sincronizar los usuarios entre LDAP e Ironchip, el proxy incluye una herramienta:

```powershell
ldap-windows.exe sync-users -ldap-user <user-used-for-bind> -ironchip-user <ironchip admin with access to the dashboard> -export-path <path for the exported users file creation>
```

Estos son los parámetros:

- `-ldap-user`: el usuario que se usa para el bind con el LDAP.
- `-ironchip-user`: un administrador de Ironchip con acceso a la consola.
- `-export-path`: la ruta donde se crea el archivo con los usuarios exportados.

Cuando termina la importación, todos los usuarios están creados en Ironchip.

### Sincronización de un grupo de usuarios

Para sincronizar solo los usuarios de un grupo, usa `sync-users` con un filtro de búsqueda:

```powershell
ldap-windows.exe sync-users -ldap-user <user-used-for-bind> -ironchip-user <ironchip admin with access to the dashboard> --ldap-search-filter "(&(objectClass=person)(memberOf=<group full DN>))"
```

Por ejemplo, si los usuarios pertenecen al grupo `VPNAuthorized`, con el DN `CN=VPNAuthorized,DC=ironchip,DC=com`, el comando es:

```powershell
ldap-windows.exe sync-users -ldap-user <user-used-for-bind> -ironchip-user <ironchip admin with access to the dashboard> --ldap-search-filter "(&(objectClass=person)(memberOf=CN=VPNAuthorized,DC=ironchip,DC=com))"
```

`sync-users` también admite el parámetro `--ldap-search-dn`. Por defecto vale el DN configurado en el archivo de configuración, pero puedes usarlo para sustituir el DN base de la búsqueda en esa ejecución.

## Supervisión

El proxy registra sus eventos en el visor de eventos de Windows con el nombre `Ironchip LDAP Proxy`.

## Desinstalación

Para desinstalar el servicio, ejecuta:

```powershell
ldap-windows.exe service uninstall
```

## Plugins de la consola

Los plugins de Ironchip son herramientas adicionales que se integran con otros sistemas para reforzar la seguridad y la autenticación. En la sección **Plugins** de la consola de administración están todos los plugins disponibles para las distintas integraciones, con sus descargables:

- **Windows NPS**: integra Ironchip con el Servidor de directivas de redes (NPS) de Windows, para usar la autenticación de Ironchip en los recursos protegidos por NPS. Consulta [NPS](https://docs.ironchip.com/identidad/integraciones/red/nps/).

  [Imagen: Plugin Windows NPS en la consola]

- **ADFS**: integra Ironchip con Active Directory Federation Services (ADFS), para autenticar usuarios en aplicaciones y servicios basados en ADFS con las credenciales de Ironchip. Consulta [ADFS](https://docs.ironchip.com/identidad/integraciones/saas/adfs/).

  [Imagen: Plugin ADFS en la consola]

- **LDAP**: integra Ironchip con servidores LDAP, para sincronizar usuarios de forma automática y autenticar con las credenciales de Ironchip. Es el proxy LDAP que describe esta página.

  [Imagen: Plugin LDAP en la consola]

- **Logon** (**Windows Logon**, **Linux Logon** y **MacOS Logon**): agentes que protegen el acceso a los equipos Windows, Linux y Mac. Consulta [Inicio de sesión en Windows](https://docs.ironchip.com/identidad/integraciones/puestos/windows-logon/), [Linux](https://docs.ironchip.com/identidad/integraciones/puestos/linux-logon/) y [macOS](https://docs.ironchip.com/identidad/integraciones/puestos/macos-logon/).

  [Imagen: Plugins Windows Logon, Linux Logon y MacOS Logon en la consola]

- **Passwordless RADIUS**: genera un servidor RADIUS para integrar Ironchip con ese protocolo. Consulta [Servidor RADIUS](https://docs.ironchip.com/identidad/integraciones/red/radius-server/).

  [Imagen: Plugin Passwordless RADIUS en la consola]

- **AD Connect**: sincroniza usuarios para gestionar las identidades directamente desde el AD. Consulta [AD Connect](https://docs.ironchip.com/identidad/administracion/sincronizacion/ad-connect/).

  [Imagen: Plugin AD Connect en la consola]

Para ver la documentación de cada integración, consulta el [índice de integraciones](https://docs.ironchip.com/identidad/integraciones/).
