freeradius部署总结_系统部署总结报告

2020-02-27 其他工作总结 下载本文

freeradius部署总结由刀豆文库小编整理,希望给你工作、学习、生活带来方便,猜你可能喜欢“系统部署总结报告”。

Freeradius + mysql + 华为AP无线认证freeradius安装与测试

1.1 安装freereradius 与 mysql。

环境:centos 6.6 软件版本freeradius-server-2.2.9。#mkdir /usr/local/radius //创建一个安装包目录。#mv freeradius-server-2.2.9.tar.gz

/usr/local/radius //将安装包移动至此目录下。

#cd /usr/local/radius //进入该目录

#tar –zxvf freeradius-server-2.2.9.tar.gz //解压文件到当前目录

#cd freeradius-server-2.2.9 //进入该文件夹

安装之前,先将需要的库环境安装,因为系统安装的版本不一致,可能没有安装相应的库。

#yum install –y gcc vim //编译工具和编辑工具 #yum install –y openl.devel //安装OpenSSL库 #./configure //安装检查 #make//编译

#make install //安装 1.2 测试redius服务是否安装成功。

相关配置文件路径为: /usr/local/etc/raddb/。#vim /usr/local/etc/raddb/users 去掉以下内容前面的#注释:

steve Cleartext-Paword := “testing” 这样就有了测试账号steve和密码:testing。或者自行新建一行记录。1.3 对radius服务进行启动测试。

#radiusd –X,在debug 模式下运行,可以看到报错和认证信息。如果程序正常运行,最后三行如下

Listening on authentication *:1812

Listening on accounting *:1813

Ready to proce requests.1.4 进行简单的连接测试

# radtest steve testing localhost 1812 testing123 出现Acce-Accept字样说明成功。

这里的testing123是在/etc/raddb/clients.conf中定义的localhost的密码。测试完成后将steve用户再恢复原样,即加上#注释。

测试成功后把/usr/local/etc/raddb/users改回去。2 Mysql运行测试及与redius的连接设置

2.1 Mysql服务启动

#yum install –y mysql-server //安装mysql # /etc/init.d/mysqld start,进行mysql服务启动,出现 mysqld:

[ OK ] 表示启动成功。

2.2 Radius与mysql数据库的连接结合。2.2.1 Freeradius mysql模块配置

1.#vim /usr/local/etc/raddb/radius.conf,去掉“ &INCLUDE sql.conf” 行前面的#注释,也可以在相应的地方加上&INCLUDE sql.conf来启用mysql模块支持。2.修改/usr/local/etc/raddb/sql.conf文件 Sql{ Server = “localhost”

Login = “root”

Paword= “root用户密码”

Radius_db=”radius”

3.修改/etc/raddb/clients.conf文件支持所有NAS Nastype = other 2.2.2 创建radius数据库及表

#mysqladmin –uroot –pPASSWOED create radius;//使用root权限创建一个名为radius的数据库。PASSWOED 表示root用户的密码。

2.2.3 将两者进行结合关联

1.将freeradius的库表导入mysql的radius数据库中:

#mysql –uroot –pPASSWOED radius

# mysql-u root-p #mysql> GRANT SELECT ON radius.* TO 'radius'@'localhost' IDENTIFIED BY 'radpa';# mysql> GRANT ALL on radius.radcheck TO 'radius'@'localhost';#mysql> GRANT ALL on radius.radgroupcheck TO 'radius'@'localhost';#mysql> GRANT ALL on radius.radusergroup TO 'radius'@'localhost';3.在数据库中加入测试组

#mysql –uroot –p密码 radius #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-Protocol',':=','PPP');

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

#mysql>INSERT INTO radgroupreply(groupname,attribute,op,VALUE)VALUES('user','Framed-Compreion',':=','Van-Jacobson-TCP-IP');#mysql>INSERT INTO radgroupreply(groupname,attribute,op,VALUE)VALUES('user','Framed-MTU',':=','1500');

4.打开从数据库查询nas支持

默认从 “/usr/local/etc/raddb/clients.conf” 文件读取,开启后可从数据库nas表读取: sed-i 's/#readclients/readclients/g' /usr/local/etc/raddb/sql.conf 5.修改文件配置

#vim /usr/local/etc/raddb/sites-enabled/default authorize{}模块: 注释掉files(159行),去掉sql前的#号(166行)accounting{}模块: 注释掉radutmp(385行),注释掉去掉sql前面的#号(395行)。seion{}模块: 注释掉radutmp(439行),去掉sql前面的#号(443行)。post-auth{}模块: 去掉sql前的#号(464行),去掉sql前的#号(552行)。#/usr/local/etc/raddb/sites-enabled/inner-tunnel authorize {}模块: 注释掉files(124行),去掉sql前的#号(131行)。

