Linux+FreeRadius+MySql安装搭建过程

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

Linux+FreeRadius+MySql安装过程

注:所用平台 RedHat linux 5.4

一、 MySQL的安装(我自己是在装linux系统时直接把mysql安装了,后来只安装了个mysql-devel)

如果安装系统的时候没有安装则需要安装,可以用虚拟光盘上的RPM包(加载虚拟光驱->进入虚拟光驱目录->用find查找与mysql相关的rpm包并将这些rpm包复制到/目录下)

所涉及到的mysql的rpm包有:

mysql-5.0.77-3.el5.rpm

mysql-server-5.0.77-3.el5.rpm

mysql-devel-5.0.77-3.el5.rpm

用rpm -ivh mysql-5.0.77-3.e15.rpm安装(其他两个同理)

需要说明的是mysql-devel这个包是必须得装的,很多由rpm包安装的my sql默认是没有这个包的,如果没有这个包最后Radius是启动不了的。FreeRadius需要openssl支持,安装openssl(如要在光盘里面直接找的话,方法同上mysql)

rpm -ivh openssl097a-0.9.7a-9.el5_2.1.rpm

二、安装FreeRadius

下面安装freeradius(我用的版本是freeradius-1.1.8)

下载或者拷贝freeradius-1.1.8.tar.gz软件包到 /root目录

cd /root

tar zxvf freeradius-1.1.8.tar.gz

cd freeradius-1.1.8.

./configure

make

make install

然后用radiusd -X启动,如果出现

Module: Instantiated radutmp (radutmp)

Listening on authentication *:1812

Listening on accounting *:1813

Ready to process requests.

说明可以成功启动,如果不能正常启动,出现下面出错信息:

error while loading shared libraries: cannot restore segment prot after reloc: Permission denied;

则需将/etc/selinux下的配置文件config中的SELINUX=enforcing,改为SELINUX=disabled,并重启系统后再运行radiusd -X。

cd /usr/local/etc/raddb

更改radiusd.conf,让其支持sql (如下,主要是将authorize {}和accou ting {}里面的sql前面的#号去掉)

authorize {

preprocess

chap

mschap

suffix

sql

}

accounting {

….

sql

}

更改sql.conf

server="localhost"

login="root"

password="123456 " // mysql的root的密码

radius_db="radius"

将users中的下面两行注释掉:

DEFAULT Auth-Type = System

Fall-Through = 1

三、下面开始配置freeradius与mysql关联:

(a)创建radius数据库

#mysql -u root -p //默认没有密码,直接回车

mysql>create database radius;

mysql>exit;

(b)将radius中的mysql.sql表导入到mysql的radius数据库中

mysql -u root -p radius< /root/freeradius-1.1.8/doc/examples 导入后进入mysql查询是否有添加的表,在mysql>后执行use radius; show tables;应该可以看到之前导入的几个表。

(c)授权

mysql> grant select on radius.* to 'radius'@'localhost' identified by 'radpass';

mysql> grant all on radius.radacct to 'radius'@'localhost';

mysql> grant all on radius.radpostauth to 'radius'@'localhost'; (d)加入一些组信息:

mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Auth-Type',':=','Local');

mysql> insert into radgroupreply (groupname,attribute,op,value)

values ('user','Service-Type','=','Framed-User');

mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Framed-IP-Netmask','=','255.255.255.254');

mysql> insert into radgroupreply (groupname,attribute,op,value) values ('user','Framed-IP-Netmask',':=','255.255.255.0');

(e)加入用户信息:

mysql> insert into radcheck (UserName, Attribute, Value) VALUES ('azalea', 'Password', 'azalea');

mysql> insert into radcheck (UserName, Attribute, Value) VALUES ('support', 'Password', 'sup123');

(f)然后把用户加到组里:

mysql> insert into usergroup(username,groupname) values('azalea','user');

mysql> insert into usergroup(username,groupname) values('support','user');

使用命令:#mysql> select * from radcheck 查看已创建的用户名及密码

mysql> select * from radcheck;

+----+----------+-----------+----+---------+

| id | username | attribute | op | value |

+----+----------+-----------+----+---------+

| 1 | azalea | Password | == | azalea |

相关文档
最新文档