FreeRADIUS 是一个高性能和高可配置的多协议策略服务器,支持RADIUS,DHCPv4 DHCPv6、TACACS+ 和 VMPS。它是根据 GNU GPLv2 的条款提供的。 使用 RADIUS 允许对网络进行身份验证和授权 集中化,并最大限度地减少必须 在向网络添加或删除新用户时完成。

搭建步骤

一、环境要求

OS:CentOS7 机器
FreeRadius:FreeRADIUS Version 3.0.13

二、安装配置及其环境搭建

1.安装 freeradius

yum install freeradius

2.配置认证用户

2.1. 修改 /etc/raddb/mods-config/files/authorize 文件,添加认证用户信息

# 配置了一个 username 为 testing, password 为 password 的认证用户
testing Cleartext-Password := "password"

2.2. 启动 freeradius 服务器,本机测试

# 1. 使用命令 radiusd 启动 freeradius (或使用 radiusd -X 以调试模式启动 freeradius)
radiusd# 在本机环境(安装了 freeradius 服务器的 CentOS7 机器上)执行以下命令进行测试
# 2. 使用 username 为 testing , password 为 password ,密钥为 testing123 的用户进行 radius 登录认证
radtest testing password 127.0.0.1 0 testing123
  1. 添加客户端

3.1. 配置客户端信息,允许客户端进行访问

# 配置客户端,允许该客户端进行访问
# ipaddr = 0.0.0.0 表示允许所有的地址进行访问client new {ipaddr = 0.0.0.0secret = testing123
}

重启 radius,可使用 netstat -anp | grep 1812; kill -9 pid 进行 radius 的停止,并重新运行 radiusd 启动 radius

3.2. 需要开放 1812/udp 和 1813/udp 端口

firewall-cmd --add-port=1812/udp
firewall-cmd --add-port=1812/udp --permanent
firewall-cmd --add-port=1813/udp
firewall-cmd --add-port=1813/udp --permanent
  1. 使用 Java 客户端进行测试

4.1. 需要依赖

    // https://mvnrepository.com/artifact/net.jradius/jradius-coreimplementation 'net.jradius:jradius-core:1.1.5'// https://mvnrepository.com/artifact/net.jradius/jradius-dictionaryimplementation 'net.jradius:jradius-dictionary:1.1.5'// https://mvnrepository.com/artifact/net.jradius/jradius-extendedimplementation 'net.jradius:jradius-extended:1.1.5'

4.2. Java client 测试代码

    public static void main(String[] args) {String serverIp = "192.168.0.1";String username = "testing";String password = "password";String secret = "testing123";try {AttributeFactory.loadAttributeDictionary("net.jradius.dictionary.AttributeDictionaryImpl");InetAddress host = InetAddress.getByName(serverIp);RadiusClient rc = new RadiusClient(host, secret, 1812, 1813, 20);AttributeList attrs = new AttributeList();attrs.add(new Attr_UserName(username));attrs.add(new Attr_NASPortType(Attr_NASPortType.Wireless80211));attrs.add(new Attr_NASPort(1));AccessRequest request = new AccessRequest(rc, attrs);request.addAttribute(new Attr_UserPassword(password));RadiusResponse reply = rc.authenticate(request, new EAPMD5Authenticator() {}, 5);logger.info("Received:\n" + reply.toString());boolean isAuthenticated = (reply instanceof AccessAccept);String replyMessage = (String) reply.getAttributeValue(Attr_ReplyMessage.TYPE);if (replyMessage != null) {logger.info("Reply Message: " + replyMessage);}System.out.println(isAuthenticated);} catch (Exception e) {logger.error("Failed", e);}}

参考文档:
https://blog.csdn.net/weixin_37655163/article/details/104518642

源码: FreeRADIUS/freeradius-server:FreeRADIUS - 一个多协议策略服务器。 (github.com)

官方文档:Documentation (freeradius.org)

安装配置测试文档:Getting Started (freeradius.org)

