Servidor Radius en Debian

Evidentemente si has llegado hasta este post es porque ya sabes qué es un servidor de autenticación Radius, así que las explicaciones las dejaremos de lado. Sin embargo, a pesar de que existen muchos artículos que abordan este tema, estos no siempre nos funcionan a la primera. Bueno, en este post trataremos de que nuestro servidor quede correctamente configurado al primer intento. Lo primero que debemos hacer utlizar los mismos repositorios. El usar otros repositorios podría cambiar ligeramente el proceso de configuración descrito en este post. Bien, vayamos al grano, estos son mis repositorios:
#Repositorios no Libres
deb http://http.us.debian.org/debian/ lenny main contrib non-free

# Seguridad
deb http://security.debian.org/ lenny/updates main contrib
deb-src http://security.debian.org/ lenny/updates main contrib

#### Unstable (sid)
deb http://ftp.fi.debian.org/debian/ unstable main non-free contrib
deb-src http://ftp.fi.debian.org/debian/ unstable main non-free contrib
# deb http://mirrors.kernel.org/debian/ sid main contrib non-free
# deb-src http://mirrors.kernel.org/debian/ sid main contrib non-free

#### Testing
deb http://ftp.fi.debian.org/debian/ testing main contrib non-free
# deb-src http://ftp.fi.debian.org/debian/ testing main contrib non-free
# deb http://security.debian.org/ testing/updates main contrib non-free

#### Experimental
deb http://mirrors.kernel.org/debian/ experimental main contrib non-free
# deb-src http://mirrors.kernel.org/debian/ experimental main contrib non-free
Luego ejecutamos los comandos los siguientes comandos
apt-get clean
apt-get update
Instalamos los paquetes necesarios
apt-get install apache2
apt-get install mysql-server
apt-get install freeradius freeradius-mysql
Editamos el archivo de usuarios (que serían los host o o usuarios finales que harían peticiones de autenticación)
gedit /etc/freeradius/users
En el archivo hay varios ejemplos de usuarios. Descomentamos (borramos este símbolo: #) el usuario steve que viene como ejemplo. Nos quedaría algo así:

 

En este caso he agregado el usuario toshiba y su clave será cisco. Para probar que el servidor autentica correctamente debemos hacer lo siguiente:
En modo root primero detendremos el servicio:
/etc/init.d/freeradius stop
Iniciamos el modo debug
freeradius -X
Verificamos la autenticación por parte del servidor servidor
radtest steve testing 127.0.0.1 1812 testing123
Debemos obtener algo como esto
Sending Access-Request of id 115 to 127.0.0.1 port 1812
 User-Name = "toshiba"
 User-Password = "cisco NAS-IP-Address = 127.0.1.1
 NAS-Port = 1812
rad_recv: Access-Accept packet from host 127.0.0.1 port 1812, id=115, length=38
 Service-Type = Framed-User
 Framed-Protocol = PPP
 Framed-Compression = Van-Jacobson-TCP-IP

Con esto el servidor ya estaría listo para aunteticar usando los parámetros que trae por defecto. Evidentemente estos deben ser cambios y se le deben agregar algunas otras funcionalidades. En otro post explicaré cómo hacer que nuestro servidor autentique usando usuarios almacenados en una base de datos de MySQL.

Saludos y espero les sea de utilidad.

Comentarios