# Seguridad de transporte en RADIUS vs. RadSec

Al desplegar autenticación segura usando Extensible Authentication Protocol (EAP), la elección del protocolo de transporte — RADIUS sobre UDP frente a RADIUS sobre TLS (RadSec) — desempeña un papel fundamental para determinar con qué seguridad se transmiten los metadatos y los elementos del protocolo a través de la red.

Tanto RADIUS como RadSec pueden transportar mensajes EAP, incluidos los utilizados en métodos comunes como EAP-TLS, PEAP y EAP-TTLS. Aunque el funcionamiento interno del método EAP sigue siendo el mismo, el protocolo de transporte influye en la visibilidad, la integridad, la confidencialidad de los metadatos y el comportamiento operativo.

Este documento compara cómo RADIUS y RadSec afectan al transporte de EAP, centrándose en el cifrado, el uso de secretos compartidos, la exposición de atributos, las implicaciones para el registro y las consideraciones de implementación.

***

### Seguridad del transporte: diferencias principales

Los métodos EAP como EAP-TLS, PEAP y EAP-TTLS proporcionan mecanismos de autenticación entre clientes (supplicants) y servidores de autenticación. Sin embargo, estos métodos no cifran de forma inherente el transporte de metadatos entre nodos intermedios. Esta función corresponde al protocolo de la capa de transporte:

* RADIUS (UDP) transmite mensajes EAP y atributos RADIUS en texto plano.
* RadSec (TLS) cifra todo el paquete RADIUS, asegurando todos los atributos y encabezados del protocolo durante la transmisión.

La tabla siguiente resume estas diferencias, que afectan a la confidencialidad de atributos como la identidad externa, la IP NAS, el ID de la estación que llama y más. Aunque los métodos EAP pueden cifrar las credenciales del usuario (por ejemplo, certificados o contraseñas), los metadatos permanecen expuestos en RADIUS estándar salvo que se use RadSec.

| Protocolo                          | RADIUS                                        | RadSec                                 |
| ---------------------------------- | --------------------------------------------- | -------------------------------------- |
| Protocolo de la capa de transporte | UDP (normalmente)                             | TLS sobre TCP                          |
| Cifrado                            | Sin cifrado del transporte                    | Cifrado completo del transporte        |
| Puerto predeterminado\*            | UDP 1812                                      | TCP 2083                               |
| Notas                              | Sin estado; puede ser filtrado por firewalls. | Con estado; establece túneles seguros. |

\*Aunque estos puertos son los estándares reconocidos, algunas implementaciones pueden personalizarlos por motivos de política local o de infraestructura.

***

### El papel del secreto compartido de RADIUS en ambos protocolos

El secreto compartido de RADIUS se utiliza para la integridad de los paquetes y los comportamientos heredados de cifrado. Esto se aplica independientemente de si el transporte es RADIUS estándar o RadSec.

**Usos clave:**

* **Message-Authenticator AVP**: Garantiza la integridad del paquete mediante HMAC-MD5.
* **User-Password AVP (métodos heredados)**: Cifra las credenciales usando el secreto compartido.
* **Compatibilidad con RadSec**: Incluso en RadSec, el secreto compartido se mantiene para garantizar la compatibilidad con la semántica de RADIUS y los sistemas intermedios.

{% hint style="info" %}
**Nota:** El secreto compartido nunca se transmite por la red; se usa localmente para operaciones HMAC y validación de AVP.
{% endhint %}

***

### Visibilidad de elementos de datos: RADIUS frente a RadSec

Esta tabla compara los elementos de datos clave cuando se usa EAP-TLS sobre RADIUS (UDP) y RadSec (TLS), agrupados por riesgo de visibilidad durante la transmisión.

