toughradius 配置mysql_ToughRADIUS 安装进阶篇

在进阶篇里,我们将会提供本地化的安装参考,但相比起快速指南,进阶篇需要更强的专业知识和动手能力,为了节约您宝贵的时间,我们并不鼓励所有人都来尝试。

在安装成功之前,你可能会遇到关于 linux,git,python,mysql等一些列问题,如果你对这些都不熟悉,那么你只会遇到越来越多的问题,尽管这些问题在具备相关专业知识的人眼前不值一提。如果你觉得linux,git,python,mysql 这些都不是个事,那就继续吧。

不适合这篇教程的人从来没有成功安装过 linux 的

装完 linux 系统连 make 指令都没有的

只会用界面,把 linux 当 windows 用的

vi 的 打开,编辑,保存,退出这几个基本指令还不会的

特别懒的人

特别有钱的人

linux 系统的选择

linux 的发行版世界实在是太多元化了,但万变不离其宗,理论上 ToughRADIUS 是可以运行在大部分linux 系统上的。

ToughRADIUS 依赖 Python2.7+ 运行环境,如果系统已经内置,则省略了升级 python 这一步,如果系统依然是 python2.4或 python2.6的版本,则需要先独立安装 python2.7版本。

为了更方便的安装,建议采用 centos7,ubuntu14等已经内置 python2.7 的系统。

git 版本控制工具

git 是一个版本控制工具,通过 git 工具,你在服务器上安装的 ToughRADIUS 服务可以很方便的升级,或切换不同的版本,但git 并不是必须的,不使用 git,只是不能方便升级 ToughRADIUS,以后需要升级时,需要自己下载版本重新安装。

数据库的选择

ToughRADIUS默认是支持 sqlite 和 mysql 数据库的,其他数据库如 mssql,oracle 等目前只提供商业支持服务。ToughRADIUS V2版本经过重新架构,采用更好的缓存机制(Redis),数据库已经不是性能的决定性因素。

通常 sqlite 更易于使用,系统内置支持,无需额外安装,但没有提供基于网络的管理,带来维护上的不便,MySQL 在安装配置方面要复杂的多,但管理工具强大,更稳定可靠,依然是生产环境应用的首选。

CentOS7 安装配置实例

ToughRADIUS 提供的默认安装指令是针对 CentOS 系统的,如果你希望在 ubuntu 下执行安装,可以自行修改Makefile文件,将 yum install 指令替换成对应的 apt-get install,Centos的软件名称与 ubuntu 也不相同,需要自行解决。

通过 git 工具安装

为了更方便的升级版本,建议通过使用 git 版本控制工具.

请保证您的服务器网络畅通,如果您的服务器禁止访问网络,请首先解决网络问题。安装 git

$ yum install -y git

克隆仓库(稳定版本)

$ git clone -b release-stable https://github.com/talkincode/ToughRADIUS.git /opt/toughradius

克隆仓库(开发版本)

直接下载安装下载解压稳定版

$ cd /opt

$ unzip release-stable.zip

$ mv ToughRADIUS-release-stable /opt/toughradius

下载解压开发版

$ cd /opt

$ unzip release-dev.zip

$ mv ToughRADIUS-release-dev /opt/toughradius

安装 toughradius

完成克隆仓库,稳定版或开发版任选一种。/opt/toughradius 是一个约定的的安装路径,暂时不要修改为其他路径。

按以下步骤执行安装任务$ cd /opt/toughradius

$ make all

make all 指令会完成 ToughRADIUS 所有相关的系统依赖下载安装,相关的 python 模块安装,以及配置文件的安装。在 make all 的过程中,有可能会出现失败,比如网络超时,缺少系统其它依赖,这对你通常是一个挑战,在 linux 的世界,很多东西是无法一一预料的,这还需要你具备一定的解决问题的能力。

修改 ToughRADIUS 配置

make all 完成后,会存在以下配置文件:/etc/toughradius.json

这是 ToughRADIUS 的主要配置文件,我们可能需要修改关于数据库部分的配置。如果你只想使用内置的 sqlite 数据库,无需做任何更改。

默认的 sqlite 数据库文件在 /var/toughradius/toughradius.sqlite3,你可以下载到到本地计算机使用 sqlite 的管理工具打开查看数据。

如果你希望使用 mysql 数据库,请首先自己完成 mysql 的安装配置,并保证 mysql服务已经正常运行,同时创建一个空的数据库,创建一个专用的用户名和密码。

mysql 示例:

进入 mysql 终端管理:mysql >  create database raddb DEFAULT CHARACTER SET utf8 COLLATE utf8_general_ci;

mysql >  GRANT ALL ON raddb.* TO raduser@'%' IDENTIFIED BY 'radpwd' WITH GRANT OPTION;

mysql >  FLUSH PRIVILEGES;

修改数据库配置部分,具体参数请根据实际填写。"database": {

"backup_path": "/var/toughradius/data",

"dbtype": "mysql",

"dburl": "mysql://raduser:radpwd@127.0.0.1:3306/raddb?charset=utf8",

"echo": 0,

"pool_recycle": 300,

"pool_size": 60

}

初始化数据$ cd /opt/toughradius

$ make initdb

如果配置文件数据库部分没有错误,这一步将顺利通过,会创建所有数据库表,以及初始化必须的配置参数。

管理 ToughRADIUS 服务

现在你可以运行 ToughRADIUS 服务了,假设前面的过程都顺利完成。ToughRADIUS 已经配置好系统的自启动服务。$ service toughradius start

如果你要停止 ToughRADIUS 服务,执行$ service toughradius stop

重启请执行$ service toughradius restart

查看运行状态请执行$ service toughradius status

ToughRADIUS 数据备份

ToughRADIUS 提供了一个通用的不依赖数据库类型的数据备份服务,你可以通过ToughRADIUS的管理界面-系统管理子菜单下的数据备份来使用它。

备份数据默认在目录 /var/toughradius/data

ToughRADIUS 的日志

所有的日志文件全部在 /var/toughradius 目录下

web 管理控制台日志文件是 /var/toughradius/radius-manage.log

radius 的认证记账日志是 /var/toughradius/radius-worker.log

你可以通过 linux 下的vi,awk,more,less,tail 工具来查看分析日志,比如查看最后100行日志:$ tail -n 100 /var/toughradius/radius-manage.log

$ tail -n 100 /var/toughradius/radius-worker.log

如果你在安装的过程中遇到问题,提供这些日志信息才是最有用的,如果你不是提供这些日志数据,那么你几乎肯定得不到答案。

ToughRADIUS 服务进程管理

/etc/toughradius.conf 是ToughRADIUS服务进程配置,基于 supervisord 实现服务进程管理。

如果你实际不是安装在 /opt/toughradius 这个路径,可以修改这个配置文件中的/opt/toughradius 路径调整 radius 子进程数量以提高 ToughRADIUS 在多核 CPU 下的性能

修改 numprocs 参数即可,设置为 CPU 核心数量或2倍都可以。[program:worker]

command=python /opt/toughradius/radiusctl worker -c /etc/toughradius.json

startretries = 10

process_name = %(program_name)s%(process_num)d

numprocs=4

redirect_stderr=true

stdout_logfile=/var/toughradius/radius-worker.log

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值