Servidor RADIUS con Debian, FreeRADIUS y MySQL

En la entrada de hoy vamos a ver cómo configurar un servidor RADIUS (Remote Authentication Dial-In User Server). RADIUS es un protocolo AAA (Autenticación, Autorización y  registro de Auditoria) empleado  para controlar el acceso a los servicios de red. Para implementar el servidor Radius utilizaremos FreeRADIUS y además lo integraremos con una base de datos MySQL para la gestión de usuarios, todo ello en Linux Debian.


Lo primero que haremos será instalar MySQL y FreeRADIUS, para ello instalamos los paquetes necesarios:

# apt-get install mysql-server
# apt-get install freeradius freeradius-mysql

Una vez instalados los paquetes, pasamos a la configuracion del servidor. Primero nos dirigimos al directorio /etc/freeradius y editamos el fichero users para añadirle un usuario:

# cd /etc/freeradius
# nano users

Editamos el fichero como vemos en la imagen para añadir un usuario, en el ejemplo el usuario “pepe” con contraseña “pepe”:
fichero users
Reiniciamos el servidor FreeRADIUS:

# service freeradius restart

Y comprobamos el correcto funcionamiento:

# radtest pepe pepe 127.0.0.1 1812 testing123

Si todo ha ido bien, nos mostrará una respuesta similar a la de la imagen (Access-Accept):
Una vez tenemos esto, lo que vamos a hacer es que nos autentique los usuarios contenidos en una base de datos, en este caso MySQL que es la que hemos instalado al principio. Para ello editamos el fichero /etc/freeradius/radiusd.conf:

# nano radiusd.conf

Y descomentamos la linea $INCLUDE sql.conf:
Ahora nos dirigimos al directorio /etc/freeradius/sql/mysql y listamos su contenido. Suponiendo que nos encontramos situados en /etc/freeradius/, ejecutamos los siguientes comandos:

# cd sql/mysql
# ls -l

De momento solo nos va a interesar el fichero schema.sql.
Ingresamos en mysql con el usuario root que se creó en la instalción:

# mysql -u root -p

y una vez dentro de MySQL, creamos la base de datos radius y el usuario radius dándole todos los permisos en esa base de datos:

mysql> create database radius;
mysql> grant all on radius.* to radius@localhost identified by 'radius';

Vemos los pasos en la imagen:

Ahora nos cambiamos a la base de datos radius que acabamos de crear y mediante la orden source ejecutamos los scripts contenidos en el fichero schema.sql que nos generará una serie de tablas:

mysql> use radius
mysql> source schema.sql

Podemos comprobar las tablas que se han creado con el siguiente comando:

mysql> show tables

En este punto salimos de MySQL y nos dirigimos de nuevo al directorio /etc/freeradius para editar el fichero sql.conf:

# cd /etc/freeradius
# nano sql.conf

Lo dejamos como vemos en la imagen, en un principio solo tendremos que cambiar el password y poner el que hemos configurado en el usuario que hemos creado para la base de datos radius. Con esto permitimos la conexión entre FreeRADIUS y MySQL :
Ahora editamos el fichero /etc/freeradius/sites-aviable/default :

# cd /etc/freeradius
# nano sites-aviable/default

Buscamos las secciones authorize y accounting y descomentamos donde aparezca la palabra sql:
Ahora ya podemos crear un usuario para que lo autentique el servidor. Para crear los usuarios bastará con insertarlos en la tabla radcheck de la base de datos radius.
Así que ingresamos a la base de datos radius de MySQL:

# mysql -u root -p radius;

Ahora utilizamos la orden describe para que nos muestre los campos que componen la tabla radcheck:

mysql> describe radcheck

En el ejemplo insertaremos un usuario llamado “usuario1” con contraseña “usuario1”:

mysql> INSERT INTO radcheck(username,attribute,op,value)
VALUES(‘usuario1′,’password’,’==’,’usuario1′);

Reiniciamos el servidor FreeRADIUS:

# service freeradius restart

Y testeamos que FreeRADIUS autentica correctamente el usuario que hemos creado:

# radtest usuario1 usuario1 127.0.0.1 1812 testing123

Si todo va bien nos responderá con un “Access-Accept” lo vemos en la imagen:

Con lo que hemos configurado hasta ahora podemos autenticar en local, en los proximos pasos vamos a configurar FreeRadius para que pueda autenticar a clientes remotos.
Volvemos al directorio /etc/freeradius y editamos el fichero sql.conf:

# cd /etc/freeradius
# nano sql.conf

Y descomentamos la linea readclients = yes:
Ahora nos dirigimos al directorio /etc/freeradius/sql/mysql y listamos su contenido, suponiendo que nos encontramos en /etc/freeradius tecleamos los siguientes comandos:

# cd sql/mysql
# ls -l | grep .sql

