FreeRADIUS/freeradius-server

GitHub: FreeRADIUS/freeradius-server

高性能开源多协议策略服务器,提供 RADIUS、DHCP、TACACS+ 等协议支持,实现网络认证、授权与计费的集中化管理。

Stars: 2489 | Forks: 1186

# FreeRADIUS 服务器 [![CI 构建状态](https://static.pigsec.cn/wp-content/uploads/repos/2026/04/01ab428514081457.svg)][BuildStatusLink] [![Coverity 状态](https://scan.coverity.com/projects/58/badge.svg?flat=1)][CoverityStatusLink] [![OSS-Fuzz 状态](https://oss-fuzz-build-logs.storage.googleapis.com/badges/freeradius.svg)][OssFuzzLink] ## 简介 FreeRADIUS 服务器项目是一个高性能且高度可配置的多协议策略服务器,支持 RADIUS、DHCPv4、DHCPv6、DNS、TACACS+ 和 VMPS。它根据 GNU GPLv2 的条款提供。 使用 RADIUS 可以将网络的认证和授权集中化,并最大限度地减少在向网络添加或删除新用户时必须进行的更改。 FreeRADIUS 可以在 802.1x (WiFi)、拨号、PPPoE、VPN、VoIP 等系统上对用户进行认证。它支持 MySQL、PostgreSQL、Oracle、Microsoft Active Directory、Apache Cassandra、Redis、OpenLDAP 等后端数据库。它每天被用于为数亿人提供互联网接入认证,涵盖从 10 人到 1000 万+ 用户规模的站点。 ## 文档 请参阅 [documentation](doc/) 目录,其中包含版本 4 的完整文档。 另请参阅 获取更多文档。 ### AI 的使用 我们_不_建议使用 AI 工具生成 FreeRADIUS 配置。经验表明,这些配置大部分是错误的。 我们_确实_建议使用 AI 工具分析您的配置,并提出优化或改进建议。但是,这些建议应受到高度怀疑。 AI 的优势不在于创造新内容。AI 的优势在于分析大量现有内容。计算机比人类更善于记忆,也更擅长交叉检查配置的一致性、错误或遗漏之处。 因此,AI 有时会有所帮助。 ## 安装 要安装服务器,请参阅 [installation instructions](doc/antora/modules/installation/pages/index.adoc) 文档。 ## 配置服务器 我们理解配置、安装或管理服务器可能很难。毕竟,它是一个具有许多不同配置可能性的复杂系统。 最常见的问题是,人们在不了解自己在做什么以及未测试更改的情况下,大量修改配置。首选的操作方法如下: 1. 从默认配置文件开始。 2. 保存一份默认配置的副本:它是可用的。不要更改它! 3. 验证服务器是否启动 —— 在调试模式下 (`radiusd -X`)。 4. 使用 "radclient"、NAS 或 AP 向其发送测试数据包。 5. 验证服务器是否按预期工作 - 如果不起作用,更改配置,然后转到步骤 (3) - 如果卡住了,恢复使用“上次可用”的配置。 - 如果有效,继续执行步骤 (6)。 6. 保存一份工作配置的副本,并记录您更改了什么以及原因。 7. 对配置进行一个小改动。 8. 从步骤 (3) 重复。 这种方法将确保您尽快获得适合您站点的可用配置。虽然通过一系列小步前进看起来可能令人沮丧,但替代方案总是会更耗时。“随意快速”的方式比快速取得正向进展更令人沮丧! ## 调试服务器 在调试模式下运行服务器 (`radiusd -X`) 并阅读输出。 我们对这一点再怎么强调也不为过。绝大多数问题可以通过仔细阅读调试输出来解决,其中包括有关常见问题的警告以及修复建议。 调试输出在 [radiusd-X](https://www.freeradius.org/documentation/freeradius-server/4.0.0/debugging/radiusd_X.html) 页面中有详细说明。 阅读配置文件。服务器的许多部分仅通过配置文件中的大量注释进行记录。 搜索邮件列表。例如,使用 Google 搜索 "site:lists.freeradius.org <搜索词>" 将返回 FreeRADIUS 邮件列表中的结果。 可以通过邮件列表获得 [Additional help](https://www.freeradius.org/documentation/freeradius-server/4.0.0/gethelp.html),包括商业支持。 在向邮件列表发帖时,我们建议发布 `radiusd -X` 的输出。该信息显示了服务器在接收数据包时正在执行的操作以及它如何处理这些数据包。 不要将配置文件发布到邮件列表。它们没有用处。相反,请发布 `radiusd -X` 的输出。这一点我们真的再怎么强调也不为过。 务必发布对问题的清晰描述。空洞的问题不会让你交到朋友。例如,“我改了一些东西,现在它不工作了。我该怎么修复它?” ## 反馈、缺陷和社区支持 如果您有任何意见,或者在让 FreeRADIUS 按您的期望工作方面遇到困难,请发送到“freeradius-users”列表(请参阅上面的 URL)。FreeRADIUS 邮件列表由 FreeRADIUS 社区运营并贡献。列表的用户将非常乐意回答您的问题,但前提是您已经先阅读了与您的问题相关的文档。 如果您怀疑服务器存在缺陷,想要请求功能或提交代码补丁,请使用 freeradius-server [repository](https://github.com/FreeRADIUS/freeradius-server) 的 GitHub issue 跟踪器。 然而,通常最好先在邮件列表上提出问题,以确定它是否真的是缺陷或缺失的功能。 有关收集缺陷报告数据的说明可以在 [here](doc/antora/modules/developers/pages/bugs.adoc) 和网上 找到。 在任何情况下,都不应将 issue 跟踪器用于支持请求,这些问题属于用户邮件列表。如果您在 issue 跟踪器中发布与服务器相关的问题,该 issue 将被关闭并锁定。如果您坚持向 issue 跟踪器发布问题,您将被禁止访问 GitHub 上的所有 FreeRADIUS 项目仓库。 请_不要_抱怨开发人员回答您的问题不够快,或者修复问题不够快。如果您被告知去阅读文档,也请_不要_抱怨。我们承认文档并不完美,但它*确实*存在,而且阅读它可以解决最常见的问题。 FreeRADIUS 是许多人多年工作的累积成果,而您是免费获得的。没有人有义务回答您的问题。这是免费软件,让它变得更好的唯一途径是您为项目做出回馈($$、代码或文档)。 ## 商业支持 技术支持、托管系统支持、定制部署、赞助功能开发以及许多其他商业服务可从 [Network RADIUS](https://networkradius.com) 获得。
标签:802.1x, AAA协议, AAA服务器, Active Directory, Cassandra, Checkov, DHCPv4, DHCPv6, dialup, DNS, FreeRADIUS, freeradius配置, LDAP, PE 加载器, Plaso, PostgreSQL, PPPoE, radius, RADIUS服务器, Redis, TACACS+, Terraform 安全, VMPS, VoIP, VPN认证, WiFi认证, 客户端加密, 开源, 拨号接入, 授权, 搜索引擎查询, 测试用例, 策略服务器, 网络准入控制, 网络基础设施, 网络安全, 记账, 边缘基础设施, 隐私保护