Centos6.0之mysql+freeradiu实现帐号统一认证

本文涉及的产品
云数据库 RDS MySQL Serverless,0.5-2RCU 50GB
文件存储 NAS,50GB 3个月
简介:

RADIUS:Remote Authentication Dial In User Service,远程用户拨号认证系统由RFC2865,RFC2866定义,是目前应用最广泛的AAA协议;

RADIUS是一种C/S结构的协议,它的客户端最初就是NAS(Net Access Server)服务器,任何运行RADIUS客户端软件的计算机都可以成为RADIUS的客户端。RADIUS协议认证机制灵活,可以采用PAPCHAP或者Unix登录认证等多种方式。RADIUS是一种可扩展的协议,它进行的全部工作都是基于Attribute-Length-Value的向量进行的。RADIUS也支持厂商扩充厂家专有属性。

本文Centos6.0

安装lamp平台,个人习惯

1
yum install -y httpd mysql* php*

安装freeradius

1
yum install -y freeradius*

211654667.jpg

进行测试下是否可以接收到返回值;

1
radtest steve testing  127.0 . 0.1  1812  testing123

212825194.jpg

如图所示即为ok;

1、登录Mysql创建radius库;

1
2
mysql> create database radius;
mysql> grant all on radius.* to radius@localhost identified by  'radius123' ;


针对FreeRadius2,数据表的设计和结构定义在下面的文件中:

/etc/raddb/sql/mysql/schema.sql 主数据库定义,7个表,包括

radcheck 用户检查信息表

radreply 用户回复信息表

radgroupcheck 用户组检查信息表

radgroupreply 用户组检查信息表

radusergroup 用户和组关系表

radacct 计费情况表

radpostauth 认证后处理信息,可以包括认证请求成功和拒绝的记录。

/etc/raddb/sql/mysql/nas.sql 网络设备定义,只有一个表

nas 网络设备表

下面的表用于一些扩展功能,可以按需导入。

ippool.sql  ip池

wimax.sql wimax设备支持

cui.sql cui 支持

2、导入sql文件

1
2
mysql -u root -p radius < /etc/raddb/sql/mysql/schema.sql
mysql -u root -p radius < /etc/raddb/sql/mysql/nas.sql

配置radius.conf

1
2
vim /etc/raddb/radiusd.conf
700          $INCLUDE sql.conf  # 启用sql文件

配置数据库文件sql.conf

1
2
3
4
5
6
7
8
vim /etc/raddb/sql.conf
sql {
     database =  "mysql"
     driver =  "rlm_sql_${database}"
     server =  "localhost"
     login =  "radius"
     password =  "radius123"
     radius_db =  "radius"

配置radius数据库功能文件 /etc/raddb/sites-available/default 

实现相关模块对数据库的支持

authorize(认证),accounting(审计),session(会话,用于监测同时连接),post_auth(记录) 子段加入sql关键字,如:

1
2
3
4
5
6
7
8
9
authorize {
           preprocess
           chap
           mschap
           suffix
           eap
           sql
           pap
}

service radiusd start

3、进行测试;

1
mysql -u root -p
1
2
mysql>  use  radius;
mysql> insert into radcheck(username,attribute,value,op)values( "lansgg" , "Cleartext-Password" , "password123" , "=" );

service radiusd restart

测试

1
radtest lansgg password123 localhost  10  testing123

214835456.jpg

测试结果如上,OK


本文转自 西索oO 51CTO博客,原文链接:http://blog.51cto.com/lansgg/1223176


相关实践学习
基于CentOS快速搭建LAMP环境
本教程介绍如何搭建LAMP环境,其中LAMP分别代表Linux、Apache、MySQL和PHP。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助 &nbsp; &nbsp; 相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
相关文章
|
2月前
|
关系型数据库 MySQL Linux
centos7.0环境下安装MySql_8.0.12
centos7.0环境下安装MySql_8.0.12
|
2月前
|
缓存 关系型数据库 MySQL
百度搜索:蓝易云【CentOS8服务器安装MySQL报错:no match mysql-community-server】
现在,你已经成功安装了MySQL服务器并解决了"no match mysql-community-server"的报错问题。祝你使用愉快!
43 1
|
2月前
|
关系型数据库 MySQL Linux
CentOS7环境下安装MySQL5.6
CentOS7环境下安装MySQL5.6
196 0
|
15天前
|
关系型数据库 MySQL Linux
linux CentOS 7.4下 mysql5.7.20 密码改简单的方法
linux CentOS 7.4下 mysql5.7.20 密码改简单的方法
19 0
|
1月前
|
分布式计算 关系型数据库 MySQL
Sqoop【部署 01】CentOS Linux release 7.5 安装配置 sqoop-1.4.7 解决警告并验证(附Sqoop1+Sqoop2最新版安装包+MySQL驱动包资源)
【2月更文挑战第8天】Sqoop CentOS Linux release 7.5 安装配置 sqoop-1.4.7 解决警告并验证(附Sqoop1+Sqoop2最新版安装包+MySQL驱动包资源)
99 1
|
9天前
|
关系型数据库 MySQL Linux
centos7安装mysql-带网盘安装包
centos7安装mysql-带网盘安装包
56 2
|
15天前
|
关系型数据库 MySQL Linux
CentOS 7 下使用yum安装MySQL5.7.20 最简单 图文详解
CentOS 7 下使用yum安装MySQL5.7.20 最简单 图文详解
73 0
|
存储 关系型数据库 MySQL
【MYSQL】—— MySQL 在 Centos 7环境安装
【MYSQL】—— MySQL 在 Centos 7环境安装
|
1月前
|
关系型数据库 MySQL Linux
【VMware安装+centos 7Linux系统+MySQL安装】——在Linux系统中安装MySQL步骤,以及遇见的各种问题(如:vm两个虚拟网卡消失、vm网络适配器有感叹号等等)
【VMware安装+centos 7Linux系统+MySQL安装】——在Linux系统中安装MySQL步骤,以及遇见的各种问题(如:vm两个虚拟网卡消失、vm网络适配器有感叹号等等)
184 0
|
2月前
|
NoSQL 应用服务中间件 Linux
CentOS7搭建MySQL+Redis+MongoDB+FastDF
CentOS7搭建MySQL+Redis+MongoDB+FastDF
138 0