Lo vemos en la imagen:
Como esta señalado en la imagen, ahora nos hacen falta los ficheros ippool.sql y nas.sql así que ingresamos en la base de datos radius

# mysql -u root -p radius

y corremos los scripts que contienen estos ficheros mediante la orden source:

mysql> source ippool.sql;
mysql> source nas.sql;

Lo vemos en la imagen:
Con el paso anterior se nos han generado una serie de tablas, entre ellas la tabla nas, que es en la que introduciremos los clientes remotos. Los campos a introducir son los siguientes:

  1. nasname: Dirección ip del cliente remoto.
  2. shortname: El nombre con el que queramos identificar al cliente remoto.
  3. type: Ante la duda es recomendable utilizar other.
  4. secret: Es la clave secreta que compartiran servidor y cliente (es el password que configuramos para el usuario radius de la base de datos radius y en el fichero sql.conf ).

Como lo que nos interesa en este punto es comprobar el correcto funcionamiento del servidor FreeRadius, para realizar las pruebas pertinentes, en un principio insertamos en la tabla los datos del propio servidor:

mysql > INSERT INTO nas (nasname, shortname, type, secret)
VALUES (‘10.1.1.5’, ‘servidor’, ‘other’, ‘radius’);

Podemos hacer un select para ver como se han insertado los datos:

mysql> select * from nas;


Reiniciamos el servicio FreeRADIUS y testeamos el correcto funcionamiento:

# service freeradius restart
# radtest usuario1 usuario1 10.1.1.5 1812 radius

Si todo esta bien nos devolvera una respuesta access-accept similar a la imagen:

Y con esto ya tenemos el servidor FreeRADIUS listo. En una próxima entrega veremos cómo configurar un Router Cisco para que utilice nuestro servidor FreeRADIUS para autenticación de usuarios.

 

Anuncios

