搭建freeradius+daloradius作为认证服务器

本文涉及的产品
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 高可用系列,价值2615元额度,1个月
简介:

1.目的背景

为了满足设备进行3A认证,提高安全性,所以搭建一套radius服务器,并配合daloradius作为前端展示配置。

2.配置内容

2.1.所需系统及组件

操作系统: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安装即可。

2.2.参考文档

freeradius安装 
http://blog.csdn.net/cluniquecui/article/details/42490423
使用daloRADIUS Web程序管理FreeRADIUS服务 
http://wzlinux.blog.51cto.com/8021085/1736744

3.freeredius安装

3.1.安装FreeRADIUS 3.0 服务器程序

yum install freeradius

3.2.安装FreeRADIUS工具包(freeradius-utils)

yum install freeradius-utils

3.3.FreeRADIUS 3.0的测试

3.3.1.修改用户管理配置文件

该文件是/etc/raddb/users,使用vi工具打开,命令如下:
vi /etc/raddb/users
打开文件后,查找 steve Cleartext-Password :="testing" (76-84行), 取消该段内容的注释。

3.3.2.关闭防火墙及selinux

Systemctl stop firewall
Systemctl disable firewall
setenforce 0

3.3.3.以调试方式启动freeradius

radiusd –X

3.3.4.使用测试工具测试

再打开一个新的终端,以root身份登录,执行如下命令:
radtest steve testing localhost 0 testing123
搭建freeradius+daloradius作为认证服务器
正常开启radius服务器的如下图所示:
搭建freeradius+daloradius作为认证服务器

3.4.MariaDB的安装

默认情况下,CengOS 7.0已经安装了mariadb,版本为5.5.35。如果想安装最新版的Mariadb,装方法与FreeRADIUS类似,执行如下命令,系统会升级到最新版本:
yum intsall mariadb

3.5.FreeRADIUS与MariaDB的对接

3.5.1.安装freeradius-mysql组件

yum install freeradius-mysql

3.5.2.激活和启动mariadb服务

默认情况下,mariadb并没有被激活,使用如下命令激活服务:
systemctl enable mariadb
然后,使用如下命令,启动mariadb:
systemctl start mariadb
使用如下命令,查询mariadb服务的状态:
systemctl status mariadb

3.5.3.创建数据库

命令如下:
mysql -u root –p
要求输入密码时,直接回车即可。

mysql>create database radius;
mysql>grant all on radius.* to radius@localhost identified by "radpass"; 
mysql>exit;

3.5.4.导入表结构

命令如下:


mysql -u root radius < /etc/raddb/mods-config/sql/main/mysql/scheama.sql

上面的指令,共导入了7个表,分别是:
radcheck 用户检查信息表
radreply 用户回复信息表
radgroupcheck 用户组检查信息表
radgroupreply 用户组检查信息表
radusergroup 用户和组关系表
radacct 计费情况表
radpostauth 认证后处理信息,可以包括认证请求成功和拒绝的记录。

  1. 建立组信息:(在此新建组名称为user)
    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');
  2. 建立用户信息:(在此新建用户名为test,密码为testpwd)
    insert into radcheck (username,attribute,op,value) values ('test','Cleartext-Password',':=','testpwd');

  3. 将用户加入组中:
    insert into radusergroup (username,groupname) values ('test','user');

3.5.6.修改 FreeRADIUS中的mysql 认证配置

执行如下命令:

cd /etc/raddb/mods-enabled
ln -s ../mods-available/sql

3.5.7.修改 FreeRADIUS中的mysql 配置文件

该配置文件位于/etc/raddb/mods-available目录,名称为sql
可以通过vi来修改,命令如下:
vi /etc/raddb/mods-available/sql
找到driver = “rlm_sql_null”这一行,修改为driver = “rlm_sql_mysql”。保持并退出。

3.5.8.测试通过数据库做用户认证

  1. 重新以调试方式运行freeradius:
    radiusd -X
  2. 再打开一个新的终端,运行测试工具命令:
    radtest test testpwd localhost 1812 testing123
    完毕。

    4.daloRADIUS部署

    4.1.软件下载

    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

    4.2.解决依赖

    在INSTALL中我们可以看到程序的需求,需要满足这些需求,否则不能正常运行。
    Apache 1/2
    PHP 4/5
    PHP GD 
    PHP DB Abstraction Layer (may require PHP Pear)
    PHP Mail
    MySQL 4/5
    #安装httpd
    yum 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

    4.3.导入数据库

    cd /var/www/html/daloradius/contrib/db
    mysql -uradius -pradpass radius < ./mysql-daloradius.sql

    4.4.设置数据库连接

    具体操作我们也是查看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';

