环境说明
硬件设备: ASUS RT-AC88U路由器
服务器系统:Ubuntu 16.04
软件版本:FreeRADIUS 2.2.8
服务安装搭建
1. 安装freeradius
apt-get install freeradius freeradius-mysql
2. 配置用户
vim /etc/freeradius/users
steve Cleartext-Password := "testing"
Service-Type = Framed-User,
Framed-Protocol = PPP,
Framed-IP-Address = 172.16.3.33,
Framed-IP-Netmask = 255.255.255.0,
Framed-Routing = Broadcast-Listen,
Framed-Filter-Id = "std.ppp",
Framed-MTU = 1500,
Framed-Compression = Van-Jacobsen-TCP-IP
配置文件授权
chmod 755 -R /etc/freeradius
3. 服务管理
# 启动或关闭
service freeradius start|stop
# 调试模式运行
freeradius -X
# 测试命令
radtest Username Password ServerIP Port Secret
打开两个终端,其中一个输入sudo freeradius -X以调试模式运行FreeRADIUS,另一个输入radtest steve testing localhost 1812 testing123
4. 切换为mysql数据库来存储用户信息
# 创建数据库
mysql -uroot -p # 输入MySQL的密码进入到数据库中
create database radius; # 创建名为radius的database
grant all on radius.* to radius@localhost identified by radpass; # 赋予权限
flush privileges; # 刷新权限
# 导入radius相关的表和初识数据
mysql -u radius -p radius < /etc/freeradius/sql/mysql/schema.sql
mysql -u radius -p radius < /etc/freeradius/sql/mysql/nas.sql
输入密码radpass
# 新增用户
mysql -uradius -p, 输入密码radpass进入到数据库中
use radius; 切换到radius database
insert into radcheck (username,attribute,value,op) values('test01','Cleartext-Password','test123',':='); 插入一条用户信息
# 修改FreeRADIUS配置启用MySQL
sudo vim /etc/freeradius/radiusd.conf,将modules字段下面的$INCLUDE sql.conf一句取消注释
sudo vim /etc/freeradius/sql.conf,确认database是mysql,login和radius_db都是radius,password是radpass
sudo vim /etc/freeradius/sites-available/default,将authorize、accounting、session和post-auth字段下的sql都取消注释
sudo vim /etc/freeradius/sites-available/inner-tunnel,将authorize、session和post-auth字段下的sql都取消注释
# 将路由器添加进允许访问radius的配置文件中
sudo vim /etc/freeradius/clients.conf,在最后面添加
client 192.168.0.0/24 {
secret = tester01
shortname = ASUS-wireless
nastype = other
}
192.168.0.0/24是你允许访问radius服务器的网段,只是一个路由器访问可以设置成该路由器的地址
secret是客户端与radius服务器通信的Shared Secret
shortname任意取名sudo freeradius -X进入调试模式
进入路由器设置界面中,无线网络->RADIUS设置,填入FreeRADIUS服务器IP地址和之前设置的Shared Secret
注意它的说明,要在一般设置中将授权方式选为WPA-Enterprise/WPA2-Enterprise,此项设置才能生效,我这里将其设置为WPA2-Enterprise
在Ubuntu机器上删除此路由器的无线网信息,再次连接,会弹出一个界面让你输入认证信息,输入我们之前在MySQl中插入的用户信息