安装支持MySQL 的FreeRadius ,默认是不支持的:
USE=”mysql” emerge freeradius
或者
echo “=net-dialup/freeradius-2.0.5 mysql” >> /etc/portage/package.use
emerge freeradius
radius 的配置都在 /etc/raddb/ 里,我们需要修改的有 radiusd.conf , clients.conf , users , sql.conf , /site-enabled/default,分别对应服务器端,客户端,用户,数据库的配置,验证方式。其实由于这里使用了MySQL 记录用户的密码,所以其实不用修改users 也行。
我尽量在默认配置的基础上修改配置,可以不修改就不修改默认的配置。
radiusd.conf :
这里可以不修改,但最好修改一下,listen 的ipaddr 修改为内网吧。log 方面也可以适当开启一下。
——————–
clients.conf :
客户机的配置,我这里其实是Airport Extreme。
添加一个用户:
INSERT INTO radcheck (UserName, Attribute, Value) VALUES (‘test’, ‘Password’, ’123456′);
修改一下sql.conf 相应的配置:
login=”radius”
passsword=”testing”
radius_db=”radius”
———–
/etc/raddb/sites-enabled/default:
把 authorize 里的sql uncomment 了,这样才能启用sql 验证。
当然,有洁癖的话可以把其它没用的comment 了。
————–
测试下:
进入debug 模式:radiusd -X
测试命令:
语法:Usage: radtest user passwd radius-server[:port] nas-port-number secret
radtest test 123456 192.168.1.1 0 testing
如果是Access-Reject 就是失败了,Access-Accept 就是成功了。
===============
配置到此完毕,算是可用了,但还不完善。不过我在想,用MySQL 还不如用LDAP 吧。。。下回再弄弄。
Reference:
http://en.gentoo-wiki.com/wiki/Chillispot_with_FreeRadius_and_MySQL
http://www.gentoo-wiki.info/HOWTO_WPA_Enterprise_with_MySQL