是否希望了解如何配置 Nginx 服务器以使用 RADIUS 身份验证? 在本教程中,我们将向您展示如何使用安装在运行 Ubuntu Linux 的计算机上的 Freeradius 服务器对 Nginx 服务进行身份验证。

• Ubuntu 20
• Ubuntu 19
• Ubuntu 18
• Nginx 1.18.0

设备列表

以下部分介绍用于创建本教程的设备列表。

作为亚马逊同事,我从符合条件的购买中赚取收入。

教程 - 在 Ubuntu Linux 上免费安装服务器

• IP - 192.168.15.10
• Operacional System - Ubuntu 20.04
• Hostname - FREERADIUS

在 Linux 控制台上,使用以下命令安装 FreeRadius 服务。

Copy to Clipboard

现在,我们需要将 FreeRadius 客户端添加到名为:客户端.conf 的文件。

查找并编辑此文件。

Copy to Clipboard

在客户端的末尾添加以下行。

Copy to Clipboard

在我们的示例中,我们将添加 1 个客户端设备:

该设备被命名为 PROXYAUTH,具有 IP 地址 192.168.15.30。

现在,我们需要将 FreeRadius 用户添加到名为:USERS 的配置文件中。

查找并编辑此文件。

Copy to Clipboard

在文件末尾添加以下行

Copy to Clipboard

在我们的示例中,我们将添加 2 个用户帐户。

第一个用户帐户名为"管理员"。

第二个用户帐户名为布鲁诺。

重新启动 Freeradius 服务器。

Copy to Clipboard

测试半径服务器配置文件。

Copy to Clipboard

您已完成了 Ubuntu Linux 上的 Freeradius 安装。

自由半径身份验证测试

使用以下命令在本地测试半径身份验证:

Copy to Clipboard

下面是命令输出:

Copy to Clipboard

如您所见,布鲁诺帐户能够在 Radius 服务器上成功进行身份验证。

测试名为"管理员"的用户帐户。

Copy to Clipboard

下面是命令输出:

Copy to Clipboard

如您所见,管理员帐户能够在 Radius 服务器上成功进行身份验证。

教程 Nginx - RADIUS 身份验证

• IP - 192.168.15.20
• Operational System - Ubuntu 20.04
• Hostname - NGINX

安装 Nginx 服务器。

Copy to Clipboard

编辑默认网站的 Nginx 配置文件。

Copy to Clipboard

下面是我们配置之前的文件。

Copy to Clipboard

下面是我们配置后的文件。

Copy to Clipboard

在我们的示例中,Nginx 配置需要用户身份验证才能访问网站的任何部分。

Nginx 没有本机 RADIUS 身份验证。

发送到 Nginx 的身份验证信息将转发到 Web 服务器 192.168.15.30。

如果远程服务器验证用户身份验证,Nginx 将授权用户访问。

重新启动 Nginx 服务。

Copy to Clipboard

您已完成 Nginx 所需的配置。

Nginx - 使用 Apache 作为身份验证代理

• IP - 192.168.15.30
• Operational System - Ubuntu 20.04
• Hostname - APACHE

现在,我们需要配置负责凭据验证的远程服务器。

在我们的示例中,我们将使用 Apache 服务器来验证 RADIUS 服务器上的用户凭据。

安装 Apache 服务器和所需的 RADIUS 身份验证模块。

Copy to Clipboard

启用 Apache2 RADIUS 身份验证模块。

Copy to Clipboard

创建名为 AUTH 的目录,并为此目录授予名为 www-data 的用户权限。

Copy to Clipboard

配置 Apache 服务器,以便向尝试访问此目录的用户请求 RADIUS 身份验证。

编辑默认网站的 Apache 配置文件。

Copy to Clipboard

以下是我们配置前的配置文件。

Copy to Clipboard

下面是我们配置后的文件。

Copy to Clipboard

Apache 服务器配置为请求密码身份验证以访问名为 AUTH 的目录。

Apache Web 服务器配置为使用 RADIUS 服务器 192.168.15.10 对用户帐户进行身份验证。

重新启动 Apache 服务。

Copy to Clipboard

祝贺! 您成功配置了 Apache 身份验证。

Nginx - RADIUS 身份验证测试

打开浏览器并输入 Nginx Web 服务器的 IP 地址。

在我们的示例中,浏览器中输入了以下 URL:

• http://192.168.15.20

Nginx 服务器将要求您执行用户身份验证。

Nginx authentication

成功登录后,您将有权访问该网站。

nginx welcome

祝贺! 在 Nginx 服务器上配置了 RADIUS 身份验证。