【保姆教程】RuoYi-Radius搭建实现portal认证一、简介以若依后台管理框架V4.6.0做为基础框架,实现了ToughRADIUS大部分功能,支持标准RADIUS协议(RFC 2865, RFC 2866),提供完整的AAA实现 。可运用于酒店WIFI认证,公司局域网权限认证,商场WIFI认证,其它公共场所等等 。
二、主要功能
- 套餐管理
- 设备管理
- 用户管理
- 订单管理
- 在线管理
- 微信、支付宝H5支付
- 实现用户上线请求认证、动态授权、限速、强制下线
- 实现上网时间到期后自动下线
文章插图
四、搭建步骤系统环境:JDK1.8 , centos8,mysql5.7
注意:centos7的yum源没有freeradius-rest安装包,安装过程中会带来不少麻烦,建议centos8安装,省不少事情 。
1.freeradius安装
yum install freeradius -y
文章插图
yum install freeradius-rest -y
文章插图
yum install freeradius-utils -y
文章插图
至此,我们已安装完成freeradius,下面我们要对freeradius进行配置,支持rest认证
2.freeradius配置
- 通过软连接方式启动rest模块
ln -s /etc/raddb/mods-available/rest /etc/raddb/mods-enabled/rest
- 修改/etc/raddb/sites-enabled/default
vim /etc/raddb/sites-enabled/default
分别在authorize,authenticate,accounting3个模块中插入rest配置,如下图所示:文章插图
文章插图
- 修改/etc/raddb/users
vim /etc/raddb/users
把freeradius的默认认证方式改为rest(DEFAULT Auth-Type := rest)文章插图
- 修改/etc/raddb/mods-enabled/rest
文件内容如下:
rest { tls {#ca_file = ${certdir}/cacert.pem#ca_path = ${certdir}#certificate_file= /path/to/radius.crt#private_key_file = /path/to/radius.key#private_key_password = "supersecret"#random_file= /dev/urandom#check_cert = yes#check_cert_cn = yes } connect_uri = "http://127.0.0.1:8090" connect_timeout = 5.0authorize {uri = "${..connect_uri}/api/freeradius/authorize"method = 'post'body = 'post'data = "https://www.huyubaike.com/biancheng/username=%{urlquote:%{User-Name}}&nasip=%{urlquote:%{NAS-IP-Address}}&nasid=%{urlquote:%{NAS-Identifier}}"}authenticate {uri = "${..connect_uri}/api/freeradius/authenticate"method = 'post'body = 'post'data = "https://www.huyubaike.com/biancheng/username=%{urlquote:%{User-Name}}&nasip=%{urlquote:%{NAS-IP-Address}}&nasid=%{urlquote:%{NAS-Identifier}}"}accounting {uri = "${..connect_uri}/api/freeradius/accounting"method = 'post'body = 'post'data = "https://www.huyubaike.com/biancheng/username=%{urlquote:%{User-Name}}&nasip=%{urlquote:%{NAS-IP-Address}}&nasid=%{urlquote:%{NAS-Identifier}}/&acctSessionId=%{urlquote:%{Acct-Session-Id}}&macAddr=%{urlquote:%{Calling-Station-Id}}&acctSessionTime=%{urlquote:%{Acct-Session-Time}}/&acctInputOctets=%{urlquote:%{Acct-Input-Octets}}&acctOutputOctets=%{urlquote:%{Acct-Output-Octets}}/&acctInputGigawords=%{urlquote:%{Acct-Input-Gigawords}}&acctOutputGigawords=%{urlquote:%{Acct-Output-Gigawords}}/&acctInputPackets=%{urlquote:%{Acct-Input-Packets}}&acctOutputPackets=%{urlquote:%{Acct-Output-Packets}}/&nasPortId=%{urlquote:%{NAS-Port-Id}}&framedIPAddress=%{urlquote:%{Framed-IP-Address}}/&sessionTimeout=%{urlquote:%{Session-Timeout}}&framedIPNetmask=%{urlquote:%{Framed-IP-Netmask}}/&acctStatusType=%{urlquote:%{Acct-Status-Type}}"}post-auth {uri = "${..connect_uri}/api/freeradius/postauth"method = 'post'body = 'post'} pool {start = ${thread[pool].start_servers}min = ${thread[pool].min_spare_servers}max = ${thread[pool].max_servers}spare = ${thread[pool].max_spare_servers}uses = 0retry_delay = 30lifetime = 0idle_timeout = 60 }}
- 修改/etc/raddb/clients.conf
vim /etc/raddb/clients.conf改成自己的ip
文章插图
cd /etc/raddb/certs/./bootstrap
到这里我们对freeradius的配置也就完成了,下面我们安装nuoyi-radius 。3.ruoyi-radius安装
- 下载源码
文章插图
- 初始化数据库
推荐阅读
- 原神证悟木怎么快速收集
- 鸡皮疙瘩第三关殖民星通关攻略
- QQ飞车结婚流程(qq飞车结婚有什么好处)
- qq飞车怎么结婚姐妹(qq飞车结婚有什么要求)
- 【日志系统】Loki日志监控 - 入门初体验
- Python3.11正式版,它来了!
- dnf中浓缩的异界精髓怎么获得(dnf浓缩异界精髓怎么获得)
- 妄想山海跳乌的刷新位置在什么地方
- 原神令人在意的石壁怎么开启
- 红米note11Pro怎么样_红米note11Pro值得买吗