Colección de citas famosas - Slogan de motivación - El método más simple de combinar freeradius con mySQL falló, no sé por qué.

El método más simple de combinar freeradius con mySQL falló, no sé por qué.

1. Crear una base de datos

mysql -u root -p

Crear un radio de base de datos;

Otorgar todos los permisos en el radio. *Al radio@localhost identificado por "radpass"

Salir

El comando anterior crea una base de datos llamada radio y crea un usuario de base de datos llamado radio@localhost, la contraseña es radpass, y dados los permisos correspondientes.

2. Definición de estructura de tabla en MySQL

Para FreeRadius2, el diseño y estructura de la tabla de datos se definen en los siguientes archivos:

/etc/ raddb/SQL /MySQL/schema. Definición de la base de datos principal SQL, 7 tablas, incluida

Tabla de información de verificación del usuario de Radcheck

Tabla de información de respuesta del usuario de Radreply

Usuario de Radgroupcheck. Tabla de información de verificación de grupo

Tabla de información de verificación de grupo de usuarios de Radgroupreply

Tabla de relaciones entre usuarios y grupos de grupos de usuarios de rad

Factura de Radacct

Post- información de procesamiento de autenticación, que puede incluir registros de solicitudes de autenticación exitosas y rechazadas.

/etc/raddb/sql/mysql/nas.sql Definición del dispositivo de red, solo una tabla.

Lista de dispositivos de red Nas

La siguiente tabla se utiliza para algunas funciones de extensión y se puede importar según sea necesario.

Ippool.sql ip pool

Compatibilidad con dispositivos Wimax Wimax.sql

Compatibilidad con cui.sql cui

Para obtener una definición detallada de la tabla, consulte http://wiki.freeradius.org/MySQL_DDL_script.

3. Importar y crear la estructura de la tabla

MySQL-u root-p radio lt;/etc/raddb/SQL/MySQL/schema. lt ;/etc/raddb/sql/mysql/nas.sql

El comando anterior ejecuta las declaraciones sql de esquema.sql y nas.sql y establece la estructura de base de datos correspondiente.

4.Configuración de FreeRadius2, ¡importante! !

-El archivo de configuración principal de Radius incluye la parte sql: /etc/raddb/radiousd .

De lo contrario, se producirá un error:

No se puede cargar el módulo 'sql'.

Al mismo tiempo, también afectará la instalación de otros módulos freeradius y se producirá un error:

e: El proceso hijo /usr/bin/dpkg devolvió el error código (1)

-Configuración de la base de datos/etc/raddb/sql.conf, consistente con la definición de la base de datos (servidor de base de datos, contraseña de usuario, nombre de tabla, etc.). ):

Database="MySQL"

Login="radius"

contraseña="rad pass"

-Definición de función de base de datos Archivo: /etc/raddb/sites-available/default.

Realizar módulos relevantes para soportar bases de datos.

Se han agregado palabras clave SQL a las subsecciones Autorizar (autenticación), contabilidad (auditoría), sesión (sesión, utilizada para monitorear conexiones simultáneas) y post_auth (grabación), por ejemplo: autorizar {

Pretratamiento

Guy

mschap

Sufijo

Presión de aire equivalente (abreviatura de Presión de aire equivalente)

Lenguaje de consulta estructurado

Nipple

}

: configure la base de datos para registrar todas las solicitudes de autenticación (incluidas las rechazadas). De forma predeterminada, el módulo SQL solo registra solicitudes de autenticación exitosas (probablemente para evitar el rápido crecimiento de ataques DDoS y bases de datos). Si necesitamos activar esta función en función de consideraciones estadísticas, es muy simple. O en la sección post_auth en /etc/raddb/sites-available/default, busque o agregue el subtipo de denegación Post_Auth_Type y agregue la palabra clave sql. El principio es que después de la autenticación, si falla, ingresará al subtipo de rechazo de tipo de autenticación posterior. Si se define sql, el sistema llamará a la declaración sql definida en el archivo /sql/mysql/dialup.conf para su procesamiento. Después de la autorización {.... Lenguaje de consulta estructurado.... Después del tipo de autorización denegado {

#Error de inicio de sesión: inicie sesión en la base de datos SQL.

Lenguaje de consulta estructurado

}} 5. Pruebe para agregar una cuenta de prueba: MySQL-uroot-puse radio insertar en rad check (prueba de userdb, 'cleartext-password', contraseña 123 ' , ':=') Pruebe usando la cuenta de prueba: Inicie el servidor o use el modo de depuración: Servicio RadioUSD Reinicie el cliente de prueba: radtest userdb contraseña 123 localhost 10 prueba 123.