<table data-full-width="false"><thead><tr><th width="151.4000244140625">Elemento de datos</th><th width="175.0001220703125">RADIUS (UDP)</th><th width="175.80010986328125">RadSec (RADIUS sobre TLS)</th><th>Ejemplo / Notas</th></tr></thead><tbody><tr><td><strong>Paquete RADIUS externo</strong></td><td>Texto plano (sobre UDP o TCP).</td><td>Cifrado (sobre TLS).</td><td>Incluye tanto encabezados como AVPs. Por ejemplo, el paquete es visible en Wireshark o tcpdump.</td></tr><tr><td><strong>Identidad del usuario (identidad externa)</strong></td><td>Enviado en texto plano.</td><td>Cifrado (sobre TLS).</td><td><code>anonymous@organisation.com</code> usado para el enrutamiento de dominios.</td></tr><tr><td><strong>AVPs de RADIUS (atributos)</strong></td><td>Algunos en texto plano (por ejemplo, NAS-IP, User-Name).</td><td>Completamente cifrados en TLS.</td><td><p><code>NAS-IP-Address,</code></p><p> <code>Calling-Station-Id</code></p></td></tr><tr><td><strong>Encabezados de RADIUS</strong></td><td>Texto plano</td><td>Cifrados en TLS</td><td><p>Código (<code>Access-Request</code>), <code>Identificador,</code> </p><p><code>Longitud,</code> </p><p><code>Autenticador</code></p></td></tr><tr><td><strong>Secreto compartido de RADIUS</strong></td><td>No transmitido (usado internamente)</td><td>No transmitido (usado internamente)</td><td>Usado para el cifrado de AVP y la <code>Message-Authenticator</code> validación.</td></tr><tr><td><strong>Carga útil EAP</strong> </td><td>Cifrada entre el cliente y el servidor</td><td>Cifrados en TLS</td><td>Incluye el handshake de TLS, la validación de certificados, etc.</td></tr><tr><td><strong>Credenciales del usuario (certificados/claves)</strong></td><td>Cifradas en el túnel EAP</td><td>Cifradas en el túnel EAP + TLS</td><td>Se aplica a métodos basados en certificados (EAP-TLS) y basados en contraseña (PEAP). Certificado de cliente con sujeto <code>CN=jsmith, OU=IT</code></td></tr><tr><td><strong>Contraseña (p. ej., PEAP o MSCHAPv2)</strong></td><td>Cifrada en el método con túnel (p. ej., PEAP)</td><td>Cifrada en el túnel EAP + TLS</td><td>Se aplica a métodos basados en contraseña.</td></tr></tbody></table>

***

### Privacidad de la identidad: identidad externa frente a identidad interna

Los métodos EAP que usan túnel o certificados (por ejemplo, PEAP, EAP-TTLS, EAP-TLS) admiten identidades externas e internas:

* **Identidad externa**: Se envía en claro en el AVP User-Name para facilitar el enrutamiento por dominio. A menudo se anonimiza (por ejemplo,  `anonymous@domain.com`).
* **Identidad interna**: Se transporta de forma segura dentro del túnel EAP cifrado (por ejemplo, nombre de usuario/contraseña, CN del certificado).

#### Comportamiento entre transportes:

* En **RADIUS**, la identidad externa se envía en texto plano y es visible en la red.
* En **RadSec**, todo el paquete, incluida la identidad externa, está cifrado.

Las preocupaciones de privacidad relacionadas con que la identidad externa se transmita en texto plano con RADIUS pueden mitigarse configurando la privacidad de la identidad o aprovechando certificados de dispositivo que no contengan datos personales identificables (PII) en el atributo de nombre común

{% hint style="info" %}
**Nota**: Algunas plataformas, como el cliente EAP nativo de Windows, pueden no admitir la privacidad de la identidad de forma predeterminada en métodos como EAP-TLS, lo que potencialmente expone la identidad real en la capa externa.
{% endhint %}

#### Identidad externa

La tabla siguiente proporciona una vista general de los valores típicos con los que varias plataformas OS rellenan la identidad externa.

