Resumen

  • RADIUS/1.1 entrega a TLS la confidencialidad e integridad del salto negociado y elimina allí el secreto RADIUS y los mecanismos de paquete basados en MD5; no modifica RADIUS/UDP ni RADIUS/TCP.
  • El estado decisivo vive en cada enlace: disponer del código, ofrecer radius/1.1, seleccionarlo, exigirlo y retirar el modo antiguo son cinco hechos diferentes.

La capa doble que dejó de aportar seguridad

El RADIUS original nació con una protección incorporada al intercambio. El RFC 2865 describe un secreto compartido entre cliente y servidor y un procedimiento basado en MD5 para ocultar el User-Password. Cuando llegaron RADIUS sobre TLS y sobre DTLS, la conexión adquirió una envoltura criptográfica moderna, pero el paquete conservó el secreto y las operaciones históricas.

La decisión tenía una ventaja inmediata: era posible añadir TLS sin rehacer cada codificador, decodificador y comprobación. Su pasivo se acumuló con el tiempo. Dos capas hacían parte del mismo trabajo y una de ellas dependía de un algoritmo que numerosos entornos de seguridad ya no querían admitir. El RFC 9765 afirma que mantener MD5 dentro del RADIUS/TLS histórico probablemente fue un error. DeKok escribe, además, que participó en aquella decisión.

No es una confesión ornamental. Obliga a mirar la arquitectura como una secuencia de compromisos reversibles. El perfil de DeKok en la IETF sitúa su llegada a RADIUS en 1997 y el inicio de FreeRADIUS en 1999. La web del proyecto muestra un servidor de políticas abierto acompañado de bibliotecas e integraciones. Esa continuidad le permite ver la distancia entre una norma limpia y una instalación que no puede perder autenticación durante el cambio. Aun así, el RFC es consenso de la IETF con categoría Experimental; no es propiedad ni orden unilateral de su autor.

Qué ocurre cuando aparece radius/1.1

ALPN convierte la variante de aplicación en una parte de la negociación TLS. Según el RFC 7301, el cliente ofrece nombres y el servidor escoge uno que ambos conocen. El RFC 9765 reserva radius/1.1 para el nuevo perfil y exige TLS 1.3 o posterior. Si el nombre no se negocia, los pares no pueden comportarse como 1.1 por suposición.

Con el perfil activo, el secreto compartido de RADIUS deja de intervenir. Los campos Request Authenticator y Response Authenticator pasan a transportar un token opaco que relaciona solicitud y respuesta. Identifier ya no cumple su antigua función. Message-Authenticator no se envía. User-Password, Tunnel-Password y otros atributos que antes recibían ofuscación MD5 viajan con su codificación ordinaria, dentro de la confidencialidad de TLS.

La seguridad no se evapora: cambia de dueño. La sesión TLS debe autenticar al extremo adecuado, la política debe autorizarlo, las claves y certificados deben mantenerse y el valor ALPN seleccionado debe poder auditarse. La eliminación del mecanismo de paquete sólo es sólida cuando esa cadena de control funciona.

Cambio pequeño en apariencia, incompatible en operación

RADIUS/1.1 conserva la silueta del protocolo. La cabecera mide lo mismo, Code y Length significan lo mismo y los atributos sencillos mantienen formato y semántica. Usa los puertos ya asignados a RADIUS/TLS y RADIUS/DTLS. Por eso el documento prefiere “perfil de transporte” a “protocolo totalmente nuevo”.

Pero la familiaridad del paquete no autoriza a mezclar estados. Un lado que interpreta 1.0 y otro que interpreta 1.1 tratarán de manera distinta el identificador, los autenticadores y ciertos atributos. La mayoría de solicitudes o respuestas terminará descartada. El fallo evita una aceptación silenciosa insegura, aunque para el usuario se manifieste como denegación o caída del acceso.

También hay un límite semántico. Los datos de CHAP o MS-CHAP pueden seguir siendo atributos opacos. El perfil sustituye el uso de MD5 para autenticar y ofuscar el paquete de ese salto; no reforma cada método de autenticación transportado ni garantiza que un sistema posterior haya abandonado todos sus primitivos heredados.

Una cadena puede vivir en varias épocas

RADIUS se utiliza con proxies y acuerdos de itinerancia. Cada conexión cliente-servidor es un salto distinto. El controlador de acceso puede negociar 1.1 con su proxy local, mientras el proxy remoto mantiene 1.0 dentro de TLS o incluso un transporte no protegido que la organización aún permite. Ninguno de los extremos iniciales ve necesariamente el estado completo.

Por ello, “la plataforma soporta RADIUS/1.1” es una evidencia débil. El RFC recomienda que una implementación compatible con ambos perfiles empiece ofreciendo 1.0 y 1.1. Después de comprobar los dos extremos y observar una negociación correcta, el administrador puede exigir 1.1 y vigilar la conexión. Si aparecen fallos, puede volver provisionalmente al modo dual mientras resuelve la causa.

Esa ruta reduce el riesgo de corte, pero crea una trampa de permanencia. Una capacidad instalada puede no ser nunca seleccionada; una selección ocasional puede no estar exigida; una política exigente en un salto puede coexistir con una excepción indefinida en el siguiente. Un informe honesto necesita cinco columnas:

Pregunta Prueba mínima
¿Existe soporte? Versiones concretas de cliente, servidor y TLS.
¿Se ofrece? Oferta ALPN observada desde el cliente.
¿Se selecciona? Resultado radius/1.1 de la conexión real.
¿Se exige? Fallo controlado cuando el par sólo admite 1.0.
¿Se cerró lo antiguo? Ausencia comprobada de perfiles y transportes heredados en ese salto.

La palabra “migrado” sólo debe aparecer cuando el alcance del informe coincide con los saltos comprobados.

El valor de corregir sin reclamar soberanía

InkBridge presenta a DeKok como creador y responsable de FreeRADIUS. Esa cercanía al código explica su papel, pero no le concede control sobre RADIUS. El protocolo original tiene otros autores; RADEXT e IETF revisan; las bibliotecas TLS implementan; los fabricantes empaquetan; y cada operador decide cuándo deja de aceptar la variante anterior.

La contribución más interesante es, precisamente, respetar esa distribución. RFC 9765 identifica una deuda histórica, conserva el formato que reduce el coste de adopción, desplaza la protección a la capa que ya la proporciona y deja una señal negociada para medir el cambio. Como documento Experimental, todavía pide examen e implementación. Su autoridad práctica crecerá únicamente si los productos exponen el estado y los operadores consiguen cerrar los caminos heredados sin perder el servicio.

Fuentes