seion {}模块: 注释掉radutmp(251行),去掉sql前面的#号(255行)。post-auth {}模块: 去掉sql前的#号(277行),去掉sql前的#号(301行)。#vim /usr/local/etc/raddb/clients.conf 在client localhost{ }后面加上: Client 客户端地址段/掩码{ Secret = testing123 #一般默认都是这个,如果要修改必须与客户端的共享秘钥保持一致。

Shortname = AP #可以随便写,暂时没有发现用处。

Nastype = other #使用的NAS 是其他类型。require_meage_authenticator = no #消息取消,减少认证错误。可以不加 } 6.在数据库radius添加新用户 #mysql –uroot –ppawd #mysql> use radius;# 添加用户demo,密码demo,注意是在radchec表

INSERT INTO radcheck(username,attribute,op,VALUE)VALUES('demo','Cleartext-Paword',':=','demo');# 将用户demo加入VIP1用户组

INSERT INTO radusergroup(username,groupname)VALUES('demo',user’);

#对用户的使用时长进行设置 INSERT INTO radcheck(username,attribute,op,VALUE)VALUES('demo','Expiration’,':=','11 Mar 2017');#对用户的使用时间段进行设置

INSERT INTO radcheck(username,attribute,op,VALUE)VALUES('demo','Login-Time’,':=','A10600-1230');以上设置表示demo这个账号只能在2017年3月11日前每天的上午6点至中午12点30分的时间段内使用 2.2.4 启动测试 #radiusd & #radtest demo demo localhost 1812 testing123 //若反馈的信息为: acce-accept,恭喜你成功了 2.3 使用NAS模拟器测试radius 2.3.1 下载测试工具RADIUStest

//若反馈的信息为: acce-accept,恭喜你成功了。2.3.2 华为AP配置

这里使用web界面进行配置 1.开启802.1x认证

2.AAA配置

3.Radius服务器模板

4.认证服务器模板

5.认证方案

6.域管理

7.服务集安全模板

8.服务集BSS接口设置

有关radius认证的设置基本完成,其余皆为普通AP上网设置。

2.3.3 数据库管理软件及账号创建 Mysql> use radius;Mysql>create ‘paword’;授权

Mysql> grant all on radius.* to ‘username’@’%’;账号创建与授权完成。

2.3.4 常见的错误

1.rlm_eap: SSL error error:06065064:digital envelope routines:EVP_DecryptFinal_ex:bad decrypt rlm_eap_tls: Error reading private key file /usr/local/etc/raddb/certs/server.pem rlm_eap: Failed to initialize type tls /usr/local/etc/raddb/eap.conf[17]: Instantiation failed for module “eap” /usr/local/etc/raddb/sites-enabled/default[310]: Failed to load module “eap”./usr/local/etc/raddb/sites-enabled/default[252]: Errors parsing authenticate section.Answer:eap.conf中private_key_paword的值与ca.cnf中[req]input paword,output paword属性值不一致。user ‘username’@’%” IDENTIFIED BY

2.如果接收到类似于这样的信息:

rad_recv: Acce-Reject packet from host 127.0.0.1 port 1812, id=222, length=38。

可以到usr/local/var/log去查看freeradius的日志。在安装过程我就接收到这样的信息,百思不得其解,以为是安装出了问题,后来是查看日志,发现如下信息: 141 WARNING: Found User-Paword == “...”.142 WARNING: Are you sure you don't mean Cleartext-Paword?

WARNING: See “man rlm_pap” for more information.144 rlm_sql: Failed to create the pair: Invalid octet string “Yes,Good!” for attribute name “Repley-Meage”

rlm_sql(sql): Error getting data from database

[sql] SQL query error;rejecting user

rlm_sql(sql): Released sql socket id: 1

从而发现我在表radrepley中的数据记录内容是错误的,删除这条记录后,问题得到解决

3、如果出现

“rlm_sql(sql): Could not link driver rlm_sql_mysql: rlm_sql_mysql.so: cannot open shared object file: No such file or directory”找不到驱动包的错误,就要

a:先安装mysql-devel

b:然后进入到freeradius的安装文件目录下的src/modules/rlm_sql/drivers/rlm_sql_mysql? 运行命令:

#./configure--with-mysql-dir=/usr/share/mysql/--with-mysql-lib-dir=/usr/lib/mysql/

# make # make intall

这时候会把rlm_sql_mysql的驱动安装到/usr/local/lib目录下,但是必须把这些驱动copy到/usr/lib目录下才能正常运行: #cp-a /usr/local/lib/rlm_sql_mysql* /usr/lib

还有可能出现关于eap的错误,说什么server.pem证书读取失败,实际上server.pem证书根本没有.进到/usr/local/etc/raddb/certs/目录下.运行里面的bootstrap文件

#./bootstrap 会自动创建证书.实在不明白,里面还有个README文件可做参考.

《freeradius部署总结.docx》
将本文的Word文档下载,方便收藏和打印
推荐度:
freeradius部署总结
点击下载文档
相关专题 系统部署总结报告 freeradius 系统部署总结报告 freeradius
[其他工作总结]相关推荐
    [其他工作总结]热门文章
      下载全文