如何在 Ubuntu 24.04 上安装 FreeRADIUS 与 PostgreSQL 教程

如何在 Ubuntu 24.04 上安装 FreeRADIUS 与 PostgreSQL 教程

简介

FreeRADIUS 是一个流行的开源 RADIUS(Remote Authentication Dial-In User Service)应用程序,用于通过用户认证、授权和计费服务(AAA)管理网络访问。当你安装 FreeRADIUS 时,它会与数据库引擎(如 PostgreSQL)集成,以实现集中式用户管理。

本文将指导你如何在 Linux 服务器上安装并配置 FreeRADIUS 与 PostgreSQL,以创建一个可靠的 RADIUS 解决方案。

准备工作

服务器准备

必要前提:

  • 一台 Linux 服务器(推荐腾讯云、阿里云或雨云等)。

我将以 雨云 为例,带大家创建一台自己的云服务器,以便学习本篇文章的内容。

注册链接: https://www.rainyun.com/NTE2NDM3_

创建雨云服务器

以下步骤仅供参考,请根据实际需求选择配置。

  • 点击 云产品云服务器立即购买
  • 选择距离你较近的区域,以保证低延迟。
    截图占位符
  • 按照自己需求选择配置,选择 Ubuntu 24.04 版本,按照自己需求是否预装 Docker。
  • 最后按照提示进行购买。
  • 购买后等待机器部署完毕,点击刚刚创建好的服务器,进入管理面板,找到远程连接相关信息。
    截图占位符
  • 我们使用 PowerShell 进行 SSH 远程连接到服务器,Win+R 打开运行窗口,输入 powershell 后点击确定。
    截图占位符
  • 到此为止,我们的云服务器就远程连接上了。

安装和配置步骤

第一步:安装 FreeRADIUS

FreeRADIUS 在 Ubuntu 的默认软件包仓库中可用。按照以下步骤在你的服务器上安装 FreeRADIUS 和 PostgreSQL 插件。

$ sudo apt-get install freeradius freeradius-postgresql

第二步:检查 FreeRADIUS 版本

输出:

radiusd: FreeRADIUS Version 3.2.3, for host x86_64-pc-linux-gnu, built on Mar 31 2024 at 05:22:45
FreeRADIUS Version 3.2.3
Copyright (C) 1999-2022 The FreeRADIUS server project and contributors
There is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
PARTICULAR PURPOSE
You may redistribute copies of FreeRADIUS under the terms of the
GNU General Public License
For more information about these matters, see the file named COPYRIGHT

第三步:为 FreeRADIUS 配置 PostgreSQL 数据库模式

FreeRADIUS 需要一个特定的模式来与数据库服务器(如 PostgreSQL)一起工作。按照以下步骤创建一个新的模式文件,其中包含与 PostgreSQL 一起使用的默认表和字段。

  1. 在系统范围内的位置(如 /opt)创建一个新的 freeradius_schema.sql 模式文件。
$ sudo touch /etc/freeradius_schema.sql
  1. 使用文本编辑器(如 nano)编辑文件。
$ sudo nano /etc/freeradius_schema.sql
  1. 将以下数据库模式添加到文件中。
/*
 *
 * PostgreSQL schema for FreeRADIUS
 *
 */

(此处省略了原文中的 SQL 模式内容,以保持简洁)

  1. 保存并关闭文件。

以上模式为 FreeRADIUS 创建了以下数据库表:

  • radcheck:存储用户特定的认证属性,如用户名和密码。
  • radreply:存储认证成功后的回复属性,如会话限制和 IP 分配。
  • radgroupcheck:存储组特定的认证属性。
  • radgroupreply:存储组特定的认证成功后的回复属性。
  • radusergroup:将用户与组关联。例如,将 用户 A 映射到 VIP Wi-Fi 组。
  • radacct:存储用户与网络交互的会计记录。例如,会话开始时间、数据使用量、停止时间和其他使用指标。
  • radpostauth:记录成功和失败的认证尝试,包括用户名、时间戳和认证响应。
  • nas:存储向 FreeRADIUS 服务器发送认证、授权和计费请求的网络访问服务器(NAS)的信息。
  • nasreload:使 NAS 配置能够动态重新加载到 FreeRADIUS 内存中。

第四步:配置 FreeRADIUS 以使用 PostgreSQL

