RADIUS - Guía rápida
Antes de comenzar a aprender sobre Radius, es importante que comprenda:
- ¿Qué es AAA?
- ¿Qué es NAS?
Entonces, primero tengamos una idea básica sobre estos dos temas.
¿Qué es AAA?
AAA significa Autenticación, Autorización y Contabilidad.
Autenticación
Se refiere a la confirmación de que un usuario que solicita un servicio es un usuario válido.
Realizado mediante la presentación de una identidad y credenciales.
Los ejemplos de credenciales incluyen contraseñas, tokens de un solo uso, certificados digitales y números de teléfono (llamadas / llamadas).
Autorización
Se refiere a la concesión de determinados tipos de servicio (incluido el "no servicio") a los usuarios en función de su autenticación.
Puede basarse en restricciones, por ejemplo, restricciones de hora del día o restricciones de ubicación física, o restricciones contra múltiples inicios de sesión por parte del mismo usuario.
Algunos ejemplos de servicios incluyen filtrado de direcciones IP, asignación de direcciones, asignación de rutas, cifrado, servicios diferenciales / QoS, control de ancho de banda / gestión del tráfico, etc.
Contabilidad
Se refiere al seguimiento del consumo de recursos de la red por parte de los usuarios.
La información típica que se recopila en la contabilidad incluye la identidad del usuario, la naturaleza del servicio prestado, cuándo comenzó el servicio y cuándo terminó.
Puede usarse para administración, planificación, facturación, etc.
El servidor AAA proporciona todos los servicios anteriores a sus clientes.
Protocolos AAA
Radius es un protocolo AAA para aplicaciones como Network Access o IP Mobility. Además de Radius, tenemos los siguientes protocolos en AAA:
Sistema de control de acceso del controlador de acceso al terminal (TACACS)
TACACS es un protocolo de autenticación remota que se usa para comunicarse con un servidor de autenticación comúnmente usado en redes Unix. TACACS permite que un servidor de acceso remoto se comunique con un servidor de autenticación para determinar si el usuario tiene acceso a la red.
TACACS +
TACACS + proporciona control de acceso para enrutadores, servidores de acceso a la red y otros dispositivos informáticos en red a través de uno o más servidores centralizados. Utiliza TCP y proporciona servicios independientes de autenticación, autorización y contabilidad. Funciona en el puerto 49.
DIÁMETRO
El diámetro es un reemplazo planificado de Radius.
¿Qué es el servidor de acceso a la red?
El servidor de acceso a la red (NAS) es un elemento de servicio que los clientes marcan para obtener acceso a la red. Un NAS es un dispositivo que tiene interfaces tanto para la red troncal como para los POTS o ISDN, y recibe llamadas de los hosts que desean acceder a la red troncal mediante servicios de marcado. NAS está ubicado en el punto de presencia de un proveedor de Internet para proporcionar acceso a Internet a sus clientes.
Un servidor de acceso a la red es:
Un único punto de acceso a un recurso remoto.
Un servidor de acceso remoto, porque permite el acceso remoto a una red.
Un punto de entrada inicial a una red.
Una puerta de enlace para proteger el recurso protegido.
Ejemplos incluyen:
Verificación de acceso a Internet mediante ID de usuario y contraseña.
VoIP, FoIP y VMoIP requieren un número de teléfono o una dirección IP válidos.
La tarjeta telefónica prepaga utiliza un número de tarjeta prepago.
La siguiente figura muestra una arquitectura básica de Radius.
RADIUS es un protocolo para transportar información relacionada con la autenticación, autorización y configuración entre un servidor de acceso a la red que desea autenticar sus enlaces y un servidor de autenticación compartido.
RADIUS son las siglas de Remote Authentication Dial In User Service.
RADIUS es un protocolo AAA para aplicaciones como el acceso a la red o la movilidad IP
Funciona en ambas situaciones, local y móvil.
Utiliza el Protocolo de autenticación de contraseña (PAP), el Protocolo de autenticación por desafío mutuo (CHAP) o los protocolos de Protocolo de autenticación extensible (EAP) para autenticar a los usuarios.
Busca en archivo de texto, servidores LDAP, base de datos para autenticación.
Después de que los parámetros de los servicios de autenticación se devuelvan al NAS.
Notifica cuando una sesión comienza y se detiene. Estos datos se utilizan para fines de facturación o estadísticas.
SNMP se utiliza para la supervisión remota.
Se puede utilizar como proxy.
Aquí hay un diagrama de red simple de radio:
Aquí hay una lista de todas las características clave de Radius:
Modelo cliente / servidor
NAS funciona como cliente del servidor Radius.
El servidor Radius es responsable de recibir las solicitudes de conexión del usuario, autenticar al usuario y luego devolver toda la información de configuración necesaria para que el cliente brinde el servicio al usuario.
Un servidor Radius puede actuar como cliente proxy para otros servidores Radius.
Seguridad de la red
Las transacciones entre un cliente y un servidor se autentican mediante el uso de una clave compartida. Esta clave nunca se envía a través de la red.
La contraseña se cifra antes de enviarla a través de la red.
Mecanismos de autenticación flexibles
Radius admite los siguientes protocolos para fines de autenticación:
Protocal punto a punto - PPP
Protocolo de autenticación de contraseña - PAP
Protocolo de autenticación por desafío mutuo: CHAP
Inicio de sesión simple en UNIX
Protocolo extensible
El radio es extensible; la mayoría de los proveedores de hardware y software Radius implementan sus propios dialectos.
El protocolo sin estado, que usa UDP, se ejecuta en el puerto 1812.
Antes de que el cliente comience a comunicarse con el servidor Radius, se requiere que la clave secreta se comparta entre el cliente y el servidor y el cliente debe estar configurado para utilizar el servidor Radius para obtener el servicio.
Una vez que el cliente esté configurado correctamente, entonces:
El cliente comienza con Access-Request.
El servidor envía Access-Accept, Access-Reject o Access-Challenge.
Access-Accept mantiene todos los atributos requeridos para brindar servicio al usuario.
Los códigos de radio (decimal) se asignan de la siguiente manera:
- 1 Solicitud de acceso
- 2 Acceso-Aceptar
- 3 Acceso-Rechazo
- 4 Solicitud de contabilidad
- 5 Contabilidad-Respuesta
- 11 Desafío de acceso
- 12 Status-Server (experimental)
- 13 Estado de cliente (experimental)
- 255 Reservado
- No hay concepto de Keep Alive: ¿bueno o malo?
Los códigos 4 y 5 están relacionados con la funcionalidad de contabilidad radial. Los códigos 12 y 13 están reservados para un posible uso.
El formato de paquete de Radius es como se muestra a continuación:
Code:Tiene una longitud de 1 octeto (1 byte) e identifica varios tipos de paquetes. Normalmente, 1 octeto significa 1 byte.
Identifier: De nuevo, es de 1 octeto y ayuda a hacer coincidir las respuestas con las solicitudes.
Length:Tiene una longitud de 2 octetos y especifica la longitud del paquete, incluido el código, el identificador, la longitud y el autenticador. (El paquete mínimo es de 20 octetos y el máximo es de 4096 octetos).
Authenticator: Tiene 16 octetos de largo y se completa en caso de algunas solicitudes y respuestas.
List of Attributes: Hay una lista de más de 63 atributos y un atributo Radius también tendrá un formato definido que se describe en el siguiente capítulo.
Un atributo de radio consta de las siguientes tres partes:
Type:1 octeto largo, identifica varios tipos de atributos. Es un código de atributo que se enumera a continuación.
Length: 1 octeto de longitud, longitud del atributo, incluido el tipo.
Value: 0 o más octetos de longitud, contiene información específica del atributo.
Lista de atributos de RADIUS
Código | Atributos |
---|---|
1 | Nombre de usuario |
2 | Contraseña de usuario |
3 | CHAP-Contraseña |
4 | Dirección IP del NAS |
5 | Puerto NAS |
6 | Tipo de servicio |
7 | Protocolo enmarcado |
8 | Dirección IP enmarcada |
9 | Máscara de red IP enmarcada |
10 | Enrutamiento enmarcado |
11 | ID de filtro |
12 | MTU enmarcado |
13 | Compresión enmarcada |
14 | Inicio de sesión-IP-Host |
15 | Servicio de inicio de sesión |
dieciséis | Puerto TCP de inicio de sesión |
17 | (no asignado) |
18 | Mensaje de respuesta |
19 | Número de devolución de llamada |
20 | Id de devolución de llamada |
21 | (no asignado) |
22 | Ruta enmarcada |
23 | Red IPX enmarcada |
24 | Estado |
25 | Clase |
26 | Específico del proveedor |
27 | Hora de término de la sesión |
28 | Tiempo de inactividad |
29 | Acción de terminación |
30 | ID de la estación llamada |
31 | ID de la estación de llamada |
32 | Identificador NAS |
33 | Estado de proxy |
34 | Servicio de inicio de sesión LAT |
35 | Iniciar sesión-LAT-Nodo 3 |
36 | Iniciar sesión-LAT-Group |
37 | AppleTalk-Link enmarcado |
38 | Red AppleTalk enmarcada |
39 | AppleTalk-Zone enmarcado |
40-59 | (reservado para contabilidad) |
60 | CHAP-Challenge |
61 | Tipo de puerto NAS |
62 | Límite de puerto |
63 | Iniciar sesión-LAT-Port |
Ejemplo de solicitud de radio
Echemos un vistazo a un ejemplo de solicitud de radio:
El NAS en 192.168.1.16 envía un paquete UDP de solicitud de acceso al servidor RADIUS para un usuario llamado Nemo que inicia sesión en el puerto 3 con la contraseña "arctangent".
El autenticador de solicitud es un número aleatorio de 16 octetos generado por el NAS.
La contraseña de usuario tiene 16 octetos rellenados al final con nulos, XOR con D5 (secreto compartido | Solicitar autenticador)
01 00 00 38 0f 40 3f 94 73 97 80 57 bd 83 d5 cb 98 f4 22 7a 01 06 6e 65 6d 6f 02 12 0d be 70 8d 93 d4 13 ce 31 96 e4 3f 78 2a 0a ee 04 06 c0 a8 01 10 05 06 00 00 00 03
1 Código = Solicitud de acceso (1)
1 Identificador = 0
2 Longitud = 56
16 Solicitar autenticador
Lista de atributos
6 Nombre de usuario = "Nemo"
18 Usuario-Contraseña
6 Dirección IP de NAS = 192.168.1.16
6 puertos NAS = 3
Ejemplo de respuesta de radio
A continuación, se muestra un ejemplo de paquetes de respuesta:
El servidor Radius autentica Nemo y envía un paquete UDP Access-Accept al NAS indicándole a Telnet Nemo que aloje 192.168.1.3
El autenticador de respuesta es una suma de comprobación MD5 de 16 octetos del código (2), id (0), longitud (38), el autenticador de solicitud de arriba, los atributos de esta respuesta y el secreto compartido.
02 00 00 26 86 fe 22 0e 76 24 ba 2a 10 05 f6 bf 9b 55 e0 b2 06 06 00 00 00 01 0f 06 00 00 00 00 0e 06 c0 a8 01 03
1 Código = Acceso-Aceptar (2)
1 Identificador = 0 (igual que en Solicitud de acceso)
2 Longitud = 38
Autenticador de 16 respuestas
Lista de atributos:
6 Tipo de servicio (6) = Iniciar sesión (1)
6 Servicio de inicio de sesión (15) = Telnet (0)
6 Inicio de sesión-IP-Host (14) = 192.168.1.3
El diámetro es un reemplazo planificado de RADIUS. Es un protocolo AAA para aplicaciones como el acceso a la red y la movilidad IP. A continuación se enumeran algunos puntos que debe conocer sobre el diámetro:
Está diseñado para funcionar tanto en situaciones AAA locales como en itinerancia.
El diámetro es solo el doble del protocolo anterior Radius.
Utiliza TCP o SCTP y no UDP.
Utiliza seguridad de nivel de transporte (IPSEC o TLS).
Tiene un identificador de 32 bits en lugar de 8 bits.
Es compatible con el modo sin estado y con estado.
Admite reconocimiento de la capa de aplicación, define la conmutación por error.
Ofrece un mejor soporte de roaming.
Utiliza AVP.
El diámetro permite definir nuevos comandos y atributos. Es fácil de extender.
¿Lo que sigue?
Ahora tienes un conocimiento básico de Radio y Diámetro. Para obtener más conocimientos sobre estos protocolos, debe revisar varios RFC y otros recursos mencionados en la sección Recursos.