为了知足设备进行3A认证,提升安全性,因此搭建一套radius服务器,并配合daloradius做为前端展现配置。php
操做系统:CentOS 7.0 x86_64 ,带gnome桌面,配置地址为172.31.101.1
数据库:mariadb v5.5.56
httpd:Server version: Apache/2.4.6 (CentOS)
php: v2.4.0
FreeRADIUS 3.0
所需其余组件
php
php-mysql
php-gd
php-pear-DB
经过yum安装便可。html
freeradius安装
http://blog.csdn.net/cluniquecui/article/details/42490423
使用daloRADIUS Web程序管理FreeRADIUS服务
http://wzlinux.blog.51cto.com/8021085/1736744前端
yum install freeradius
mysql
yum install freeradius-utils
linux
该文件是/etc/raddb/users,使用vi工具打开,命令以下:vi /etc/raddb/users
打开文件后,查找 steve Cleartext-Password :="testing" (76-84行), 取消该段内容的注释。sql
Systemctl stop firewall Systemctl disable firewall setenforce 0
radiusd –X
数据库
再打开一个新的终端,以root身份登陆,执行以下命令:radtest steve testing localhost 0 testing123
正常开启radius服务器的以下图所示:vim
默认状况下,CengOS 7.0已经安装了mariadb,版本为5.5.35。若是想安装最新版的Mariadb,装方法与FreeRADIUS相似,执行以下命令,系统会升级到最新版本:yum intsall mariadb
浏览器
yum install freeradius-mysql
安全
默认状况下,mariadb并无被激活,使用以下命令激活服务:systemctl enable mariadb
而后,使用以下命令,启动mariadb:systemctl start mariadb
使用以下命令,查询mariadb服务的状态:systemctl status mariadb
命令以下:mysql -u root –p
要求输入密码时,直接回车便可。
mysql>create database radius; mysql>grant all on radius.* to radius@localhost identified by "radpass"; mysql>exit;
命令以下:
mysql -u root radius < /etc/raddb/mods-config/sql/main/mysql/scheama.sql
上面的指令,共导入了7个表,分别是:
radcheck 用户检查信息表
radreply 用户回复信息表
radgroupcheck 用户组检查信息表
radgroupreply 用户组检查信息表
radusergroup 用户和组关系表
radacct 计费状况表
radpostauth 认证后处理信息,能够包括认证请求成功和拒绝的记录。
insert into radgroupreply (groupname,attribute,op,value) values ('user','Auth-Type',':=','Local'); insert into radgroupreply (groupname,attribute,op,value) values ('user','Service-Type',':=','Framed-User'); insert into radgroupreply (groupname,attribute,op,value) values ('user','Framed-IP-Address',':=','255.255.255.255'); insert into radgroupreply (groupname,attribute,op,value) values ('user','Framed-IP-Netmask',':=','255.255.255.0');
创建用户信息:(在此新建用户名为test,密码为testpwd)insert into radcheck (username,attribute,op,value) values ('test','Cleartext-Password',':=','testpwd')
;
insert into radusergroup (username,groupname) values ('test','user');
执行以下命令:
cd /etc/raddb/mods-enabled ln -s ../mods-available/sql
该配置文件位于/etc/raddb/mods-available目录,名称为sql
能够经过vi来修改,命令以下:vi /etc/raddb/mods-available/sql
找到driver = “rlm_sql_null”这一行,修改成driver = “rlm_sql_mysql”。保持并退出。
radiusd -X
radtest test testpwd localhost 1812 testing123
Wget http://nchc.dl.sourceforge.net/project/daloradius/daloradius/daloradius0.9-9/daloradius-0.9-9.tar.gz #解压 tar xf daloradius-0.9-9.tar.gz cd daloradius-0.9-9 #查看安装说明 more INSTALL
在INSTALL中咱们能够看到程序的需求,须要知足这些需求,不然不能正常运行。
Apache 1/2
PHP 4/5
PHP GD
PHP DB Abstraction Layer (may require PHP Pear)
PHP Mail
MySQL 4/5
#安装httpdyum install httpd -y
#安装php及组件yum install php php-mysql php-gd -y
#安装yum install php-pear-DB -y
#转移php文件cp -a daloradius-0.9-9 /var/www/html/daloradius
cd /var/www/html/daloradius/contrib/db mysql -uradius -pradpass radius < ./mysql-daloradius.sql
具体操做咱们也是查看INSTALL文档。
cd /var/www/html/daloradius/library vim daloradius.conf.php
#具体根据本身的参数设定
$configValues['CONFIG_DB_HOST'] = 'localhost'; $configValues['CONFIG_DB_PORT'] = '3306'; $configValues['CONFIG_DB_USER'] = 'radius'; $configValues['CONFIG_DB_PASS'] = 'radpass'; $configValues['CONFIG_DB_NAME'] = 'radius'; …………
#这个路径和程序放置路径有关系
$configValues['CONFIG_PATH_DALO_VARIABLE_DATA'] = '/var/www/html/daloradius/var';
具体的主机配置我这里再也不介绍,启动Web服务,找一个浏览器输入:http://yourip/daloradius。
从INSTALL文档中能够看到,第一次登陆的用户是administrator,密码是radius。若是生产环境使用的话必定要修改如下密码,这个用户的信息在表operators里面。
在安装freeradius和mariaDB的时候基本上没有问题,可是在安装daloradius的时候,出现了不少问题,问题主要集中在httpd服务器和php配置上。
首页业务空白,是因为文件存放路径问题形成,必定要放在/var/www/html/下才可。
提示:“you have no pessmion to access.......”
是因为没有关闭selinux
安装pear和pear db便可解决问题
yum install php-pear pear install db
注意,在安装db的时候会提示某个包的安装版本不够,须要使用pear install PEAR更新后能够继续安装DB
在日志或其余配置界面,提示没有权限读写文件/var/www/html/daloradius/library/daloradius.conf.php
须要赋予较高权限,使用以下命令解决chmod 777 /var/www/html/daloradius/library/daloradius.conf.
在daloradius-0.9-9的文件夹中有个”INSTALL”文件,使用文本打开后能够看到大部分安装提示和操做指引。