RADIUS (acrónimo en inglés de Remote Authentication Dial-In User Server). Es un protocolo de autenticación y autorización para aplicaciones de acceso a la red o movilidad IP. Utiliza el puerto 1812 UDP para establecer sus conexiones.
Cuando se realiza la conexión con un ISP mediante módem, DSL, cablemódem, Ethernet o Wi-Fi, se envía una información que generalmente es un nombre de usuario y una contraseña. Esta información se transfiere a un dispositivo Network Access Server (NAS) sobre el protocolo PPP, quien redirige la petición a un servidor RADIUS sobre el protocolo RADIUS. El servidor RADIUS comprueba que la información es correcta utilizando esquemas de autenticación como PAP, CHAP o EAP. Si es aceptado, el servidor autorizará el acceso al sistema del ISP y le asigna los recursos de red como una dirección IP, y otros parámetros como L2TP, etc.
Una de las características más importantes del protocolo RADIUS es su capacidad de manejar sesiones, notificando cuando comienza y termina una conexión, así que al usuario se le podrá determinar su consumo y facturar en consecuencia; los datos se pueden utilizar con propósitos estadísticos.
FreeRadius es un servidor Radius de código abierto.
(Fuente Wikipedia)
Para instalar un servidor freeRadius basta con usar los paquetes própios de la distribución Ubuntu:
aptitude install freeradius freeradius-utils freeradius-ldap
Con estos paquetes tendremos instalado el servidor, utilidades y el plugin para validaciones LDAP. Para instalar el OpenLDAP podemos seguir un artículo ya publicado en este blog:
Una vez instalado el servidor Radius y el servidor OpenLDAP, solo necesitaremos decirle al servidor freeradius que se autentifique con OpenLDAP:
- En /etc/freeradius/sites-available/default descomentamos la linea que pone ldap para habilitar el módulo LDAP
- En /etc/freeradius/modules/ldap configuramos los parámetros de conexión con nuestro OpenLDAP
Con esto ya es suficiente para validarse (recordar reiniciar el servicio). Para probarlo podemos usar radtest:
radtest usuario Contraseña localhost 0 testing123
NOTA: testing123 es la contraseña por defecto que tiene el parámetro secret en el archivo clients.conf .