| Tipo de credencial           | Identidad externa                                                                                                                                                                                                           | SO aplicable                                                                                                                                                                  |
| ---------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| Nombre de usuario/contraseña | <p><br><br>Normalmente:<br>- <code>UPN</code><br>- <code>Dirección de correo electrónico</code></p>                                                                                                                         | <ul><li>Windows<br>(se puede anonimizar)</li><li>iOS, iPadOS, macOS<br>(se puede anonimizar)</li><li>Android<br>(se puede anonimizar)</li></ul>                               |
| Certificado de dispositivo   | <p>Propiedad de nombre común (CN) del nombre del sujeto del certificado del cliente. <br><br>Normalmente:<br>- <code>DeviceName</code><br>- <code>Intune Device ID</code> (GUID)<br>- <code>AAD Device ID</code> (GUID)</p> | <p></p><ul><li>Windows<br>(<strong>no se puede anonimizar</strong>) \*</li><li>iOS, iPadOS, macOS<br>(se puede anonimizar)</li><li>Android<br>(se puede anonimizar)</li></ul> |
| Certificado de usuario       | <p>Propiedad de nombre común (CN) del nombre del sujeto del certificado del cliente. <br><br>Normalmente:<br>- <code>UPN</code><br>- <code>Dirección de correo electrónico</code></p>                                       | <p></p><ul><li>Windows<br>(<strong>no se puede anonimizar</strong>)\*</li><li>iOS, iPadOS, macOS<br>(se puede anonimizar)</li><li>Android<br>(se puede anonimizar)</li></ul>  |

\*El cliente EAP utilizado en Windows no admite la privacidad de la identidad para EAP-TLS.

***

### Consideraciones de registro e implementación

#### RadSec (TLS)

RadSec cifra todo el paquete RADIUS, lo que evita la escucha pasiva. Esto traslada el registro y el diagnóstico de la inspección de red al nivel de la aplicación o del servidor RADIUS, ya que estos son los puntos finales que terminan la sesión TLS. Las organizaciones que migren a RadSec deben evaluar los flujos de trabajo de supervisión para adaptarse al tráfico cifrado.

#### RADIUS (UDP)

La transmisión en texto plano de atributos (User-Name, NAS-IP-Address, etc.) simplifica la resolución de problemas y el diagnóstico en vivo, permitiendo capturar paquetes con herramientas mínimas. Sin embargo, esto aumenta el riesgo de exposición de metadatos sensibles durante la transmisión.

#### Compatibilidad de red

La compatibilidad con RadSec no es universal en todos los dispositivos e infraestructuras de red. Muchos conmutadores de red, puntos de acceso inalámbricos y firewalls solo admiten RADIUS tradicional. En entornos mixtos, puede ser necesario un proxy de RadSec a RADIUS para conectar componentes modernos y heredados. Se recomiendan evaluaciones de la infraestructura antes de desplegar RadSec en producción.

***

### Conclusión y conclusiones clave

Transportar métodos EAP mediante RADIUS o RadSec ofrece la misma sólida protección de extremo a extremo para las credenciales del usuario, pero difiere significativamente en cómo se exponen los metadatos y los elementos del protocolo durante la transmisión.

* **Protección EAP de extremo a extremo**: EAP proporciona una protección sólida para las credenciales del usuario tanto sobre RADIUS como sobre RadSec.
* **Diferencia principal**: RADIUS usa UDP y no cifra el propio paquete RADIUS, mientras que RadSec envuelve todo el paquete en TLS, ocultando todos los atributos y encabezados de la red.
* **Confidencialidad de metadatos**: RadSec cifra todos los metadatos (encabezados, atributos e identidad externa), evitando la exposición a nivel de red.
* **Secreto compartido**: El secreto compartido nunca se transmite. Solo se usa localmente para calcular comprobaciones de integridad de mensajes y verificar la autenticidad.
* **Compensaciones**: RadSec proporciona una mayor confidencialidad, pero complica el diagnóstico debido al cifrado, y su compatibilidad no es universal en todos los equipos de red.

***

### Normas y referencias RFC

Para más detalles sobre protocolos y especificaciones:

* EAP (Extensible Authentication Protocol): RFC 3748
* EAP-TLS: RFC 5216
* RADIUS (Remote Authentication Dial-In User Service): RFC 2865
* RadSec (RADIUS sobre TLS): RFC 6614