按照以下步骤配置 FreeRADIUS 以与 PostgreSQL 数据库服务器一起工作。

  1. 通过在 mods-enabled 配置目录中创建符号链接来启用 FreeRADIUS SQL 模块。
$ sudo ln -s /etc/freeradius/3.0/mods-available/sql /etc/freeradius/3.0/mods-enabled/
  1. 打开默认的 FreeRADIUS 配置文件。
$ sudo nano /etc/freeradius/3.0/sites-available/default
  1. 找到以下 -sql 指令并移除 - 符号以启用 SQL 指令。
#  See "Authorization Queries" in mods-available/sql
-sql
  1. 打开 /sites-available/inner-tunnel 文件。
$ sudo nano /etc/freeradius/3.0/sites-available/inner-tunnel
  1. 找到以下 SQL 指令并移除 -# 符号以启用每个指令。
#  See "Simultaneous Use Checking Queries" in `mods-config/sql/main/$driver/queries.>
#       sql

#  See "Authentication Logging Queries" in `mods-config/sql/main/$driver/queries.con>
-sql

(此处省略了原文中的其他配置步骤,以保持简洁)

第五步:测试 FreeRADIUS 与 PostgreSQL 的集成

按照以下步骤测试 FreeRADIUS 与 PostgreSQL 的集成。你将使用之前在 radcheck 表中创建的测试用户 kiki 来认证本地服务器,以验证 FreeRADIUS 是否成功从数据库读取数据。

  1. 停止 FreeRADIUS 系统服务。
$ sudo service freeradius stop
  1. 以调试模式启动 FreeRADIUS 作为后台进程,以查看详细的处理信息。
$ sudo /usr/sbin/freeradius -X &

(此处省略了原文中的其他测试步骤,以保持简洁)

结尾

你已经安装并配置了 FreeRADIUS 与 PostgreSQL,以在服务器上启用实时认证。你可以使用 FreeRADIUS 执行用户认证和授权任务。此外,你还可以使用基于组的访问控制,通过在 PostgreSQL 中使用 RadGroupCheck 和 RadGroupReply 表来存储特定用户组的属性检查。安装 FreeRADIUS 后,你将拥有更多的配置选项;请访问 FreeRADIUS 文档。

雨云 - 新一代云服务提供商: https://www.rainyun.com/NTE2NDM3_

### 如何在 Ubuntu 24.04安装 DingTalk 客户端 由于官方并未提供针对特定版本(如 Ubuntu 24.04)的专用客户端,因此可以通过以下方法尝试安装适用于 Linux 的通用版钉钉。 #### 方法一:通过 Snap Store 安装 Snap 是一种跨发行版的应用打包技术,在大多数现代 Linux 发行版中都支持。以下是具体操作: 1. 首先确认系统已启用 snap 功能: ```bash sudo apt update && sudo apt install snapd ``` 2. 使用 snap 命令安装钉钉: ```bash sudo snap install dingtalk ``` 此方式会自动下载并配置最新稳定版本的钉钉应用[^3]。 --- #### 方法二:手动下载 Deb 包文件 如果偏好传统 deb 软件包管理器的方式,则可以按照如下流程执行: 1. 访问钉钉官网或者第三方可信资源站点获取最新的 `.deb` 文件链接。 2. 下载完成后利用 `dpkg` 工具完成本地安装: ```bash wget https://example.com/path/to/dingtalk_latest_amd64.deb # 替换为实际 URL 地址 sudo dpkg -i dingtalk_latest_amd64.deb # 执行安装命令 sudo apt --fix-broken install # 解决可能存在的依赖关系问题 ``` 注意上述路径仅为示意,请替换为目标真实地址[^4]。 --- #### 方法三:借助 Wine 运行 Windows 版本程序 对于某些情况下无法正常运行原生 Linux 应用的情形下,还可以考虑采用兼容层解决方案——Wine 来加载 windows 平台上的桌面应用程序实例。 初始化 wine 环境之后再依照常规手段导入 exe 类型安装文档即可实现功能迁移[^5]。 ```bash sudo apt-get install wine # 如果尚未预置该组件则需先行部署 wine DingTalkInstaller.exe # 启动 EXE 文件启动图形化向导界面引导设置进程 ``` 以上三种途径均可达成目标效果,用户可根据个人喜好以及环境适配情况选取最合适的方案予以实践验证。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

xxin¥

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值