FreeRadius 服务器环境搭建(PAP 版)相关推荐

  1. FreeRadius 服务器环境搭建(CHAP 版)

    FreeRADIUS 是一个高性能和高可配置的多协议策略服务器,支持RADIUS,DHCPv4 DHCPv6.TACACS+ 和 VMPS.它是根据 GNU GPLv2 的条款提供的. 使用 RADI ...

  2. lux系统服务器安装后多大,服务器环境搭建

    框架使用: maven的setting文件修改 运行环境配置:dev 服务器环境搭建: 一.docker安装 1.卸载旧版本 sudo yum remove docker ​ docker-clien ...

  3. python服务器环境搭建(2)——安装相关软件

    在上一篇我们在本地的虚拟服务器上安装好CentOS7后,我们的python web服务.自定义的python service或python脚本需要在服务器上运行,还需要在服务器安装各种相关的软件才行, ...

  4. Linux服务器环境搭建《Redis、Nginx、mysql8安装》

    Linux服务器环境搭建<Redis.Nginx.mysql8安装> 1.Redis安装 直接操作: cd / cd /usr/local mkdir redis cd redis wge ...

  5. python服务器搭建nginx_python服务器环境搭建Flask,uwsgi和nginx

    python服务器环境搭建Flask,uwsgi和nginx 环境配置 服务器配置 [部署系统环境Ubuntu] 使用python的Flask框架搭建好网页后台后,便要开始将网站部署到服务器平台了.为 ...

  6. Debian6 / 7 Web服务器环境搭建LNMP一键安装包 | 问题汇总与解答

    Debian6 / 7 Web服务器环境搭建LNMP一键安装包 | 问题汇总与解答 欢迎使用中遇到什么问题,在此专篇提问,一定有问必答. 转载于:https://blog.51cto.com/jimm ...

  7. 阿里云ECS服务器环境搭建(2) —— ubuntu 16.04 安装中文输入法(搜狗输入法)

    阿里云ECS服务器环境搭建(2) -- ubuntu 16.04 安装中文输入法(搜狗输入法) 1. 环境 阿里云 ECS服务器 (4核 8G 4M) Ubuntu16.04-64-bit 图形界面 ...

  8. LAMP服务器环境搭建及工程部署

    LAMP服务器环境搭建及工程部署 这篇文章是我之前讲的环境搭建和项目部署视频讲解的文字版本,由于之前直播录屏的时候没有空闲的服务器进行搭建,所以没有详细的截图等可以展示. 现在刚好我手头有一台vps刚 ...

  9. 腾讯云主机Ubuntu之服务器环境搭建以及宝塔面板安装

    腾讯云主机Ubuntu之服务器环境搭建以及宝塔面板安装 我也是第一次使用Ubuntu服务器,所以遇到很多问题,在这里记录一下 1.云服务器购买 建议新手选择快速配置,因为自定义配置里面有自己选择很多参 ...

最新文章

  1. puppet安装常遇见的问题
  2. Atheros无线网卡芯片全介绍
  3. 第一百二十八期:推荐几个IDEA插件,Java开发者撸码利器,你get到了吗
  4. 数组元素的地址计算问题(一维到高维)
  5. CV Papers|计算机视觉论文推荐周报20200503期
  6. Mac下多个jdk自由切换
  7. perl调用shell命令并获取输出
  8. Linux CentOS 中安装 MySql
  9. 【数据库】SQLITE3 加密3
  10. linux pagecache与内存占用
  11. 对比赛打分现场进行硬件连线的拓扑图_【评委计分系统-双屏版】参考硬件连线
  12. JSON.stringify的认知历程
  13. 怎么设置creative cloud的应用禁止自动更新
  14. 【附源码】Python计算机毕业设计汽车租赁管理系统
  15. Android aseats 加密,A SEAT
  16. Unity3d 利用 AvproVideo 播放带透明通道mov视频在部分电脑无法播放的解决方案
  17. ubuntu14.04安装Y430P-GTX850M的nvidia驱动和cuda-8.0
  18. 4.龙芯2k1000 系统制作及安装
  19. 一次搞懂数据大屏适配方案 (vw vh、rem、scale)
  20. 电压源电流源电路符号及2B法

热门文章

  1. 走路像踩棉花小心颈椎出问题?
  2. AXI_lite代码简解(二)-AXI-Lite 源码分析
  3. 前端面试题整理——(第一弹 HTML和CSS)
  4. appium显示等待
  5. 最新不安装百度云管家就可以下载网盘资源的方法及各种浏览器修改JavaScript开关方法
  6. 王蓝莓主题画IP在无界售出,今日上线全新人物形象使用权!
  7. 气管炎,支气管炎,急性支气管炎
  8. 【我所認知的BIOS】—Super IO
  9. 使用build_opener 自定义 opener
  10. arduino控制颜色传感器