概述
之前说了Freeradius与AD结合进行802.1x认证方面的内容。本例则在之前实验配置的基础之上,将Freeradius与mysql、daloradius结合,实现可以通过web方式管理radius服务器,并通过数据库进行用户认证等信息的存储。本例只适合centos7环境下的freeradius3.0.x版本。
环境准备
- FreeRadius服务器,之前已经配置好的。
- 组件apache、mariadb(mysql)、daloradius等。
安装配置
安装必要组件
yum install freeradius-mysql freeadius-client freeradius-devel php php-gd php-pear-DB php-mysql httpd mariadb
【在新版的daloradius中需要安装pear-DB后,前端web才能够与后台数据库连同,否则会打不开页面】
-
开启服务
Systemctl enable httpd
Systemctl enable mariadb
Systemctl start httpd
Systemctl start mariadb
配置MySQL
- 初始化配置及建立radius数据库和用户
mysql_secure_installation #mysql初始安全配置
mysql -uroot p
CREATE DATABASE radius;
GRANT ALL ON radius.* TO radius@localhost IDENTIFIED BY "radpass"; exit
-
导入radius数据库架构
mysql -uroot p radius < /etc/raddb/mods-config/sql/main/mysql/schema.sql
配置radius服务器支持mysql
-
加入符号连接开启功能
cd /etc/raddb/mods-enabled/
ln s ../mods-available/sql ./ #相当于在Freeradius开启sql功能模块
-
确认 /etc/raddb/radiusd.conf中以下项目已经包含相应目录配置
modules {
$INCLUDE mods-enabled/
}
Policy {
$INCLUDE site-enabled/
}
- 在/etc/raddb/sites-available/default中的authroize{}、accounting{}、session{}、post-auth{}、Post-Auth-Type REJECT{}中开启sql如下,
-
在/etc/raddb/sites-available/inner-tunnel中的 authroize{}、 session{}、 post-auth{}、中开启sql 如下:
Authorize {
…
sql#如有注释则去掉,如有-,也去掉
…
}
-
编辑/etc/raddb/mods-avaible/sql,更改数据库连接参数
sql {
driver = "rlm_sql_mysql"
server = "localhost"
port = 3306
login = "radius"
password = "radpass"
radius_db = "radius"
}
read_client = yes#允许radius读取数据库里面的nas信息
client_table = "nas"#指定存储nas信息的表
安装配置daloradius
-
下载并解压daloradius
Wget http://downloads.sourceforge.net/project/daloradius/daloradius/daloradius0.9-9/daloradius-0.9-9.tar.g
转载于:https://blog.51cto.com/h11345/1734217