Configuración de freeradius en debian
leslie45
Mensajes publicados
71
Estado
Miembro
-
telecom14 Mensajes publicados 26 Estado Miembro -
telecom14 Mensajes publicados 26 Estado Miembro -
Hola a todos, he estado intentando durante semanas configurar Freeradius y LDAP con el objetivo de implementar un portal cautivo. ¡Auxilio! ¡Ayuda! He seguido los comandos que descargué de Google, pero la configuración nunca se ha logrado.
22 respuestas
- 1
- 2
Siguiente
-
Hola Leslie,
Hay bastantes tutoriales en Internet sobre la instalación de FreeRADIUS.
Te doy los pasos principales (para un entorno Linux) a continuación:
1- Verifica que tengas dos interfaces de red (en un entorno Linux Eth0 y Eth1) de las cuales una tenga acceso a Internet (generalmente Eth0).
2- Instala las actualizaciones de paquetes y descarga freeRADIUS:
#apt-get update (para la actualización de los paquetes)
#apt-get install freeradius (para instalar freeRADIUS)
#apt-get install freeradius-ldap (para la compatibilidad LDAP)
A partir de aquí, tienes los elementos necesarios para el funcionamiento de Freeradius - LDAP
--> Varios archivos de configuración deben ser modificados:
3- Configura tu FreeRADIUS:
abre con un editor de texto (gedit, nano, vi,...) el archivo /etc/freeradius/radiusd.conf
Este archivo contiene los elementos principales que permiten la configuración de FreeRADIUS, así como los módulos complementarios (en nuestro caso LDAP)
Este archivo, como todos los archivos de configuración de FreeRADIUS, contiene por defecto un montón de líneas (la mayoría precedidas por un "#"). Este # significa que estas líneas están comentadas y, por lo tanto, NO SON INTERPRETADAS. --> Es lógico que, para activar las funcionalidades que nos interesan, debemos descomentar las líneas adecuadas (quitar el #). ATENCIÓN: casi NUNCA hay que AÑADIR NADA a los archivos de configuración. Por lo general, solo se modifica una o varias partes y se descomenta. Las personas que arruinan el servidor son, por lo general, aquellas que más lo modifican (pero por defecto todo funciona bien y ya está todo presente ;-) ).
En resumen: la parte de este archivo que nos interesa es el módulo LDAP. Solo necesitas encontrar la parte "modules{ " y VERIFICAR que la línea $INCLUDE {confdir}/modules/ está presente, y si es así, deberás quitar el # para activarla (aunque creo que ya está así por defecto) Esta línea significa "incluye los módulos que están en /etc/Freeradius/modules/ y si vas a dar una vuelta por esta carpeta, verás un bonito archivo llamado "ldap" que está presente y esperando a ser configurado :-)
Bien, hasta aquí no hay muchas dificultades, ¿verdad?
Ahora que hemos indicado a radius qué módulo usar, debemos "autorizarlo"
Así que vamos a ir al archivo /etc/Freeradius/sites-available/default para descomentar un poco ^^
--> En este archivo default, en la parte authorize{, verás que la palabra "file" está descomentada, lo que significa que Freeradius permite el uso de un archivo para autenticar a las personas (el archivo "user" para ser precisos). Nosotros queremos usar LDAP, así que busca en esta misma parte la palabra "ldap" y descoméntala. Igualmente, en la parte authenticate{, encuentra las 3 líneas (seguidas) que dicen Auth-Type LDAP{ ldap } y descomenta esas 3 líneas (puedes ayudarte con el viejo CTRL+F para encontrar esas líneas si utilizas un editor de texto gráfico como gedit, por ejemplo). Ahora tienes la configuración correcta para usar tu LDAP con freeradius.
¡Bien! ¿Recuerdas nuestro archivo "ldap" en /etc/Freeradius/modules/? Bueno, es su turno y es sin duda lo más complicado si tienes un directorio LDAP complicado ^^ Vamos con una sonrisa de todas formas:
En este archivo vamos a modificar algunos datos de la parte ldap{
--> Así que localiza la línea server=, descoméntala si no está hecho por defecto y luego reemplaza el valor después del = con la dirección IP de tu LDAP (debido a que supongo que es un servidor Windows). Luego viene la línea identity --> aquí debes proporcionar un usuario de tu LDAP que le dirá a FreeRADIUS "ok, soy Leslie, tengo derecho a leer en el LDAP, así que déjame pasar". En resumen, debe tener al MENOS los derechos para leer en el directorio LDAP para buscar a las personas.
--> Así que llenas esta línea comenzando desde el punto más preciso de tu LDAP (el nombre) y subiendo su árbol (ejemplo: identity = "cn=Leslie,ou=admin,ou=info,dc=DOMAINE,dc=LOCAL") ¡Ten cuidado de respetar las mayúsculas! Después completa bien los términos correctos, de lo contrario el LDAP te echará! ^^
Siguiente línea: password = Aquí simplemente el contraseña de la persona justo arriba :-)
Siguiente línea: basedn = aquí debes indicar la carpeta donde están almacenados los usuarios del LDAP (siempre comenzando desde el punto más preciso) --> ejemplo: basedn = "ou=utilisateurs,dc=DOMAINE,dc=LOCAL".
En general, los problemas vienen de aquí, ya que es fácil cometer errores al rellenar estos campos, jeje. Veremos cómo verificar eso después. Pasemos a la línea filter = --> No modifiques esta línea a menos que estés usando un Active Directory de Windows. Y si es el caso, cambia el "uid=...etc" por sAMAccountName=...(el resto de la línea no cambia)
Vaya, no está tan mal, ¿verdad? Ah, y si sigues usando un Active Directory de Windows, descomenta las dos líneas chase_referrals = yes y rebind = yes un poco más adelante en este mismo archivo (por motivos de compatibilidad con el AD, simplemente).
4- prueba
Bueno, lo más difícil ya está detrás. Vamos a hacer una pequeña prueba para verificar el correcto funcionamiento de nuestras configuraciones:
Antes de ejecutar la prueba, necesitamos reiniciar nuestro servidor FreeRADIUS (ya que los cambios no serán tomados en cuenta :/ podría ser un problema)
#/etc/init.d/freeradius restart (o start si aún no estaba en marcha, pero por defecto debería estarlo).
Pasemos a la prueba: Para eso utilizamos el comando radtest. Este simula una solicitud de autenticación RADIUS con nuestros parámetros actuales.
Aquí está su sintaxis: radtest "login" "contraseña" "@servidor FreeRADIUS" "puerto de conexión" "Secreto Radius"
Algunas explicaciones; bueno, el login y la contraseña serán los identificadores del LDAP que deseas probar
, @servidor FreeRADIUS es "localhost" o "127.0.0.1" porque el servidor está en tu máquina ^^, el puerto por defecto es 1812 (para FreeRADIUS) pero en nuestro caso también puedes poner 0. El Secreto Radius es "testing123" porque seguramente ya lo sabes, pero freeradius contiene una lista de "clientes" en los que los usuarios se conectan (enrutador wifi, switches, ...) identificados en el archivo /etc/Freeradius/clients.conf pero para nuestra prueba, el cliente somos nosotros (localhost) y si te das una vuelta por el archivo, ya existe por defecto y tiene como secreto "testing123" Así que eso es.
Si tu comando funciona: deberías recibir un bonito mensaje rad_recv: acces-accept from host 127.0.0.1 ... lo que significa que la autenticación fue exitosa!
Si no es así, entonces definitivamente hay un problema de configuración (ya sea una línea no descomentada (o mal escrita) o un error en alguno de tus caminos LDAP.
En cualquier caso, te aconsejo que detengas tu FreeRADIUS (con el comando /etc/init.d/freeradius stop) y lo vuelvas a iniciar en modo "debug" (para ver todo lo que hace :D) con el comando freeradius -X Así verás, al volver a hacer un radtest, todas las etapas (en inglés, claro) y, por lo tanto, probablemente los lugares donde se queda atascado :-) )
En cuanto a tu portal cautivo, no sé cuál planeas usar, pero estaré encantado de aportar mis conocimientos si se trata de Chillispot o Coova-chilli (que generalmente causan muchos problemas)
¡Espero haberte ayudado!
¡Buena suerte!
Jak-
Hola,
He estado trabajando con freeradius durante casi un mes y medio en el marco de mi proyecto de pasantía. El objetivo del proyecto es permitir la autenticación y el contabilidad de los usuarios de asterisk a partir de freeradius.
Todos los tutoriales que he consultado hasta hoy no me han permitido avanzar en mi proyecto.
He utilizado radiusclient-ng como cliente radius entre los dos servidores, pero no funciona. Si ya has trabajado en esto, necesitaría tu ayuda.
Gracias por tu contribución.
-
-
¡Ah! ¡Eso lo explica todo! :)
Simplemente no tienes LDAP
Bien, el primer error es mío:
Mi tutorial consistía en la instalación de FreeRADIUS con compatibilidad LDAP (de ahí la instalación del módulo freeradius-ldap), PERO ATENCIÓN, ¡necesitas obligatoriamente un LDAP configurado y listo AL LADO! :)
Debería haberlo especificado, freeradius-ldap no es un LDAP, sino un módulo de compatibilidad con un LDAP :)
Te cito:
apt-get install slapd
Eso es un daemon (un proceso) que gestiona el LDAP :) (basado además en OpenLDAP)
Primero necesitas hacer
#sudo -s para ser root y seguir siéndolo (te pedirá la contraseña de sesión)
#apt-get install slapd para instalar un daemon LDAP (así que tu LDAP)
#apt-get install ldap-utils (para tus pruebas)
#dpkg-reconfigure slapd para configurar tu LDAP
Aquí se vuelve importante:
slapd te pregunta entonces:
1. ¿Pasar la configuración de OpenLDAP? pones "no"
seguido de:
2. Nombre de dominio? respuesta: example.local (pon el nombre de tu empresa, escuela, casa, lo que quieras ^^)
3. Nombre de tu empresa? respuesta: el mismo nombre sin el ".local"
4. ¿Qué base de datos? respuesta: hdb
5. ¿Quieres que la base de datos sea borrada ...? Respuesta: sí
6. ¿Eliminar las bases de datos anteriores? Respuesta: sí
7. Contraseña de administrador? Respuesta: TuContraseña
8. ¿Confirmar esta contraseña? Respuesta: la misma contraseña
9. ¿Autorizar el protocolo LDAPv2? Respuesta: no
Después de eso tu LDAP está creado. Abre entonces el archivo /etc/ldap/ldap.conf que debería existir: aquí está su contenido
ldap_version 3
URI ldap://localhost:389
SIZELIMIT 0
TIMELIMIT 0
DEREF never
BASE dc=example, dc=com
Cambia tu primer dc="el nombre sin .local que indicaste antes"
y tu segundo dc="local"
Luego abre /etc/ldap/slapd.conf y cámbialo de esta forma:
suffix "dc=elnombredesin.local,dc=local"
directory "/var/lib/ldap"
rootdn "cn=Leslie o admin tú decides,dc=nombredesin.local,dc=local"
rootpw TuContraseña
Luego hay que llenar tu LDAP (agrega "ou" (unidades de organización) y usuarios (por ejemplo, nuestra Leslie si no la añadiste antes ^^)
INFO: ejemplo de un LDAP de escuela para que entiendas la arquitectura:
dominio .............ecole.local
................................. /\.............................................
................................./...\...........................................
................................/......\..........................................
.............................. /.........\.........................................
..................ou Profs..........ou Eleves.............
..................../....................../................\......................
...cn=Jean Pierre...........ou CM1.......ou CM2.................
...cn=Anne Marie..................|.................|.....................
............... ... ...................Jenny........Thibault...............
........................................Louis...........Karim...............
Así que llena tu LDAP como mejor te parezca :) escribiendo:
#gedit /etc/ldap/init.ldif (puede que tengas que crearlo)
nota: utiliza este sitio para llenar: http://doc.ubuntu-fr.org/slapd (parte 3: llenar LDAP)
Y avísame cuando termines todo esto :)
¡Ánimo!
Jak-
¡Hoo! ¡Genial!
En mi archivo ldap.conf tenía exactamente lo mismo que te marqué hace unos mensajes. Así que agregué lo que dijiste. ¿Para el segundo dc solo hay que poner "local" o "cequetuasmarqué.local"?
Además, no tengo el archivo /etc/ldap/slapd.conf !! En el directorio /etc/ldap/ los archivos presentes son: ldap.conf, sasl2, schema, slapd.d. Los que están en negrita son archivos.
¡Siento que el final está cerca! :D
Usbeth -
-
-
-
El archivo init.ldif :
# archivo de datos : ~/init.ldif dn: dc=nomsans,dc=local objectClass: dcObject objectClass: organizationalUnit dc: nomsans ou: Nomsans Dot Local dn: ou=people,dc=nomsans,dc=local objectClass: organizationalUnit ou: people dn: ou=groups,dc=nomsans,dc=local objectClass: organizationalUnit ou: groups dn: uid=lionel,ou=people,dc=nomsans,dc=local objectClass: inetOrgPerson objectClass: posixAccount objectClass: shadowAccount uid: lionel sn: Porcheron givenName: Lionel cn: Lionel Porcheron displayName: Lionel Porcheron uidNumber: 1000 gidNumber: 10000 gecos: Lionel Porcheron loginShell: /bin/bash homeDirectory: /home/lionel shadowExpire: -1 shadowFlag: 0 shadowWarning: 7 shadowMin: 8 shadowMax: 999999 shadowLastChange: 10877 mail: lionel.porcheron@nomsans.local postalCode: 31000 l: Toulouse o: Nomsans mobile: +33 (0)6 xx xx xx xx homePhone: +33 (0)5 xx xx xx xx title: System Administrator postalAddress: initials: LP dn: cn=nomsans,ou=groups,dc=nomsans,dc=local objectClass: posixGroup cn: nomsans gidNumber: 10000 displayName: Nomsans group
Debo reemplazar todos los example por "nomsans.local" y com por "local"? ¿Y lionel Porcheron por el perfil creado? No entiendo mucho el tutorial que hizo el tipo :/
Lo siento ^^"
-
-
Hola Usbeth :)
De hecho, si tu servidor LDAP no está "encendido", podrás hacer todas las modificaciones que desees en FreeRADIUS sin resultados ^^
Para tu último mensaje:
Tengo la impresión de que "Leslie" se conecta correctamente (aunque falta el servidor xD):
[ldap] bind as cn=Leslie,ou=admin,ou=info,dc=DOMAINE,dc=LOCAL/mypass to 10.1.69.50:389
Aquí solo se trata de una impresión, de hecho, tu log de FreeRADIUS simplemente utiliza tu archivo ldap (módulo freeradius) para mostrarte esta bonita línea, pero ni siquiera está intentando buscarlo/a.
Pero bueno, has encontrado el problema, y eso es lo principal :)
Necesitas iniciar tu ldap (para hacerlo funcional), y ahí realmente no tengo forma de ayudarte sin información adicional (¿qué comandos has ingresado para instalar/configurar tu ldap?) En mi caso, se trataba de un LDAP de Windows y fue creado con un Windows Server 2008R2.
Tú no tengo la menor idea (simplemente me indicaste que no se trataba de OpenLDAP :) )
Estás cerca del objetivo :)
¡Ánimo!
Jak -
¡Hola! ¡Muchas gracias por responder a mi llamada! Pero ahora solo estoy en el lanzamiento del comando radtest y tengo como respuesta: ¡sin respuesta del servidor!
He visitado algunos tutoriales, pero no ha cambiado nada.
Estoy bien como root, pero el problema es que no veo ningún freeradius en /etc/init.d, lo que significa que el servidor ni siquiera está iniciado. He intentado con service freeradius start, pero me responde "servicio no reconocido". Sin embargo, cuando lanzo radiusd -X, me dice que está "listo para recibir solicitudes".
¿Alguien puede ayudarme? -
¡Lo siento, pero ya logré resolver el problema! Creo que era un problema de certificado y un problema de comando, ¡intenté "raduisd restart" y voilà, funcionó!
Así que continuaré, ¡hasta pronto! -
Bonjour,
He logrado realizar todo lo que dijiste. Sin embargo, tengo un error durante la prueba. ¡No consigo encontrarlo! ¿Puedes ayudarme?
Estoy en Ubuntu.
Aquí están todos mis archivos de configuración (solo lo estrictamente mínimo):
radiusd.conf :
La siguiente línea está bien descomentada:$INCLUDE ${confdir}/modules/
default :authenticate { Auth-Type PAP { pap } Auth-Type CHAP { chap } Auth-Type MS-CHAP { mschap } digest should unix Auth-Type LDAP { ldap }
ldap :ldap { # # Nota que esto necesita coincidir con el nombre en el LDAP # certificado del servidor, si estás usando ldaps. server = "10.1.69.50" identity = "cn=Mickael,ou=admin,ou=info,dc=DOMAINE,dc=LOCAL" password = "123456789" basedn = "ou=utilisateurs,dc=DOMAINE,dc=LOCAL" filter = "(uid=%{%{Stripped-User-Name}:-%{User-Name}})" #base_filter = "(objectclass=radiusprofile)"
He verificado alrededor de no sé cuántas veces y no encuentro el error.
Aquí está el comando que escribo con radtest :radtest Mickael 123456789 127.0.0.1 1812 testing123
Esto es lo que aparece en el terminal al escribir este comando :Sending Access-Request of id 210 to 127.0.0.1 port 1812 User-Name = "Mickael" User-Password = "123456789" NAS-IP-Address = 127.0.1.1 NAS-Port = 1812 Message-Authenticator = 0x00000000000000000000000000000000 rad_recv: Access-Reject packet from host 127.0.0.1 port 1812, id=210, length=20
Y esto es lo que obtengo en mi xterm (otro terminal con el comando freeradius -X habilitado) :rad_recv: Access-Request packet from host 127.0.0.1 port 42438, id=210, length=77 User-Name = "Mickael" User-Password = "123456789" NAS-IP-Address = 127.0.1.1 NAS-Port = 1812 Message-Authenticator = 0xbb5ae6f22954f4567b3d356bc2a9b10c # Ejecutando sección autorizar desde el archivo /etc/freeradius/sites-enabled/default +- entrando al grupo autorizar {...} ++[preprocess] returns ok ++[chap] returns noop ++[mschap] returns noop ++[digest] returns noop [suffix] No '@' en User-Name = "Mickael", buscando realm NULL [suffix] No such realm "NULL" ++[suffix] returns noop [eap] No EAP-Message, no haciendo EAP ++[eap] returns noop ++[files] returns noop [ldap] realizando autorización de usuario para Mickael [ldap] expand: %{Stripped-User-Name} -> [ldap] ... expandiendo segunda condición [ldap] expand: %{User-Name} -> Mickael [ldap] expand: (uid=%{%{Stripped-User-Name}:-%{User-Name}}) -> (uid=Mickael) [ldap] expand: ou=utilisateurs,dc=DOMAINE,dc=LOCAL -> ou=utilisateurs,dc=DOMAINE,dc=LOCAL [ldap] ldap_get_conn: Comprobando Id: 0 [ldap] ldap_get_conn: Id: 0 recibido [ldap] intentando reconexión LDAP [ldap] (re)conectando a 10.1.69.50:389, autenticación 0 [ldap] conectando como cn=Mickael,ou=admin,ou=info,dc=DOMAINE,dc=LOCAL/123456789 a 10.1.69.50:389 [ldap] cn=Mickael,ou=admin,ou=info,dc=DOMAINE,dc=LOCAL no pudo conectarse a 10.1.69.50:389: No se puede contactar al servidor LDAP [ldap] intento de reconexión fallido [ldap] búsqueda fallida [ldap] ldap_release_conn: Liberar Id: 0 ++[ldap] returns fail Usando Post-Auth-Type Reject # Ejecutando grupo desde el archivo /etc/freeradius/sites-enabled/default +- entrando al grupo REJECT {...} [attr_filter.access_reject] expand: %{User-Name} -> Mickael attr_filter: Coincidencia de entrada DEFAULT en la línea 11 ++[attr_filter.access_reject] returns updated Retrasando rechazo de solicitud 0 por 1 segundo Pasando a la próxima solicitud Despertando en 0.9 segundos. Enviando rechazo retrasado para la solicitud 0 Despertando en 4.9 segundos. Limpiando la solicitud 0 ID 210 con marca de tiempo +28 Listo para procesar solicitudes.
Espero que puedas ayudarme, estoy un poco perdido en todo esto.
Gracias de antemano,
Usbeth
¡Echa un vistazo a mi sitio! ;)
www.frayday.wordpress.com -
Hola Usbeth,
Tu registro de log habla por sí mismo al darte la razón del fallo de radtest:
10.1.69.50:389 falló: No se puede contactar al servidor LDAP
[ldap] (re)intento de conexión fallido
lo que significa que, incluso antes de que FreeRADIUS intente buscar a Mickael en tu LDAP, ya no puede contactar con este último.
Noté que tienes como dirección LDAP 10.1.69.50
así que sugerencia:
¿Puedes hacer ping a 10.1.69.50 desde tu máquina servidor?
--> Intenta un # ping 10.1.69.50
Si el ping no pasa (red inalcanzable u otro), entonces necesitas colocarte en la misma red que tu servidor LDAP, o al menos hacer que se pueda alcanzar.
Sin embargo, si el ping pasa, entonces profundizaremos en la investigación..
Ánimo,
Jak -
Hola,
Primero, gracias por tu respuesta.
Bueno, en realidad FreeRadius y Ldap están en la misma máquina. Es decir, 10.1.69.50.
Dado que la dirección IP 10.1.69.50 es la dirección IP de la PC con la que estoy tratando de hacer ping. Sea cual sea mi configuración, puedo hacer ping.
De hecho, por eso no entiendo. Como estoy haciendo todo en la misma máquina, ¿por qué no puedo contactar al servidor Ldap? Esperaba tener un problema, pero no de este tipo.
Sin embargo, he seguido exactamente lo que dijiste en tu tutorial. Bueno, excepto por algún error de atención o algo así. Tiene que haber un problema ya que no funciona perfectamente :)
Gracias de nuevo,
Usbeth
--
¡Ve a visitar mi sitio! ;)
www.frayday.wordpress.com -
Hola,
He desinstalado freeradius y he comenzado todo de nuevo. Tengo exactamente el mismo error:radtest Leslie mypass 127.0.0.1 1812 testing123 Enviando Access-Request de id 229 a 127.0.0.1 puerto 1812 User-Name = "Leslie" User-Password = "mypass" NAS-IP-Address = 127.0.1.1 NAS-Port = 1812 Message-Authenticator = 0x00000000000000000000000000000000 rad_recv: paquete Access-Reject de host 127.0.0.1 puerto 1812, id=229, longitud=20
Resultado bajo el comando "freeradius -X":rad_recv: paquete Access-Request de host 127.0.0.1 puerto 50608, id=229, longitud=76 User-Name = "Leslie" User-Password = "mypass" NAS-IP-Address = 127.0.1.1 NAS-Port = 1812 Message-Authenticator = 0x625f2c3a9ecdc39a3a4d4f466c78e369 # Ejecutando sección authorize desde el archivo /etc/freeradius/sites-enabled/default +- entrando al grupo authorize {...} ++[preprocess] devuelve ok ++[chap] devuelve noop ++[mschap] devuelve noop ++[digest] devuelve noop [suffix] No hay '@' en User-Name = "Leslie", buscando realm NULL [suffix] No existe tal realm "NULL" ++[suffix] devuelve noop [eap] No EAP-Message, no se está haciendo EAP ++[eap] devuelve noop ++[files] devuelve noop [ldap] realizando autorización de usuario para Leslie [ldap] expand: %{Stripped-User-Name} -> [ldap] ... expandiendo segunda condicional [ldap] expand: %{User-Name} -> Leslie [ldap] expand: (uid=%{%{Stripped-User-Name}:-%{User-Name}}) -> (uid=Leslie) [ldap] expand: ou=utilisateurs,dc=DOMAINE,dc=LOCAL -> ou=utilisateurs,dc=DOMAINE,dc=LOCAL [ldap] ldap_get_conn: Verificando Id: 0 [ldap] ldap_get_conn: Obtenido Id: 0 [ldap] intentando reconexión LDAP [ldap] (re)conectando a 10.1.69.50:389, autenticación 0 [ldap] bind como cn=Leslie,ou=admin,ou=info,dc=DOMAINE,dc=LOCAL/mypass a 10.1.69.50:389 [ldap] cn=Leslie,ou=admin,ou=info,dc=DOMAINE,dc=LOCAL bind a 10.1.69.50:389 falló: No se puede contactar al servidor LDAP [ldap] intento de (re)conexión fallido [ldap] búsqueda falló [ldap] ldap_release_conn: Liberar Id: 0 ++[ldap] devuelve fail Usando Post-Auth-Type Reject # Ejecutando grupo desde el archivo /etc/freeradius/sites-enabled/default +- entrando al grupo REJECT {...} [attr_filter.access_reject] expand: %{User-Name} -> Leslie attr_filter: Entrada coincidente DEFAULT en la línea 11 ++[attr_filter.access_reject] devuelve actualizado Retrasando el rechazo de la solicitud 0 durante 1 segundo Pasando a la siguiente solicitud Despertando en 0.9 segundos. Enviando rechazo demorado para la solicitud 0 Enviando Access-Reject de id 229 a 127.0.0.1 puerto 50608 Despertando en 4.9 segundos. Limpiando la solicitud 0 ID 229 con marca de tiempo +9 Listo para procesar solicitudes.
Además, cuando ejecuto los siguientes comandos, obtengo los siguientes resultados:/etc/init.d/freeradius stop * Deteniendo el daemon FreeRADIUS freeradius * /var/run/freeradius/freeradius.pid no encontrado... [ OK ] brice-HP etc # /etc/init.d/freeradius start * Iniciando el daemon FreeRADIUS freeradius [fail]
Mi freeradius & LDAP están en la misma máquina, a saber, en la IP "10.1.69.50". No entiendo por qué hay un error al contactar a este supuesto servidor LDAP cuando está en la misma máquina.
¿Alguien podría conocer la respuesta y salvarme la vida?!
Gracias de nuevo,
Usbeth
¡Visiten mi sitio ;)
www.frayday.wordpress.com -
Hola a todos, creo que grité victoria demasiado pronto!!!
¡Mi servidor no arranca!!
He escrito todos los comandos inimaginables: service freeradius start, radiusd -X, service radiusd start. Pero me responde cada vez, servicio desconocido.
Al lanzar el comando radiusd start o radiusd stop, no se muestra nada, debería funcionar pero al verificar en /etc/init.d, no hay ningún servicio de freeradius.
Así que intenté configurarlo con ldap pero tengo un montón de errores: falló al vincular rlm_ldap
Algo así. ¿Alguien puede ayudarme?-
Hola,
intenta con el comando:/etc/init.d/freeradius restart service freeradius restart
Yo tenía un problema bastante similar y cada vez que hacía start me daba un fail. O, intenta hacer un stop antes de un start.
Si no, si estás motivado, te aconsejo que purgues totalmente freeradius y que empieces de nuevo todo lo que hiciste. Eso es lo que hice yo.
Pero bueno, no funciona por eso xD -
Estoy de acuerdo con Usbeth, #apt-get autoremove freeradius
Este comando desinstalará freeradius.
Si no quieres reinstalar, entonces verifica la llamada a tu módulo ldap (en radiusd.conf) porque el error que nos reportas (failed to link rlm_ldap) significa que tu módulo no es accesible. ¿Has instalado bien freeradius-ldap al inicio de la configuración? ¿Has modificado tu radiusd.conf (o otros archivos) de alguna manera diferente a la que te propongo?
¡Ánimo y... paciencia para ti :)
-
-
Hola,
Para resolver mi problema, tal vez deba hacer lo siguiente:
1 => Asegurarme de que los módulos "ldap" estén descomentados en los archivos radius.conf, /etc/freeradius/site-available/default, /etc/freeradius/site-available/inner-tunnel
2 => editar /etc/freeradius/clients.conf:
client localhost {
ipaddr = 127.0.0.1
secret = tu_secreto_nas_radius
nastype = other
}
3 => editar /usr/share/freeradius/dictionary y agregar:
VALUE Auth-Type LDAP 5
4 => editar /etc/freeradius/users y agregar:
DEFAULT Auth-Type := LDAP
Fall-Through = 1
¿Qué opinas? Al parecer, no es necesario hacer el paso 4, aunque las opiniones son variadas al respecto. Supuestamente "solo trae errores y si se ejecuta en modo debug freeradius (sudo freeradius -X) lanza un error feo!".
Tampoco entiendo por qué me dice "/var/run/freeradius/freeradius.pid not found..." (ver mensaje anterior) y, sobre todo, su utilidad. ¿Alguien podría ayudarme?
Al buscar por todos lados, he hecho muchas configuraciones/pruebas diferentes. Pero aún no tengo el resultado buscado: el buen funcionamiento de mi servidor freeradius.
Atentamente,
Usbeth
¡No dudes en visitar mi sitio! ;)
www.frayday.wordpress.com-
Hola Usbeth,
Tu etapa 3), es decir, la edición del archivo dictionnary, así como tu etapa 4), que consiste en modificar el archivo USER, son lamentablemente innecesarias. :-)
Te explico: En primer lugar, el archivo dictionnary por defecto incluye los atributos de la RFC2865. Este diccionario establece la correspondencia "nombre de los atributos" - "número". En nuestro caso, no se recomienda en absoluto modificarlo. Luego, reflexionemos lógicamente. =) Estamos pidiendo a FreeRADIUS una autenticación por LDAP (ver archivo sites-available/default), a partir de ahí, FreeRADIUS intentará esta autenticación LDAP utilizando el módulo LDAP (ver archivo radiusd.conf que a su vez llama a modules/ldap). Modificar el archivo USER no permite nada, salvo añadir un usuario además de los de tu LDAP. Además, podemos notar en los registros que FreeRADIUS efectivamente consulta al LDAP, observa:
++[files] returns noop
[ldap] performing user authorization for Leslie
el [files] return noop te informa que el ARCHIVO user no será utilizado ^^
Una cosa primordial que hay que tener en cuenta: Por DEFECTO, un servidor FreeRADIUS es funcional (siempre que se hayan ejecutado los comandos #apt-get update y #apt-get upgrade). Así que lo que generalmente causa inestabilidad (o incluso el mal funcionamiento) de tu servidor son todos esos cambios añadidos.
Debes hacer lo más simple desde el principio, cambiando lo mínimo de cosas y los problemas desaparecen (salvo excepciones, por supuesto).
Para la conexión a tu LDAP, ignoro si has modificado el módulo LDAP de la manera que indico (cambiando uid por sAMAccountName). Este cambio es específico de la configuración del LDAP y puede ser el error que te impide avanzar. Verifica también de manera muy minuciosa la ruta de tu lector LDAP (identity password) :-)
Otra cosa, si tu FreeRADIUS y tu LDAP están en la misma máquina física, uno de ellos podría estar virtualizado. FreeRADIUS está en un entorno Linux y LDAP en Windows (¿o es un OpenLDAP?) --> Esta diferencia cambia, por supuesto, el método de configuración del módulo LDAP :-)
En cualquier caso, intentaré ayudarte al máximo (pero no soy experto en FreeRADIUS). Si encuentras el error, no olvides volver a hacerlo todo de manera limpia :)
Ánimo para ti
Jak -
Hola Jak,
¡Primero que nada, gracias por tu ayuda y la información!
Actualmente no he ejecutado esto:Pasemos a la línea filter = -->No modifiques esta línea a menos que estés usando un Active Directory de Windows. Y si es el caso, cambia "uid=...etc" por sAMAccountName=...(el resto de la línea no cambia)
Puesto que no estoy usando un ADW.
Tengo mi servidor freeradius y mi LDAP en la misma máquina, que es un Ubuntu. ¿Es porque tengo todo en Ubuntu que no funciona?
No tengo Open LDAP.
Creo que debe haber un error en el archivo ldap:identity = "cn=Leslie,ou=admin,ou=info,dc=DOMAINE,dc=LOCAL" password = mypass basedn = "ou=utilisateurs,dc=DOMAINE,dc=LOCAL" filter = "(uid=%{%{Stripped-User-Name}:-%{User-Name}})"
No entiendo las líneas identity, basedn y filter. Debe haber un error cerca. También tengo una pregunta. ¿Pone el hecho de que el password esté sin las comillas un problema?
He intentado con y sin ellas, no cambia nada.
Tampoco entiendo lo que llamas ruta LDAP.
¡Gracias de nuevo!
Usbeth -
Bien bien,
Estás en una sola y misma máquina UNIX Ubuntu (servidor lts o de escritorio?).
Para explicar las líneas que mencionas:
identity sirve aquí para "identificarte" ante tu LDAP, es decir, que no cualquiera puede leer tu LDAP así como así, por lo que necesitas elegir un usuario que tenga derecho de lectura sobre este último.
password es, evidentemente, la contraseña de la persona mencionada anteriormente.
Si tu LDAP reconoce "Leslie", entonces el log te dirá:
[ldap] intentando reconexión LDAP
[ldap] (re)conectando a 10.1.69.50:389, autenticación 0
[ldap] bind exitoso
o algo cercano, de todos modos.
Pero el problema que enfrentas aquí no tiene que ver con "Leslie", así que no es un problema de identidad (al menos por ahora). Tu LDAP no se está consultando porque no es accesible.
Gracias a la información más reciente que me diste (y te lo agradezco :-) ), podemos asegurar que el ping funciona --> PERO, ¿qué es más simple para tu máquina que hacer ping a sí misma? (después de todo, tu ping hacia FreeRADIUS sería exactamente el mismo #ping 10.1.69.50, ¿no?) así que necesitas verificar si tu servidor LDAP está funcional.
Sugerencias:
- ¿Está en funcionamiento?
- ¿Tienes forma de ver sus logs?
- ¿Los comandos de prueba LDAP están OK?
Recomendaciones:
- haz un #tail -f /var/log/syslog en un terminal aparte (si procedes gráficamente) o en TTY2 (si estás en consola). Este comando te muestra en tiempo real (gracias a -f) los logs de tu sistema.
- realiza una prueba de consulta en tu LDAP gracias al siguiente comando (ver a modificar un poco):
#ldapsearch -x -b "ou=utilisateurs,dc=DOMAINE,dc=LOCAL" 'uid=Leslie'
el -x significa "consulta simple", el -b es equivalente al basedn de FreeRADIUS (ruta donde se encuentran los usuarios).
nota: si ldapsearch no está instalado, aquí está el comando:
#apt-get install ldap-utils
Mientras no logres hacer funcionar el ldapsearch, no tiene sentido buscar el problema en FreeRADIUS (al menos eso es lo que pienso).
Regresaré esta noche cruzando los dedos por ti ;)
¡Ánimo!
Jak -
¡Acabo de entender lo que está mal, gracias a tu último mensaje! ¡Soy un desastre!
¡Pero DIOS MÍO!
Explicación:
Para mí, el servidor LDAP se lanzaba automáticamente. Quiero decir que pensaba que no era necesario iniciarlo. Por eso no busqué iniciarlo. ¡Solo que hay que iniciarlo, al igual que con FreeRADIUS!
Para iniciarlo, busqué en internet y encontré el siguiente comando:/etc/init.d/ldap start
Lo escribí en el terminal, ¡pero no obtengo nada! Resultado del comando:bash: /etc/init.d/ldap: No such file or directory
Sin embargo, he descargado los archivos que mencionas (FreeRADIUS y FreeRADIUS-ldap). Entonces, ¿por qué no tengo la posibilidad de ingresar el comando para lanzar el servidor LDAP? ¡Esa es la pregunta del millón!
Te mantendré informado si encuentro la solución antes de tu respuesta.
¡Gracias, amigo! -
Creo que falta un archivo o un comando. De todos modos, estoy 100% seguro de que el error está ahí. Tengo la impresión de que "Leslie" se conecta correctamente (excepto que falta el servidor xD):
[ldap] bind as cn=Leslie,ou=admin,ou=info,dc=DOMAINE,dc=LOCAL/mypass to 10.1.69.50:389
Si logro iniciar este maldito servidor Ldap, estoy 99.9999% seguro de que todo funcionará de una vez. (Excepto que hay un 0.0001% que me hace dudar muchísimo ^^)
-
-
¡Hola!
¡Hoy estoy motivado para resolver este problema!
De acuerdo, entiendo. Para instalar/configurar mi ldap simplemente hice:apt-get install freeradius-ldap
Como dijiste en el tutorial que hiciste. Y luego hice todo lo que dijiste en el tutorial. No toqué nada más. Tengo un archivo en /etc/ldap/ldap.conf (solo hay este archivo en esa carpeta). Miré lo que hay dentro, es decir, no mucho.
Archivo /etc/ldap/ldap.conf :# # LDAP Defaults # # See ldap.conf(5) for details # This file should be world readable but not world writable. #BASE dc=example,dc=com #URI ldap://ldap.example.com ldap://ldap-master.example.com:666 #SIZELIMIT 12 #TIMELIMIT 15 #DEREF never # TLS certificates (needed for GnuTLS) TLS_CACERT /etc/ssl/certs/ca-certificates.crt
En mi opinión, debe ser imposible de esta manera si no hago Ldap en Windows, ¿verdad? ¿Crees que debería hacer un OpenLdap dado que estoy en Ubuntu y no en Windows como tú? ¿Podrías ayudarme a configurarlo si sabes hacerlo?
Atentamente,
Usbeth.
--
¡Pasa por mi sitio! ;)
www.frayday.wordpress.com -
¡Hola! :D
¡Perdón por el doble mensaje, pero es importante para resolver este asunto de asesinato! :O
¡Tenemos una pista increíble! ¡El servidor Ldap FUNCIONA! :apt-get install slapd
radtest Leslie kikou 127.0.0.1 1812 testing123 Enviando Access-Request del id 159 a 127.0.0.1 puerto 1812 User-Name = "Leslie" User-Password = "kikou" NAS-IP-Address = 127.0.1.1 NAS-Port = 1812 Message-Authenticator = 0x00000000000000000000000000000000 rad_recv: Paquete de Access-Reject del host 127.0.0.1 puerto 1812, id=159, longitud=20
rad_recv: Paquete de Access-Request del host 127.0.0.1 puerto 37687, id=159, longitud=76 User-Name = "Leslie" User-Password = "kikou" NAS-IP-Address = 127.0.1.1 NAS-Port = 1812 Message-Authenticator = 0x836e0a504ea6396922e228599deeb301 # Ejecutando sección authorize desde el archivo /etc/freeradius/sites-enabled/default +- entrando en el grupo authorize {...} ++[preprocess] retorna ok ++[chap] retorna noop ++[mschap] retorna noop ++[digest] retorna noop [suffix] No hay '@' en User-Name = "Leslie", buscando el realm NULL [suffix] No hay tal realm "NULL" ++[suffix] retorna noop [eap] No hay EAP-Message, no se hace EAP ++[eap] retorna noop ++[files] retorna noop [ldap] realizando autorización de usuario para Leslie [ldap] expand: %{Stripped-User-Name} -> [ldap] ... expandiendo segunda condicional [ldap] expand: %{User-Name} -> Leslie [ldap] expand: (uid=%{%{Stripped-User-Name}:-%{User-Name}}) -> (uid=Leslie) [ldap] expand: ou=utilisateurs,dc=DOMAINE,dc=LOCAL -> ou=utilisateurs,dc=DOMAINE,dc=LOCAL [ldap] ldap_get_conn: Comprobando Id: 0 [ldap] ldap_get_conn: Obtuvo Id: 0 [ldap] intentando reconexión LDAP [ldap] (re)conectar a 10.1.69.50:389, autenticación 0 [ldap] enlazando como cn=Leslie,ou=admin,ou=info,dc=DOMAINE,dc=LOCAL/kikou a 10.1.69.50:389 [ldap] esperando el resultado del enlace ... [ldap] Fallo en el inicio de sesión LDAP: verifique la identidad, la configuración de la contraseña en la sección ldap de radiusd.conf [ldap] intento de (re)conexión fallido [ldap] búsqueda fallida [ldap] ldap_release_conn: Liberar Id: 0 ++[ldap] retorna fail Usando Post-Auth-Type Reject # Ejecutando grupo desde el archivo /etc/freeradius/sites-enabled/default +- entrando en el grupo REJECT {...} [attr_filter.access_reject] expand: %{User-Name} -> Leslie attr_filter: Coincidencia con la entrada DEFAULT en la línea 11 ++[attr_filter.access_reject] retorna actualizado Retrasando el rechazo de la solicitud 0 por 1 segundo Pasando a la siguiente solicitud Despertando en 0.9 segundos. Enviando rechazo retrasado para la solicitud 0 Enviando Access-Reject del id 159 a 127.0.0.1 puerto 37687 Despertando en 4.9 segundos. Limpiando la solicitud 0 ID 159 con timestamp +5 Listo para procesar solicitudes.
He realizado un :ldapsearch -x -b "ou=utilisateurs,dc=DOMAINE,dc=LOCAL" 'uid=Leslie' # LDIF extendido # # LDAPv3 # base <ou=utilisateurs,dc=DOMAINE,dc=LOCAL> con alcance subtree # filtro: uid=Leslie # solicitando: TODOS # # resultado de búsqueda búsqueda: 2 resultado: 32 No hay tal objeto # numResponses: 1
¡No sé qué significa, pero es fantástico! :D Ahora es la autenticación la que no funciona xD (¡Y sí! ¡Siempre hay un problema! ¡Pero vamos a vencer!). Entonces!
Bueno, ahora hay que hacer funcionar todo esto y entender por qué la autenticación no funciona. ¿Aceptas la misión? ¡SÍ! ¡Vamos a vencer!
Cordialmente,
Usbeth.
Echa un vistazo a mi sitio ;)
www.frayday.wordpress.com -
¡Hola! Veo que al menos ustedes tienen un "ready for request" al lanzar radius en modo debug; sin embargo, yo no. Dice que "failed to link module rlm_ldap". He intentado instalar freeradius-ldap con:
apt-get update
apt-get upgrade
apt-get install freeradius-ldap
Pero me responde que freeradius-ldap ya está instalado en la última versión.
¿Eso significa que ya está instalado en mi máquina?
¿Ayuda por favor? ¿Qué debo hacer? Realmente no quiero desinstalarlo porque he pasado semanas resolviendo el error de "no response from the server" y instalé freeradius usando un paquete freeradius-server-2.2.0.tar.gz. -
He vuelto a hacer la instalación varias veces y sí, he instalado freeradius-ldap correctamente. En otros foros dicen que el módulo no está activado. ¿Cómo puede ser eso?
¡si ya lo he recompilado tantas veces!-
Hola Leslie,
Quizás el problema provenga de tu paquete .gz.
Me explico:
El comando #apt-get install freeradius-ldap te proporciona la forma de configurar un ldap con freeradius.
Pero este comando solo vale la pena y funciona si y solo si instalas freeradius2.X con el comando #apt-get install freeradius
No debes usar un paquete freeradius descargado de otra manera que no sea a través del repositorio (el repositorio = apt-get install) si luego usas un apt-get install, ¿ves a dónde quiero llegar?
o TODO desde el repositorio y por lo tanto:
#apt-get update
#apt-get upgrade
#apt-get install freeradius
#apt-get install freeradius-ldap
o TODO sin repositorio, es decir, tu método:
#wget http://XXXXXX.freeradius-2.0.0.tar.gz (atención, este comando no existe, es solo un ejemplo)
#dpkg -i freeradius-2.0.0.tar.gz ...
Así que yo instalo todo desde el repositorio (justamente para no tener problemas de compatibilidad o similares, que es tu caso)
Por lo tanto, posibles soluciones:
- Elimina tu paquete freeradius que has descargado
y luego:
#apt-get autoremove freeradius
#apt-get autoremove freeradius-ldap
#apt-get install freeradius
#apt-get install freeradius-ldap
Atención, no perderás el contenido de tus archivos de configuración de freeradius (tus modificaciones permanecerán intactas)
Espero poder ayudarte más adelante
Ánimo
Jak
-
-
¿Has instalado slapd? (servidor LDAP)
--
¡Vayan a visitar mi sitio! ;)
www.frayday.wordpress.com -
Hola,
Gracias jak, voy a intentar eso, pero tengo un pequeño problema, ¡no tengo más el archivo "directory"!
¿Alguien lo tendría para mí?
Soy un torpe ^^"
--
¡Paseen por mi sitio! ;)
www.frayday.wordpress.com-
-
/etc/freeradius/directory
De hecho, cada vez que ejecuto /etc/init.d/freeradius restart o start, falla. Y creo que es porque falta este archivo.
Ejecución del comando freeradius -Xfreeradius -X FreeRADIUS Version 2.1.12, para host x86_64-pc-linux-gnu, construido el 11 de sep 2012 a las 22:27:05 Copyright (C) 1999-2009 El proyecto del servidor FreeRADIUS y contribuyentes. No hay garantía; ni siquiera para MERCANTILIDAD o ADECUACIÓN A UN PROPÓSITO PARTICULAR. Puede redistribuir copias de FreeRADIUS bajo los términos de la Licencia Pública General GNU v2. Iniciando - leyendo archivos de configuración ... incluyendo el archivo de configuración /etc/freeradius/radiusd.conf incluyendo el archivo de configuración /etc/freeradius/proxy.conf incluyendo el archivo de configuración /etc/freeradius/clients.conf incluyendo el archivo de configuración /etc/freeradius/snmp.conf No se puede abrir el archivo "/etc/freeradius/snmp.conf": No existe tal archivo o directorio Errores al leer /etc/freeradius/radiusd.conf
también parece que me falta el archivo snmp.conf. -
-
-
-
-
Hola Jak! Gracias por tus consejos. Ahora que ya no tengo errores al lanzar en modo debug, pero al ejecutar el comando radtest, recibo un access-reject. Lo extraño es que funcionaba en mi anterior freeradius. He hecho las mismas configuraciones, pero no hay forma. ¿Puedes ayudarme por favor?
He descomentado un usuario en users para hacer la prueba y he configurado clients.conf como siempre. ¿Dónde está el problema? La autenticación con EAP está habilitada por defecto.-
-
Hola Leslie,
Con gusto te ayudaré, al menos si soy capaz... :)
Necesito información. Así que reinstalaste FreeRADIUS, que esta vez arranca sin problemas, sin embargo, radtest falla.
Preguntas:
- ¿Usas un ldap al lado o simplemente el archivo USERS?
- ¿Tienes un LDAP accesible y operativo (cf. Usbeth :-D)?
- ¿Has configurado tu módulo ldap? (identidad, contraseña, ...)?
- ¿Has autorizado correctamente el ldap en el archivo sites-availables/default descomentando las líneas asociadas?
La autenticación EAP normalmente no presenta problemas, siempre que se transmita todo en claro (sin cifrar).
Recomendaciones:
- Inicia FreeRADIUS en modo depuración (primero lo detienes con el comando #/etc/init.d/freeradius stop y luego lo reinicias en depuración con #freeradius -X) y pégame lo que te dice cuando haces un radtest (de la misma manera que Usbeth) para que podamos analizar todo esto :-)
¡Buena suerte!
Jak -
slt! gracias por haber respondido, euh, aquí hay un extracto de lo que muestra al lanzar radiusd -X
with_ntdomain_hack = no
allow_retry = yes
}
Módulo: Vinculado al módulo rlm_digest
Módulo: Instanciando el módulo "digest" desde el archivo /usr/local/etc/raddb/modules/digest
Módulo: Vinculado al módulo rlm_unix
Módulo: Instanciando el módulo "unix" desde el archivo /usr/local/etc/raddb/modules/unix
unix {
radwtmp = "/usr/local/var/log/radius/radwtmp"
}
Módulo: Vinculado al módulo rlm_eap
Módulo: Instanciando el módulo "eap" desde el archivo /usr/local/etc/raddb/eap.conf
eap {
default_eap_type = "md5"
timer_expire = 60
ignore_unknown_eap_types = no
cisco_accounting_username_bug = no
max_sessions = 4096
}
Módulo: Vinculado al sub-módulo rlm_eap_md5
Módulo: Instanciando eap-md5
Módulo: Vinculado al sub-módulo rlm_eap_leap
Módulo: Instanciando eap-leap
Módulo: Vinculado al sub-módulo rlm_eap_gtc
Módulo: Instanciando eap-gtc
gtc {
challenge = "Contraseña: "
auth_type = "PAP"
}
Módulo: Vinculado al sub-módulo rlm_eap_tls
Módulo: Instanciando eap-tls
tls {
rsa_key_exchange = no
dh_key_exchange = yes
rsa_key_length = 512
dh_key_length = 512
verify_depth = 0
CA_path = "/usr/local/etc/raddb/certs"
pem_file_type = yes
private_key_file = "/usr/local/etc/raddb/certs/server.pem"
certificate_file = "/usr/local/etc/raddb/certs/server.pem"
CA_file = "/usr/local/etc/raddb/certs/ca.pem"
private_key_password = "whatever"
dh_file = "/usr/local/etc/raddb/certs/dh"
random_file = "/usr/local/etc/raddb/certs/random"
fragment_size = 1024
include_length = yes
check_crl = no
cipher_list = "DEFAULT"
make_cert_command = "/usr/local/etc/raddb/certs/bootstrap"
ecdh_curve = "prime256v1"
cache {
enable = no
lifetime = 24
max_entries = 255
}
verify {
}
ocsp {
enable = no
override_cert_url = yes
url = "http://127.0.0.1/ocsp/"
use_nonce = yes
timeout = 0
softfail = no
}
}
Módulo: Vinculado al sub-módulo rlm_eap_ttls
Módulo: Instanciando eap-ttls
ttls {
default_eap_type = "md5"
copy_request_to_tunnel = no
use_tunneled_reply = no
virtual_server = "inner-tunnel"
include_length = yes
}
Módulo: Vinculado al sub-módulo rlm_eap_peap
Módulo: Instanciando eap-peap
peap {
default_eap_type = "mschapv2"
copy_request_to_tunnel = no
use_tunneled_reply = no
proxy_tunneled_request_as_eap = yes
virtual_server = "inner-tunnel"
soh = no
}
Módulo: Vinculado al sub-módulo rlm_eap_mschapv2
Módulo: Instanciando eap-mschapv2
mschapv2 {
with_ntdomain_hack = no
send_error = no
}
Módulo: Verificando authorize {...} para más módulos para cargar
Módulo: Vinculado al módulo rlm_preprocess
Módulo: Instanciando el módulo "preprocess" desde el archivo /usr/local/etc/raddb/modules/preprocess
preprocess {
huntgroups = "/usr/local/etc/raddb/huntgroups"
hints = "/usr/local/etc/raddb/hints"
with_ascend_hack = no
ascend_channels_per_line = 23
with_ntdomain_hack = no
with_specialix_jetstream_hack = no
with_cisco_vsa_hack = no
with_alvarion_vsa_hack = no
}
leyendo archivo de lista de pares /usr/local/etc/raddb/huntgroups
leyendo archivo de lista de pares /usr/local/etc/raddb/hints
Módulo: Vinculado al módulo rlm_realm
Módulo: Instanciando el módulo "suffix" desde el archivo /usr/local/etc/raddb/modules/realm
realm suffix {
format = "suffix"
delimiter = "@"
ignore_default = no
ignore_null = no
}
Módulo: Vinculado al módulo rlm_files
Módulo: Instanciando el módulo "files" desde el archivo /usr/local/etc/raddb/modules/files
files {
usersfile = "/usr/local/etc/raddb/users"
acctusersfile = "/usr/local/etc/raddb/acct_users"
preproxy_usersfile = "/usr/local/etc/raddb/preproxy_users"
compat = "no"
}
leyendo archivo de lista de pares /usr/local/etc/raddb/users
leyendo archivo de lista de pares /usr/local/etc/raddb/acct_users
leyendo archivo de lista de pares /usr/local/etc/raddb/preproxy_users
Módulo: Verificando preacct {...} para más módulos para cargar
Módulo: Vinculado al módulo rlm_acct_unique
Módulo: Instanciando el módulo "acct_unique" desde el archivo /usr/local/etc/raddb/modules/acct_unique
acct_unique {
key = "User-Name, Acct-Session-Id, NAS-IP-Address, NAS-Identifier, NAS-Port"
}
Módulo: Verificando contabilidad {...} para más módulos para cargar
Módulo: Vinculado al módulo rlm_detail
Módulo: Instanciando el módulo "detail" desde el archivo /usr/local/etc/raddb/modules/detail
detail {
detailfile = "/usr/local/var/log/radius/radacct/%{%{Packet-Src-IP-Address}:-%{Packet-Src-IPv6-Address}}/detail-%Y%m%d"
header = "%t"
detailperm = 384
dirperm = 493
locking = no
log_packet_header = no
}
Módulo: Vinculado al módulo rlm_attr_filter
Módulo: Instanciando el módulo "attr_filter.accounting_response" desde el archivo /usr/local/etc/raddb/modules/attr_filter
attr_filter attr_filter.accounting_response {
attrsfile = "/usr/local/etc/raddb/attrs.accounting_response"
key = "%{User-Name}"
relaxed = no
}
leyendo archivo de lista de pares /usr/local/etc/raddb/attrs.accounting_response
Módulo: Verificando sesión {...} para más módulos para cargar
Módulo: Vinculado al módulo rlm_radutmp
Módulo: Instanciando el módulo "radutmp" desde el archivo /usr/local/etc/raddb/modules/radutmp
radutmp {
filename = "/usr/local/var/log/radius/radutmp"
username = "%{User-Name}"
case_sensitive = yes
check_with_nas = yes
perm = 384
callerid = yes
}
Módulo: Verificando post-proxy {...} para más módulos para cargar
Módulo: Verificando post-auth {...} para más módulos para cargar
Módulo: Instanciando el módulo "attr_filter.access_reject" desde el archivo /usr/local/etc/raddb/modules/attr_filter
attr_filter attr_filter.access_reject {
attrsfile = "/usr/local/etc/raddb/attrs.access_reject"
key = "%{User-Name}"
relaxed = no
}
leyendo archivo de lista de pares /usr/local/etc/raddb/attrs.access_reject
} # módulos
} # servidor
servidor inner-tunnel { # desde el archivo /usr/local/etc/raddb/sites-enabled/inner-tunnel
módulos {
Módulo: Verificando authenticate {...} para más módulos para cargar
Módulo: Verificando authorize {...} para más módulos para cargar
Módulo: Verificando sesión {...} para más módulos para cargar
Módulo: Verificando post-proxy {...} para más módulos para cargar
Módulo: Verificando post-auth {...} para más módulos para cargar
} # módulos
} # servidor
radiusd: #### Abriendo direcciones IP y puertos ####
listen {
type = "auth"
ipaddr = *
port = 0
}
listen {
type = "acct"
ipaddr = *
port = 0
}
listen {
type = "control"
listen {
socket = "/usr/local/var/run/radiusd/radiusd.sock"
}
}
listen {
type = "auth"
ipaddr = 127.0.0.1
port = 18120
}
... añadiendo nueva dirección de socket proxy * puerto 33019
Escuchando en la dirección de autenticación * puerto 1812
Escuchando en la dirección de contabilidad * puerto 1813
Escuchando en el archivo de comando /usr/local/var/run/radiusd/radiusd.sock
Escuchando en la dirección de autenticación 127.0.0.1 puerto 18120 como servidor inner-tunnel
Escuchando en la dirección proxy * puerto 1814
Listo para procesar solicitudes.
y al lanzar la prueba radtest, tengo esto:
Enviando Access-Request de id 200 a 127.0.0.1 puerto 1812
User-Name = "steve"
User-Password = "testing"
NAS-IP-Address = 192.168.11.30
NAS-Port = 1812
Message-Authenticator = 0x00000000000000000000000000000000
rad_recv: paquete Access-Reject del host 127.0.0.1 puerto 1812, id=200, longitud=20
Efectivamente tengo un ldap que es accesible, pero quería asegurarme de que funcione localmente primero! -
-
-
-
Eh ho !! ¿Jak todavía está ahí? ¿Voy a rehacer la instalación para ver?
-
Hola a los dos :)
Ah, parece que gira en torno al snmp.conf :)
Mala noticia para ti, Leslie, tu problema no viene de ahí.
He realizado algunas pruebas y he notado que, dependiendo de tu máquina, no puedes usar ldap y file al mismo tiempo (en realidad puedes, pero es poco estable). Así que creo que, en cualquier caso, tus usuarios en USERS serán rechazados.
Gracias a tu registro de inicio, he comprobado que no hay problemas (al menos a primera vista). Lo que necesito ahora son los logs de tu FreeRADIUS en el momento del radtest :) Si lo deseas, y para no hacerte complicado, puedes abrir un segundo terminal y escribir #tail -f /var/log/freeradius/radius.log
Entonces, por favor, copia la información de esta ventana en el momento del radtest :)
Usbeth,
¿Estás seguro de que tu radius no arranca sin este archivo "snmp.conf"? Yo no lo tengo presente y todo parece funcionar :-/
¿El problema quizás no esté aquí?
--
Jakscoreur - Redes y Telecomunicaciones =)-
Si comento toda la parte snmp obtengo el siguiente error:
freeradius -X FreeRADIUS Versión 2.1.12, para host x86_64-pc-linux-gnu, construido el 11 de sep de 2012 a las 22:27:05 Copyright (C) 1999-2009 El proyecto del servidor FreeRADIUS y contribuyentes. NO hay garantía; ni siquiera para COMERCIABILIDAD o AJUSTE PARA UN PROPÓSITO PARTICULAR. Puede redistribuir copias de FreeRADIUS bajo los términos de la Licencia Pública General GNU v2. Iniciando - leyendo archivos de configuración ... incluyendo el archivo de configuración /etc/freeradius/radiusd.conf incluyendo el archivo de configuración /etc/freeradius/proxy.conf incluyendo el archivo de configuración /etc/freeradius/clients.conf incluyendo archivos en el directorio /etc/freeradius/modules/ incluyendo el archivo de configuración /etc/freeradius/modules/ldap incluyendo el archivo de configuración /etc/freeradius/modules/detail.example.com incluyendo el archivo de configuración /etc/freeradius/modules/exec incluyendo el archivo de configuración /etc/freeradius/modules/pap incluyendo el archivo de configuración /etc/freeradius/modules/cui incluyendo el archivo de configuración /etc/freeradius/modules/dynamic_clients incluyendo el archivo de configuración /etc/freeradius/modules/radutmp incluyendo el archivo de configuración /etc/freeradius/modules/acct_unique incluyendo el archivo de configuración /etc/freeradius/modules/ippool ADVERTENCIA: No se encontró tal elemento de configuración db_dir /etc/freeradius/modules/ippool[47]: Referencia "${db_dir}/db.ippool" no encontrada Errores al leer /etc/freeradius/radiusd.conf -
OK,
Si le soy de los logs, ¿utilizas ippools (grupos de direcciones IP) para tu configuración?
Aparentemente, utilizas el módulo db.ippool que requiere una base de datos aparte para gestionar grupos de direcciones IP y no creo que sea eso lo que quieres, ¿verdad?
Si no está en el programa, simplemente desactiva el módulo db.ippool en el archivo /modules/ippool. -
¡Genial! Luego tuve otro error que solucioné. Pero este no tengo ni idea.
freeradius -X FreeRADIUS Version 2.1.12, para host x86_64-pc-linux-gnu, construido el 11 de sep de 2012 a las 22:27:05 Copyright (C) 1999-2009 El proyecto de servidor FreeRADIUS y contribuyentes. No hay garantía; ni siquiera para COMERCIALIZABILIDAD o IDONEIDAD PARA UN PROPÓSITO PARTICULAR. Puede redistribuir copias de FreeRADIUS bajo los términos de la GNU General Public License v2. Iniciando - leyendo archivos de configuración ... incluyendo el archivo de configuración /etc/freeradius/radiusd.conf incluyendo el archivo de configuración /etc/freeradius/proxy.conf incluyendo el archivo de configuración /etc/freeradius/clients.conf incluyendo el archivo de configuración /etc/freeradius/snmp.conf incluyendo archivos en el directorio /etc/freeradius/modules/ incluyendo el archivo de configuración /etc/freeradius/modules/ldap incluyendo el archivo de configuración /etc/freeradius/modules/detail.example.com incluyendo el archivo de configuración /etc/freeradius/modules/exec incluyendo el archivo de configuración /etc/freeradius/modules/pap incluyendo el archivo de configuración /etc/freeradius/modules/cui incluyendo el archivo de configuración /etc/freeradius/modules/dynamic_clients incluyendo el archivo de configuración /etc/freeradius/modules/radutmp incluyendo el archivo de configuración /etc/freeradius/modules/acct_unique incluyendo el archivo de configuración /etc/freeradius/modules/ippool incluyendo el archivo de configuración /etc/freeradius/modules/detail incluyendo el archivo de configuración /etc/freeradius/modules/pam incluyendo el archivo de configuración /etc/freeradius/modules/opendirectory incluyendo el archivo de configuración /etc/freeradius/modules/krb5 incluyendo el archivo de configuración /etc/freeradius/modules/passwd incluyendo el archivo de configuración /etc/freeradius/modules/mschap incluyendo el archivo de configuración /etc/freeradius/modules/logintime incluyendo el archivo de configuración /etc/freeradius/modules/checkval incluyendo el archivo de configuración /etc/freeradius/modules/unix incluyendo el archivo de configuración /etc/freeradius/modules/perl incluyendo el archivo de configuración /etc/freeradius/modules/wimax incluyendo el archivo de configuración /etc/freeradius/modules/realm incluyendo el archivo de configuración /etc/freeradius/modules/redis incluyendo el archivo de configuración /etc/freeradius/modules/soh incluyendo el archivo de configuración /etc/freeradius/modules/linelog incluyendo el archivo de configuración /etc/freeradius/modules/policy incluyendo el archivo de configuración /etc/freeradius/modules/attr_rewrite incluyendo el archivo de configuración /etc/freeradius/modules/mac2ip incluyendo el archivo de configuración /etc/freeradius/modules/digest incluyendo el archivo de configuración /etc/freeradius/modules/rediswho incluyendo el archivo de configuración /etc/freeradius/modules/preprocess incluyendo el archivo de configuración /etc/freeradius/modules/sqlcounter_expire_on_login incluyendo el archivo de configuración /etc/freeradius/modules/echo incluyendo el archivo de configuración /etc/freeradius/modules/chap incluyendo el archivo de configuración /etc/freeradius/modules/expiration incluyendo el archivo de configuración /etc/freeradius/modules/inner-eap incluyendo el archivo de configuración /etc/freeradius/modules/replicate incluyendo el archivo de configuración /etc/freeradius/modules/expr incluyendo el archivo de configuración /etc/freeradius/modules/counter ADVERTENCIA: No existe tal elemento de configuración db_dir /etc/freeradius/modules/counter[72]: Referencia "${db_dir}/db.daily" no encontrada Errores al leer /etc/freeradius/radiusd.conf
No conozco este archivo. Así que probé muchas cosas diferentes pero nada ^^" Así que volví a dejar el archivo como si nunca lo hubiera tocado. -
Hola, hola,
Es extraño que tengas un error en tu módulo "counter". ¿Los estás acumulando o qué? ^^
Así que al igual que con el módulo ippool, no necesitas el módulo counter, a menos que quieras desconectar a tus usuarios en un momento específico. (el módulo counter se utiliza para detener la autenticación y el accounting (el seguimiento) de una persona al final de un tiempo determinado). Si utilizas un portal cautivo, es mejor usar su propio counter, pero es lo mismo, hay que tener una necesidad real.
Si no lo necesitas, no deberías usar el módulo counter. Pero por defecto, generalmente no causa problemas.
Por defecto, tu módulo no debe contener más que las siguientes líneas (además de muchos comentarios):
counter daily {
filename = ${db_dir}/db.daily #aparentemente esta línea te da problemas
key = User-Name
count-attribute = Act-Session-Time
reset = daily
counter-name = Daily-Session-Time
check-name = Max-Daily-Session
reply-name = Session-Timeout
allowed-servicetype = Framed-User
cache-size = 5000 -
¡Yop!
¡Sí, confieso! ¡Soy el profesional de los errores xD
Me gustaría no tener errores, pero bueno ^^"
He comentado esta línea y está bien. Solo que, para variar, tengo otro error en un archivo
incluyendo archivo de configuración /etc/freeradius/sql/mysql/dialup.conf No se puede abrir el archivo "/etc/freeradius/sql/mysql/dialup.conf": No existe tal archivo o directorio Errores al leer /etc/freeradius/radiusd.conf
¡Voy a conseguir vencer freeradius! Estoy casi allí, lo siento. Y trataré de encontrar este error
¡Edit!
¡Encontrado! :D
Como no uso sql, comenté una línea que incluía los archivos sql.
Y tengo otro error xDDDD
¡Estoy cansadísimo!incluyendo archivo de configuración /etc/freeradius/sites-enabled/default main { user = "radiusd" group = "radiusd" allow_core_dumps = no } freeradius: No se puede obtener ID para el grupo radiusd: Éxito
¡Vamos a hacerlo!
-
- 1
- 2
Siguiente