在 Gentoo 上配置 FreeRadius 支持 MySQL

鉴客 发布于 2011/10/26 10:31
阅读 1K+
收藏 0

安装支持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。

client 192.168.1.10 {
secret = testing
shortname = AP
nastype = other
}
————-
sql.conf:
先准备好MySQL 环境。
mysql> create database radius ;
mysql> grant all on radius.* to radius@localhost identfied by ‘testing’ ;
$ mysql -uradius -ptesting radius < /etc/raddb/sql/mysql/schema.sql

添加一个用户:

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 吧。。。下回再弄弄。

参考资料:

http://en.gentoo-wiki.com/wiki/Chillispot_with_FreeRadius_and_MySQL

http://www.gentoo-wiki.info/HOWTO_WPA_Enterprise_with_MySQL

文章出处:

http://blog.helosa.org/2011/10/22/configure-freeradius-mysql-gentoo.html

加载中
返回顶部
顶部