Freeradius服务器的搭建流程
一、服务器方面的配置
1 、安装radius服务器,数据库扩展插件
预先安装mysql数据库,然后安装freeradius,以及freeradius的数据库扩展插件freeradius-mysql:
yuminstall -y freeradius freeradius-mysql freeradius-utils
2 、配置freeradius
修改users
#vi /etc/raddb/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
然后把这段文字前面的#注释全部去掉后保存文件
3、启动freeradius服务端
可以通过radiusd -X来做首次启动,注意首次启动必须是root账户才行,注意那个X是大写的哦
会出现一堆的代码,如果最后出现如下提示,应该就是启动成功了:
4、测试radius是否安装成功
然后另外开一个终端运行 radtest yangqinwoaini test localhost 1812 testing123 进行测试,当出现rad_recv: Access-Accept 说明freeradius已经安装成功.
测试无问题以后记得再次vi /etc/raddb/users,把这个测试账户相关的配置全部注释掉,然后关闭radiusd的调试进程,
killall -9 radiusd 关闭radius进程命令
chkconfig radiusd on
service radiusd start
5、配置freeradius客户端
cp /etc/raddb/clients.conf /etc/raddb/clients.conf.bak 备份客户端配置
[root@localhost raddb]# grep -v \# /etc/raddb/clients.conf.bak >/etc/raddb/clients.conf
[root@localhost raddb]# vi /etc/raddb/clients.conf
内容配置为:
client 127.0.0.1 {
ipaddr = 127.0.0.1
secret = testing123
shortname=localhost
}
一般默认就是这个配置了
保存退出
需要注意,上面配置的127.0.0.1主要用于测试,将来真正的客户端要按照下面的信息进行补充说明
1. #将来你的真正的raidus计费客户端如routeros等需要在这里配置ip信息,例如
2. client x.x.x.x{ #这里的x.x.x.x就是你的routeros服务器内网口ip
3. ipaddr=x.x.x.x #routeros内网ip
4. secret=xxxxxxxxxx #你自己定义的密码
5. shortname=ros
6. }
6、修改admin.conf
cp /etc/raddb/sql/mysql/admin.sql/etc/raddb/sql/mysql/admin.sql.bak 备份
grep -v ^# /etc/raddb/sql/mysql/admin.sql.bak >/etc/raddb/sql/mysql/admin.sql
vi /etc/raddb/sql/mysql/admin.sql
内容改成下面这个样子的 ;
CREATE USER 'radius'@'localhost';
SET PASSWORD FOR 'radius'@'localhost' = PASSWORD('radpass');
GRANT SELECT ON radius.* TO 'radius'@'localhost';
GRANT ALL ON radius.* TO 'radius'@'localhost';
我这边将原有两行注释掉了,加了一行进去。
保存退出
二、数据库方面的配置
1、Freeradius-mysql数据库导数据
mysql -u root -p 回车后输入mysql的root管理员帐号密码,然后
create database radius; 创建radius数据库
exit
再次mysql -u root -p 回车,输入密码后
然后执行
source /etc/raddb/sql/mysql/admin.sql;
包括分号一起输入,数据库操作命令是带分号的。
然后 use radius 回车选中radius数据库,
source /etc/raddb/sql/mysql/schema.sql;
source /etc/raddb/sql/mysql/nas.sql;
source /etc/raddb/sql/mysql/ippool.sql;
flush privileges;
exit退出mysql管理控制台。
2、数据库的配置
然后在linux终端里面执行
vi /etc/raddb/radiusd.conf
使劲往下翻页到module那块以后去掉 $INCLUDE sql.conf 这句话前面的# 和
$INCLUDEsql/mysql/counter.conf 前面的#后保存文件退出vi编辑器,找到下面内容 将注释的#去掉
然后执行
vi /etc/raddb/sql.conf
找到readclients = yes这一行(快到文档末尾了),去掉前面的#注释后保存退出vi编辑器。
然后执行
vi /etc/raddb/sites-enabled/default
找到authorize,accounting,session这几个配置,将里面的sql全部启用就行了,就是把sql前面的#去掉就ok了。
如图找到以下内容
到了这就终于配置完了
3、测试数据库
下面就是插入一条数据到mysql数据库中真实的测试一下了:
mysql -u root -p
use radius
INSERT INTO radcheck (UserName, Attribute, Value)VALUES ('user1', 'Password','password1');
exit
service radiusd restart
radtest user1 password1 localhost 1812 testing123
成功的样子就是这样的:
OK,万事大吉了!
接下来就是需要跟哪个地址的AC或其他客户端通信,修改相应的地址就行了。
转载自:http://blog.csdn.net/kafeng1987/article/details/70578342