硬件设备: 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中插入的用户信息