4.5. 使用daloRADIUS

具体的主机配置我这里不再介绍,启动Web服务,找一个浏览器输入:http://yourip/daloradius
从INSTALL文档中可以看到,第一次登录的用户是administrator,密码是radius。如果生产环境使用的话一定要修改以下密码,这个用户的信息在表operators里面。
搭建freeradius+daloradius作为认证服务器

5.安装中出现的问题及解决方法

在安装freeradius和mariaDB的时候基本上没有问题,但是在安装daloradius的时候,出现了很多问题,问题主要集中在httpd服务器和php配置上。

5.1.登录daloRADIUS提示没有url

首页业务空白,是由于文件存放路径问题造成,一定要放在/var/www/html/下才可。

5.2.登录daloRADIUS出现403 forbbien

提示:“you have no pessmion to access.......”
是由于没有关闭selinux

5.3.登录成功后出现空白页

安装pear和pear db即可解决问题

yum install php-pear
 pear install db

注意,在安装db的时候会提示某个包的安装版本不够,需要使用pear install PEAR更新后可以继续安装DB

5.4.无法读取日志

在日志或其他配置界面,提示没有权限读写文件
/var/www/html/daloradius/library/daloradius.conf.php
需要赋予较高权限,使用如下命令解决
chmod 777 /var/www/html/daloradius/library/daloradius.conf.

5.5.daloradius安装

在daloradius-0.9-9的文件夹中有个”INSTALL”文件,使用文本打开后可以看到大部分安装提示和操作指引。




     本文转自YANGCHAO1987 51CTO博客,原文链接:http://blog.51cto.com/11555417/2059991,如需转载请自行联系原作者



     本文转自YANGCHAO1987 51CTO博客,原文链接:http://blog.51cto.com/11555417/2059991,如需转载请自行联系原作者


相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
20天前
|
弹性计算 云计算
阿里云认证全新发布【Apsara Clouder云计算专项技能认证:云服务器ECS入门】
阿里云认证全新发布【Apsara Clouder云计算专项技能认证:云服务器ECS入门】
|
10月前
|
弹性计算 运维 监控
Apsara Clouder云计算专项技能认证:云服务器ECS
Apsara Clouder云计算专项技能认证:云服务器ECS
|
10月前
|
弹性计算 Linux 测试技术
ECS网页问题之认证实验考不了如何解决
ECS(Elastic Compute Service,弹性计算服务)是云计算服务提供商提供的一种基础云服务,允许用户在云端获取和配置虚拟服务器。以下是ECS服务使用中的一些常见问题及其解答的合集:
|
8月前
|
网络安全
嗯… 无法访问此页面43.139.210.211 花了太长时间进行响应,无法连接宝塔,是服务器内的宝塔面板开启了ssl的验证,但是没有绑定证书,所以被拦截,关闭宝塔面板的ssl访问认证恢复正常
嗯… 无法访问此页面43.139.210.211 花了太长时间进行响应,无法连接宝塔,是服务器内的宝塔面板开启了ssl的验证,但是没有绑定证书,所以被拦截,关闭宝塔面板的ssl访问认证恢复正常
|
弹性计算
弹性计算Clouder认证:服务器迁移上云——课时10:实验练习与认证考试
弹性计算Clouder认证:服务器迁移上云——课时10:实验练习与认证考试
|
弹性计算 运维
弹性计算Clouder认证:ECS基础运维管理—课时12:实验练习与认证考试
弹性计算Clouder认证:ECS基础运维管理—课时12:实验练习与认证考试
|
小程序 安全 定位技术
微信小程序学习实录4(开发前准备、认证必备资料、公众号关联小程序、小程序发布、开发配置、服务器域名、业务域名、位置接口设置)
微信小程序学习实录4(开发前准备、认证必备资料、公众号关联小程序、小程序发布、开发配置、服务器域名、业务域名、位置接口设置)
387 0
|
Linux 网络安全 数据安全/隐私保护
Linux 使用ssh密钥认证方式登陆另一台linux服务器
Linux 使用ssh密钥认证方式登陆另一台linux服务器
|
安全 JavaScript 小程序
Spring Cloud实战 | 第九篇:Spring Cloud整合Spring Security OAuth2认证服务器统一认证自定义异常处理
Spring Cloud实战 | 第九篇:Spring Cloud整合Spring Security OAuth2认证服务器统一认证自定义异常处理
|
SpringCloudAlibaba 前端开发 安全
SpringCloud Alibaba实战二十六 - Oauth2认证服务器自定义异常
SpringCloud Alibaba实战二十六 - Oauth2认证服务器自定义异常
473 0