55 Responses to “Servidor RADIUS con Debian, FreeRADIUS y MySQL”


  1. 1 Yeiner Gamboa renteria 08/23/2012 en 17:16

    cuantos usuarios se pueden autenticar con un mismo usuario y caontraseña?… me gustaria saber como configurar freeradius para que se pueda autenticar un unico usuario con username y contraseña gracias.

    • 2 otreum 08/23/2012 en 20:16

      Sinceramente ignoro cuantos usuarios pueden autenticarse con un mismo usuario y contraseña… Sin embargo para la configuración que propones, en lugar de usar mysql para la gestión de usuarios, puedes simplemente añadir el usuario y contraseña en el fichero users .

  2. 3 Martin 11/24/2012 en 5:43

    Segui los pados pero tengo un error al ejecutar el siguiente comando radtest usuario1 usuario1 127.0.0.1 1812 testing123 en este cado el usuario que agrege al sql es prueba y como contraseña prueba pero me sale reject y no accept nose si me estoy confundiendo a la hora de editar el archivo cd /etc/freeradius/sql.conf dices que ponga una contraseña pero nose a cual te refieres es la contraseña del root? la contraseña para entrar al sql? o que contraseña espero qu me puedas ayudar saludos

    • 4 otreum 11/24/2012 en 13:23

      Hola Martin,
      En la parte del tutorial en la que editamos el fichero sql.conf, donde aparece login =”radius” y password =”radius”, hace referencia al usuario al que hemos dado todos los permisos en la base de datos radius mediante la instrucción: “grant all on radius.* to radius@localhost identified by ‘radius’;” . De tal manera que si tu te quieres conectar a esa base de datos con otro usuario, tendrás que poner el nombre de tu usuario y su contraseña. En el tutorial como el usuario con el que conectamos se llama radius, que es el nombre de usuario que trae pre-configurado el fichero sql.conf, tan solo se ha tenido que modificar la contraseña por la que nosotros le hemos dado a ese usuario. No se si te he aclarado algo, comprueba a ver como lo tienes y me dices…

      Un saludo.

      • 5 Martin 11/24/2012 en 18:45

        Pues nose que estare haciendo mal que no me funciona, en el sql.conf le pongo user root y pass radius y reinicio el freeradius y hago la prueba y me sale packet reject luego cambio y le pongo usuario radius y pass radius pero tampoco nose que sucede

  3. 6 Anónimo 12/15/2012 en 20:18

    Muchas gracias por tu explicación ahora a montar daloradius.

    • 7 otreum 12/15/2012 en 21:41

      Si, la verdad es que mi intenciónn es completar el tutorial con una entrada dedicada a DaloRadius… Por desgracia ahora ando inmerso en otros proyectos y tengo un poco abandonado el blog… Pero a medio plazo espero volver a retomar la actividad normal del blog…

      Un saludo

  4. 8 Anónimo 12/25/2012 en 16:45

    hola, gracias por postear este tutorial de radius…, es algo que aprecio mucho, por el tempo que le has dedicado y por tu desinteres en compartirlo…lo que quisiera es preguntarte es sobre un error que me surgido en una máquina debian squezze con mysql-server-5.1 (5.1.66-0+squeeze1). Al llegar al punto de configurar la base de datos de freeradius, me surge el error siguiente:

    mysql> use radius
    Database changed
    mysql> source schema.sql
    ERROR:
    Failed to open file ‘schema.sql’, error: 2

    …puedo preguntarte si sabes a que es debido?

  5. 9 Anónimo 12/25/2012 en 16:56

    …buenas…el problema de error en abrir el fichero schema.sql error:2 solucionado de la siguiente manera…
    indicar la ruta completa…a veces uno es un poco tonto…, nuevamente gracias por tu post…saludos desde Barcelona…

    • 10 otreum 12/25/2012 en 21:40

      Hola,
      a todos nos pasa muchas veces que estamos dándonos de cabezazos porque algo no nos funciona y es por culpa de algún fallo tonto…
      Me alegro que hayas aprovechado el post.

      Un saludo.

  6. 11 Anónimo 01/22/2013 en 18:01

    la directiva readclients = yes al reiniciar me da error
    porque puede ser.

    • 12 otreum 01/23/2013 en 22:08

      Sinceramente no se el motivo por el que esta directiva te puede dar error… Con esta directiva, tan solo estas habilitando que el servidor radius lea la base de datos para buscar los clientes… ¿cual es exactamente el error que te salta?

      Un saludo

  7. 13 Anónimo 01/24/2013 en 20:10

    es cuando reinicio el servicio con sudo /etc/init.d/freeradius restart indica fail; si lo comento el parametro #readclients = yes y reinicio funciona pero, el problema es que cuando cojo un xp por ejemplo y me conecto asignado la red inalambrica poniendo lo de WPA enterprais para radius y aes o aes+tkip al decir que se conecte me pide que introduzca el nombre y password de usuario, ademas de un dominio que ese campo lo dejo en blanco y al aceptar me vuelve otra vez a preguntar por mis credenciales, y eso que quite el checkbox de lo de los certificados.
    y usando un cliente ubuntu se queda esperando pero no conecta, es como si no accediera a verificar los usuarios de la base de datos.
    por eso digo que a lo mejor es por lo del parametro readclients.

  8. 14 Anónimo 01/24/2013 en 20:12

    a se me olvida por si sirve la version que uso tanto para el seervidor ubuntu de radius como el cliente es la 10.10 no se si sera por compatibilidad a lo mejor¿?

    • 15 otreum 01/24/2013 en 22:27

      En principio yo creo que el tutorial es perfectamente válido para Ubuntu 10.10, no creo que por ahí vayan los tiros… Es normal que no te conecte precisamente porque la directiva readclients es la que determina que busque en la base de datos o no… ahora mismo no se me ocurre nada, que pueda explicar ese error… no se, lo voy mirando…

      Un saludo.

  9. 17 Anónimo 01/25/2013 en 15:09

    a la base de datos entro como root y no cree ningun usuario ni otorge permisos con grant ya que con root se supone que debe dejar hacer culquier cosa.
    incluso puse un usuario en el fichero users.conf; y el caso es que en local como localhost si que me hace lo de access-acept para validar;
    tambien he de decir que segun busque por san goolgle se habia descomentado sql en sites-aviable/default no solo en accounting y autorice sino ademas en session y alguno mas ;
    ¿no se si todas estas cosas influiran en lo de readclients?o ¿quiza algun permiso que haya pasado por alto? pero me extraña ya que le doy permisos de propietario, grupo y otros para que puedan hacer de todo.
    tambien en el archivo clients.conf copie uno de los ejemplos que hay en ese fichero y puse la ip de la puerta de enlace del router wifi para que el servidor radius sepa quien es el cliente, junto con el secreto que es el mismo en el router wifi, con los parametros de shortname y secret.
    una duda cuando se refiere en esta web a donde dice shortname y nasname; lo de cliente remoto ¿se refiere al cliente router wifi que se conecta al servidor radius o a los equipos que se conectan al router wifi???

    • 18 Anónimo 01/25/2013 en 16:34

      aqui pongo el fallo que me muestra el log:

      rlm_sql (sql): Driver rlm_sql_mysql (module rlm_sql_mysql) loaded and linked
      Fri Jan 25 16:47:16 2013 : Info: rlm_sql (sql): Attempting to connect to root@192.168.3.10:/radius
      Fri Jan 25 16:47:16 2013 : Info: rlm_sql_mysql: Starting connect to MySQL server for #0
      Fri Jan 25 16:47:16 2013 : Error: rlm_sql_mysql: Couldn’t connect socket to MySQL server root@192.168.3.10:radius
      Fri Jan 25 16:47:16 2013 : Error: rlm_sql_mysql: Mysql error ‘Can’t connect to MySQL server on ‘192.168.3.10’ (111)’
      Fri Jan 25 16:47:16 2013 : Error: rlm_sql (sql): Failed to connect DB handle #0
      Fri Jan 25 16:47:16 2013 : Info: rlm_sql (sql): There are no DB handles to use! skipped 5, tried to connect 0
      Fri Jan 25 16:47:16 2013 : Error: Failed to load clients from SQL.
      Fri Jan 25 16:47:16 2013 : Error: /etc/freeradius/sql.conf[22]: Instantiation failed for module “sql”
      Fri Jan 25 16:47:16 2013 : Error: /etc/freeradius/sites-enabled/default[159]: Failed to find module “sql”.
      Fri Jan 25 16:47:16 2013 : Error: /etc/freeradius/sites-enabled/default[62]: Errors parsing authorize section.
      Fri Jan 25 16:47:16 2013 : Error: Failed to load virtual server
      Fri Jan 25 16:49:25 2013 : Info: Loaded virtual server inner-tunnel
      Fri Jan 25 16:49:25 2013 : Info: rlm_sql (sql): Driver rlm_sql_mysql (module rlm_sql_mysql) loaded and linked
      Fri Jan 25 16:49:25 2013 : Info: rlm_sql (sql): Attempting to connect to root@192.168.3.10:/radius
      Fri Jan 25 16:49:25 2013 : Info: rlm_sql_mysql: Starting connect to MySQL server for #0
      Fri Jan 25 16:49:25 2013 : Error: rlm_sql_mysql: Couldn’t connect socket to MySQL server root@192.168.3.10:radius
      Fri Jan 25 16:49:25 2013 : Error: rlm_sql_mysql: Mysql error ‘Can’t connect to MySQL server on ‘192.168.3.10’ (111)’
      Fri Jan 25 16:49:25 2013 : Error: rlm_sql (sql): Failed to connect DB handle #0
      Fri Jan 25 16:49:25 2013 : Info: rlm_sql (sql): There are no DB handles to use! skipped 5, tried to connect 0
      Fri Jan 25 16:49:25 2013 : Error: Failed to load clients from SQL.
      Fri Jan 25 16:49:25 2013 : Error: /etc/freeradius/sql.conf[22]: Instantiation failed for module “sql”
      Fri Jan 25 16:49:25 2013 : Error: /etc/freeradius/sites-enabled/default[159]: Failed to find module “sql”.
      Fri Jan 25 16:49:25 2013 : Error: /etc/freeradius/sites-enabled/default[62]: Errors parsing authorize section.
      Fri Jan 25 16:49:25 2013 : Error: Failed to load virtual server

    • 19 evaristo 03/17/2015 en 17:58

      el cliente remoto a que se refiere todos los pasos me funcionan pero el ultimo paso me mando un mensaje que dice , radclient: no response from server for ID 191 socket 3, es el unico error que tengo al generar la linea radtest usuari1 usuari1 10.1.1.5 1812 radius

  10. 20 Anónimo 01/25/2013 en 16:31

    aqui pongo el fallo que me muestra el log:

    rlm_sql (sql): Driver rlm_sql_mysql (module rlm_sql_mysql) loaded and linked
    Fri Jan 25 16:47:16 2013 : Info: rlm_sql (sql): Attempting to connect to root@192.168.3.10:/radius
    Fri Jan 25 16:47:16 2013 : Info: rlm_sql_mysql: Starting connect to MySQL server for #0
    Fri Jan 25 16:47:16 2013 : Error: rlm_sql_mysql: Couldn’t connect socket to MySQL server root@192.168.3.10:radius
    Fri Jan 25 16:47:16 2013 : Error: rlm_sql_mysql: Mysql error ‘Can’t connect to MySQL server on ‘192.168.3.10’ (111)’
    Fri Jan 25 16:47:16 2013 : Error: rlm_sql (sql): Failed to connect DB handle #0
    Fri Jan 25 16:47:16 2013 : Info: rlm_sql (sql): There are no DB handles to use! skipped 5, tried to connect 0
    Fri Jan 25 16:47:16 2013 : Error: Failed to load clients from SQL.
    Fri Jan 25 16:47:16 2013 : Error: /etc/freeradius/sql.conf[22]: Instantiation failed for module “sql”
    Fri Jan 25 16:47:16 2013 : Error: /etc/freeradius/sites-enabled/default[159]: Failed to find module “sql”.
    Fri Jan 25 16:47:16 2013 : Error: /etc/freeradius/sites-enabled/default[62]: Errors parsing authorize section.
    Fri Jan 25 16:47:16 2013 : Error: Failed to load virtual server
    Fri Jan 25 16:49:25 2013 : Info: Loaded virtual server inner-tunnel
    Fri Jan 25 16:49:25 2013 : Info: rlm_sql (sql): Driver rlm_sql_mysql (module rlm_sql_mysql) loaded and linked
    Fri Jan 25 16:49:25 2013 : Info: rlm_sql (sql): Attempting to connect to root@192.168.3.10:/radius
    Fri Jan 25 16:49:25 2013 : Info: rlm_sql_mysql: Starting connect to MySQL server for #0
    Fri Jan 25 16:49:25 2013 : Error: rlm_sql_mysql: Couldn’t connect socket to MySQL server root@192.168.3.10:radius
    Fri Jan 25 16:49:25 2013 : Error: rlm_sql_mysql: Mysql error ‘Can’t connect to MySQL server on ‘192.168.3.10’ (111)’
    Fri Jan 25 16:49:25 2013 : Error: rlm_sql (sql): Failed to connect DB handle #0
    Fri Jan 25 16:49:25 2013 : Info: rlm_sql (sql): There are no DB handles to use! skipped 5, tried to connect 0
    Fri Jan 25 16:49:25 2013 : Error: Failed to load clients from SQL.
    Fri Jan 25 16:49:25 2013 : Error: /etc/freeradius/sql.conf[22]: Instantiation failed for module “sql”
    Fri Jan 25 16:49:25 2013 : Error: /etc/freeradius/sites-enabled/default[159]: Failed to find module “sql”.
    Fri Jan 25 16:49:25 2013 : Error: /etc/freeradius/sites-enabled/default[62]: Errors parsing authorize section.
    Fri Jan 25 16:49:25 2013 : Error: Failed to load virtual server

  11. 21 Anónimo 01/25/2013 en 20:31

    Bueno he encontrado la tonteria que en principio parecia ser y era que tenia que comentar los usuarios del fichero de users.conf; ahora por lo menos me reinicia el servicio bien; pero todavia no no puedo conectarme con clientes. Pero tengo algunas dudas:
    ¿en el archivo de clients.conf hay que poner la funcion clients con la direccion de la puerta de enlace del router wifi en shortname y su secreto?
    ¿al habilitar la directiva readclients, la tabla reacheck sirve para algo?
    ¿donde pones el nombre del equipo en la tabla nas?
    ¿la direccion del tutorial 10.1.1.5 de que es, es de la puerta de enlace del router wifi, o es la de un equipo que se conecta al router?
    ¿la ip del equipo que se conecta al router es dinamica, estatica o da igual el que sea?
    podrias decir como configurar un equipo ubuntu cliente que se conecte al router, con que tipo de cifrado y todo eso; es que no me autentifica con el servidor freeradius y no se porque.

    • 22 otreum 01/25/2013 en 23:39

      ¿en el archivo de clients.conf hay que poner la funcion clients con la direccion de la puerta de enlace del router wifi en shortname y su secreto?

      En el fichero clients van los clientes, en tu caso el roputer wifi. Pero si vas a definir los clientes en el fichero clients, define los usuarios en el fichero users y de esta manera puedes prescindir de la base de datos mysql. Es decir en vez de buscar usuarios y clientes en la base de datos, los buscará en estos ficheros.

      ¿al habilitar la directiva readclients, la tabla reacheck sirve para algo?

      Al habilitar readclients estas indicando al servidor freeradius que busque los clientes en la tabla nas.

      ¿donde pones el nombre del equipo en la tabla nas?

      El nombre con el que quieras identificar a los clientes lo ingresas en el campo shortname de la tabla nas.

      ¿la direccion del tutorial 10.1.1.5 de que es, es de la puerta de enlace del router wifi, o es la de un equipo que se conecta al router?

      La ip 10.1.1.5 en el tutorial es la ip del servidor freeradius y simplemente la utilicé para realizar las pruebas de funcionamiento antes de configurar clientes.

      ¿la ip del equipo que se conecta al router es dinámica, estática o da igual el que sea?

      Es indiferente no influye en nada…

      podrias decir como configurar un equipo ubuntu cliente que se conecte al router, con que tipo de cifrado y todo eso; es que no me autentifica con el servidor freeradius y no se porque.

      No sabria decirte con exactitud, pero yo creo que algo así tendía que funcionar, pero vaya no te lo tomes al pie de la letra porque nunca lo he configurado:

      Abres el network manager y editas la configuración de red inalambrica:

      Seguridad: WPA/WPA2 enterprise.
      Autenticación:EAP protegido (PEAP).
      Versión PEAP: Automático.
      Autenticación interna:MSCHAPv2
      Nombre de usuario: usuario
      Contraseña: contraseña.

      Un saludo.

  12. 23 Anónimo 01/26/2013 en 9:35

    ¿el campo shortname de la tabla nas es el nombre de red es el del router wifi, es decir el de nuestro punto de acceso (SSID)?
    en la tabla nas e puesto como bien dices :
    IP router(puerta enlace)-> nasname
    SSID del punto de acceso del router wifi –> shortname
    type -> other
    ¿en el campo de la tabla ports hace falta definir el puerto 1812 o no pasa nada si se deja en blanco para que este como nulo NULL?
    En secret he puesto el mismo que el del router.
    El campo server que aparece en la tabla nas del tutorial, no aparece en la mia y eso que lo he cogido del archivo nas.sql de /etc/frreradius/sql/mysql/

    te comento lo que he probado donde: ip puerta enlace router es 192.168.3.1
    ip servidor radius 192.168.3.10 y puerta de enlace 192.168.3.1(la del router).

    id nasname shortname type ports secret
    1 192.168.3.1 red1 other NULL secreto
    2 192.168.3.10 red1 other NULL secreto

    he puesto:

    sudo radtest usuario1 usuario1 192.168.3.10 1812 secreto
    resultado access-accept con este funciona; pero cuando lo hago con el router:
    sudo radtest usuario1 usuario1 192.168.3.1 1812 secreto
    me dice que no ha podido; ¿no se porque?
    el router he deshabilitado el firewall, he usado el portforwardin para redireccionar(abrir) el puerto 1812-1813 a la ip de 192.168.3.10,
    incluso he deshabilitado nat para que enrute todo; y nada; es como si solo funcionara en el localhost, no se que puede faltarme para hacerlo funcionar, y en el cliente de xp cuando me pide que meta el usuario y contraseña, me lo vuelve a preguntar como si no le respodiera la base de datos de que ese usuario tiene acceso.

  13. 24 Anónimo 01/28/2013 en 18:05

    Bueno ya lo he reinstalado y ya me funciona, no se que es lo que seria pero ya funciona, gracias de todas formas.
    ¿Como puedo usar MD5 con las contraseñas?
    he probado usando la funcion de MD5 en la tabla radcheck con contraseña de un usuario pero no me conecta, ¿hay que configurar o cambiar algun valor.?
    ¿Accediendo desde dos equipos distintos, uno xp y otro ubuntu con la misma clave y usuario, se conectan; no deberia de dejar solo conectarse a uno de ellos, el que primero accediera?

  14. 25 JohanC 01/30/2013 en 3:55

    quisiera saber de que manera puedo montar un servidor radius, q me permita a los usuarios de la red interna, atraves de una pagina web, registrarse con su correo de la red local, y descargar el certificado privado para instalarlo en la pc?????

  15. 26 Danny 03/05/2013 en 15:25

    Hola, una consulta, he configurado tal cual está en la guía sin embargo, incluyendo el archivo /etc/freeradius/sites-aviable/default y descomentando sql en authorize y accounting, sin embargo los usuarios registrados no se autentican correctamente, mas si es posible con los usuarios que he puesto en el archivos users.
    He revisado cada paso y he revisado los archivos de configuración detalladamente durante 2 días y aún no sé por que sucede esto, me podría ayudar a resolver mi problema. Gracias

  16. 27 Jonathan Jara 03/25/2013 en 20:38

    Buenas tardes, talves puede realizar los 3 mas chillispot es que necesito realizar un portal cautivo que utliza casi los mismos elementos que solo falta el chillispot

  17. 28 Emanuel 05/08/2013 en 15:03

    Hola!! … pregunta : porque en la tabla radpostauth de MySQL solo me muestra las access-reject y no las access-acept ? gracias

  18. 29 jorgetreminio 06/18/2013 en 17:37

    todo me funciona, pero quiero dejar las claves tanto de los usuarios y la de enlace entre BD y Radius encriptada con MD5 y no me funciona.

    alguna manera??, para asi dar seguridad

  19. 30 jorgetreminio 06/18/2013 en 17:57

    la pregunta es :
    ¿como al realizar la autenticacion yo escriba mi clave, la cual en la BD la encripte con MD5 y pueda ser interpretada o desencriptada por radius??

  20. 31 Luis Torres 12/05/2013 en 0:58

    Seguí cada uno de los pasos como viene en el manual y la verdad no me funcionaba, pero la segunda ocasión que decidí hacerlo de nuevo me funciono de manera correcta, Gracias por la información otreum, creo que era algo de paciencia … 😀

  21. 32 Anónimo 02/16/2014 en 22:03

    Gracias men me sirvio mucho

  22. 33 flistom101 04/03/2014 en 21:31

    me da ese mensaje analizado con wireshark cuando el acces-point intenta acceder a freeradius que se debe:

    5574 966.473996000 192.168.5.3 192.168.5.2 RADIUS 215 Access-Request
    5575 966.474690000 192.168.5.2 192.168.5.3 RADIUS 122 Access-Challenge(11) (id=173, l=80)

    • 34 flistom101 04/03/2014 en 21:46

      me da ese mensaje analizado con wireshark cuando el acces-point intenta acceder a freeradius que se debe:

      5574 966.473996000 192.168.5.3 192.168.5.2 RADIUS 215 Access-Request
      5575 966.474690000 192.168.5.2 192.168.5.3 RADIUS 122 Access-Challenge(11) (id=173, l=80)

      Lo estoy acciendo con un access point de link esta es su configuracion:

      Security Mode : WPA2 :

      Cipher Type : PSK

      EAP : 802.1X

      RADIUS Server 1

      IP 192.168.56.2

      Port 1812

      Shared Secret radiusadmin

      • 35 Alberto Castillo 04/03/2014 en 22:40

        Es complicado saber donde esta el problema… Por lo que veo el servidor Radius responde con un “desafio” (Access-Challenge) a la petición de acceso (Access-Request), el siguiente paso tendría que ser que el ap aceptase el desafió y respondiese con otra petición de acceso con la respuesta correcta a ese desafió. En este caso parece que el ap no acepta o no sabe responder a ese access-challenge y por lo tanto lo interpreta como un Access-Reject. Pero así de primeras no sabría decirte donde esta el problema…

        Saludos

  23. 36 Anónimo 05/20/2014 en 9:59

    En este punto:

    “Como lo que nos interesa en este punto es comprobar el correcto funcionamiento del servidor FreeRadius, para realizar las pruebas pertinentes, en un principio insertamos en la tabla los datos del propio servidor”

    Cuando dices propio servidor, ¿te estás refiriendo al equipo donde estamos montando el FreeRadius o al punto de acceso que estamos usando para realizar la autenticación?.

    Gracias por el tutorial, ha sido muy útil!

    • 37 Alberto Castillo 05/20/2014 en 10:31

      Hola,
      Si me estoy refiriendo al propio servidor, ya que en este punto tan solo estamos comprobando que todo funciona ok, pero vaya puedes hacerlo directamente con el punto de acceso y saltarte este punto…

      Saludos.

      • 38 Anónimo 05/21/2014 en 16:36

        Buenas:

        Entonces, la sentencia quedaría tal que así (si no me equivoco):

        INSERT INTO nas (nasname, shortname, type, secret)
        VALUES (’192.168.1.90′, ‘nombreserver’, ‘other’, ‘secreto’);

        Teniendo en cuenta que la IP de mi punto de acceso (DWL-900AP+) es la 1.90, el radtest a realizar sería también a esa IP y con el mismo usuario que he creado anteriormente y probado con el propio servidor.

        Sin embargo, una vez realizado esto y reiniciado freeradius, no funciona el radtest a la anterior IP (mi servidor) lo que es normal, pero tampoco funciona la validación con el punto de acceso.

        ¿Hay que rellenar algún campo más para que esto funcione o solo con eso me valdría? Es una pena que funcione todo pero me entalle en lo más simple…

        Otra pregunta… ¿los certificados por defecto que vienen en freeradius son PEAP y MSCHAPv2?

        Agradezco la pronta respuesta al anterior comentario.

        Gracias y un saludo!

  24. 39 andres gregori 05/24/2014 en 17:06

    EXCELENTE TUTORIAL!! gracias!!

    a quienes preguntan sobre la cantidad de usuarios con un mismo usuario y contraseña, lo pueden ver en

    /usr/share/doc/freeradius/Simultaneous-use

  25. 40 sol 06/20/2014 en 18:35

    hola.. tengo un problema?

    coloque las credenciales erróneas y el puerto se cierra y muestra un mensaje de Conectividad limitada o nula. y no muestra nuevamente el mensaje pidiendome las credenciales. como hago para solucionar este detalle?
    por fa..
    gracias..

  26. 41 Anónimo 02/21/2015 en 21:42

    como lo conecto a un acces point unifi APU?????

  27. 42 evaristo 03/17/2015 en 18:07

    El cliente remoto a que se refiere? , todos los pasos me funcionan pero el ultimo paso me mando un mensaje que dice , radclient: no response from server for ID 191 socket 3, es el unico error que tengo al generar la linea radtest usuari1 usuari1 10.1.1.5 1812 radiu

  28. 43 Leopoldo 03/25/2015 en 14:17

    Hola, tengo una consulta

    He montado un servidor radius pero quiero saber si es posible que los usuarios puedan tener acceso a la red hasta que ingresen a una interfaz web y ahi sea donde introduscan su usuario y contraseña
    (como en infinitum movil de mexico)

    Saludos y me ayudaria muchisimo una respuesta

    • 44 Alberto Castillo 03/25/2015 en 21:27

      Hola Leopoldo,
      Es posible hacer lo que comentas. Para ello busca en google “HotSpot con chillispot y Freeradius” .

      Un saludo.

      • 45 jorge 03/30/2015 en 21:37

        También puedes usar lo sin portal captive.
        ya que los switches y router modernos traen opción para que lo conectes directamente aún estando cableado

  29. 46 dennis 04/11/2015 en 2:25

    Hola!! 😀
    Tengo un problema con freeradius + postgresql en un servidor con ip 10.10.30.10.
    -Siendo puntual, tengo usuario1 en el fichero users y usuario2 en la base de datos.
    -Con radtest 10.10.30.10 1817 testing123 , o sea el NAS local, da el Access-Accept a ambos usuarios. O sea accede sin problemas al postgres.
    -El suplicante usuario1 se conecta al AccessPoint
    -Pero usuario2 es rechazado. Esta máquina esta loca. Que podría estar pasando?? gracias de antemano

  30. 47 Alejandro 04/14/2015 en 14:34

    Muchas gracias por tan buen tutorial, me ha ahorrado mucho tiempo.

    ¿Podrías guiarme para utilizar passwords hasheadas con SHA1?

    Sucede que tengo que utilizar unas tablas de otra aplicación conde ya están las pass encriptadas de esa manera,

    Desde ya muchas gracias

    Alejandro

  31. 48 Ta 04/26/2015 en 4:02

    Buen Post.!

    Pero tengo una duda. Es como seria posible hacer funcionar todo esto con un servidor DHCP, asi para no asignar una IP a aca usuario en la tabla, no sé si me estoy explicando bien.

  32. 49 r2d2 06/15/2015 en 12:01

    En localhost funciona perfectamente pero si quiero acceder al servidor radius desde otra red no puedo. Entiendo que es necesario abrir el puerto 1812 en el router que da acceso al servidor hacia internet, ¿verdad? Estoy teniendo problemas para abrir dicho puerto

  33. 50 Andres 07/23/2015 en 20:00

    EXCELENTE ARTICULO !!!
    gracias por compartir

  34. 51 Ana Portilla 10/22/2015 en 15:16

    Hola!!
    Una pregunta yo estoy realizando un a configuración algo similar, pero con windows server 2008 y una controladora y mis ap, cree 2 grupos de usuario que están en el servidor y en la controladora tengo asignadas 2 redes ejemplo (profesor, alumnos)y en el servidor radius = tengo mis usuarios que pertenecen a cada grupo, pero cuando me quiero conectar a una de las redes no identifica entre ese grupo de usuario al que pertenece, si tu te conectas a la red de profesores todos los usuarios se pueden conectar a esa red, mi pregunta es se puede hacer que solo los usuarios que pertenecen a esa red puedan conectarse?? o no se puede identificar entre los grupos de usuario?

  35. 52 Engelbert Useche 10/17/2016 en 20:19

    Buenas tardes, se que es algo tarde para preguntar en relacion a este tema pero estoy montando dicho servidor y gracias a este tutorial he logrado crear dicho servidor pero he tenido un problema que quisiera consultarte al agregar los datos en la tabla nas :”mysql > INSERT INTO nas (nasname, shortname, type, secret)
    VALUES (‘10.1.1.5’, ‘servidor’, ‘other’, ‘radius’);” la misma me devuelve el siguiente error :”ERROR 1300 (HY000): Invalid utf8 character string:” y no logro llegar a una solucion todo lo demas funciona sin problema incluso cuando ejecuto este comando: ” radtest usuario1 usuario1 127.0.0.1 1812 testing123″ me resulta satisfactorio el problema es cuando quiero agregar los datos en la base de datos. si me podrias ayudar estaria muy agradecido.

  36. 53 Nilder Erwin Camarena Casas 05/03/2017 en 15:06

    Por favor su ayuda,

    Yo quiero saber como poder asignar privilegios a los usuarios creados; ya sea de administrador,de lectura etc.
    Gracias de antemano por la respuesta.


  1. 1 Autenticación AAA basada en servidor (RADIUS) en Router Cisco « Échale un vistazo… Trackback en 08/15/2012 en 19:54
  2. 2 small business ideas Trackback en 09/16/2014 en 9:27

Responder

Introduce tus datos o haz clic en un icono para iniciar sesión:

Logo de WordPress.com

Estás comentando usando tu cuenta de WordPress.com. Cerrar sesión / Cambiar )

Imagen de Twitter

Estás comentando usando tu cuenta de Twitter. Cerrar sesión / Cambiar )

Foto de Facebook

Estás comentando usando tu cuenta de Facebook. Cerrar sesión / Cambiar )

Google+ photo

Estás comentando usando tu cuenta de Google+. Cerrar sesión / Cambiar )

Conectando a %s




TELDAT CTI

TELDAT CTI

VCA-DCV
JNCIA
CCNA

Introduce tu correo electrónico y recibe todas las actualizaciones

Únete a otros 147 seguidores

agosto 2012
L M X J V S D
« Jul   Sep »
 12345
6789101112
13141516171819
20212223242526
2728293031  

Actualizaciones de Twitter

Blog Stats

  • 482,251 Visitas
Creative Commons

A %d blogueros les gusta esto: