您是否要了解如何配置 Apache 服务器以使用 Radius 协议在 Active 目录上进行身份验证? 在本教程中,我们将向您展示如何使用 Microsoft NPS 服务器对 Active Directory 数据库上的 Apache 用户进行身份验证。

• Ubuntu 18
• Ubuntu 19
• Ubuntu 20
• Apache 2.4.41
• Windows 2012 R2

设备列表

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

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

教程 - 在 Windows 上安装半径服务器

• IP - 192.168.15.10。
• 操作系统 - 视窗 2012 R2
• Hostname - TECH-DC01
• 活动目录域:TECH.LOCAL

打开服务器管理器应用程序。

访问"管理"菜单并单击"添加角色和功能"。

Windows 2012 add role

访问服务器角色屏幕,选择"网络策略和访问服务"选项。

单击"下一步"按钮。

Network Policy and Access Service

在以下屏幕上,单击"添加功能"按钮。

network policy features

在"角色服务"屏幕上,单击"下一个"按钮。

network policy server

在下一个屏幕上,单击"安装"按钮。

radius server installation on windows

您已完成 Windows 2012 上的半径服务器安装。

教程半径服务器 - 活动目录集成

接下来,我们需要在 Active 目录上创建至少 1 个帐户。

ADMIN 帐户将用于在 Apache 服务器上登录。

在域控制器上,打开名为:活动目录用户和计算机的应用程序

在"用户"容器内创建新帐户。

Zabbix active directory account

创建新帐户命名为:管理员

密码配置为 ADMIN 用户: 123qwe.

此帐户将用于在 Apache Web 界面上进行身份验证。

active directory admin account
zabbix active directory admin properties

恭喜您,您已经创建了所需的活动目录帐户。

接下来,我们需要在 Active 目录上创建至少 1 个组。

在域控制器上,打开名为:活动目录用户和计算机的应用程序

在"用户"容器内创建新组。

Radius Active directory group

创建名为:APACHE-USERS 的新组。

此组的成员将能够访问 Apache 服务器的受保护目录。

Apache Active directory authentication group

重要! 将管理员用户添加为 Apache-Users 组的成员。

Apache Active directory user authentication

恭喜您,您已创建了所需的活动目录组。

教程半径服务器 - 添加客户端设备

在 Radius 服务器上,打开名为:网络策略服务器的应用程序

您需要在活动目录数据库上授权 Radius 服务器。

右键单击 NPS(LOCAL),然后选择"活动目录"选项中的"注册服务器"。

authorize radius server on windows

在确认屏幕上,单击"确定"按钮。

接下来,您需要配置 Radius 客户端。

半径客户端是允许从半径服务器请求身份验证的设备。

重要! 不要将半径客户端与半径用户混淆。

右键单击"半径客户端"文件夹并选择"新建"选项。

Apache radius client NPS

下面是配置为允许 Apache 服务器连接到 Radius 服务器的客户端示例。

您需要设置以下配置:

• 设备中友好名称 - 向 Apache 服务器添加说明。
• 设备 IP 地址 - Apache 服务器的 IP 地址。
• 设备共享机密 - kamisama123

共享密钥将用于授权设备使用 Radius 服务器。

您已完成半径客户端配置。

教程半径服务器 - 配置网络策略

现在,您需要创建一个网络策略以允许身份验证。

右键单击"网络策略"文件夹并选择"新建"选项。

输入网络策略的名称,然后单击"下一步"按钮。

nps - network policy name

单击"添加条件"按钮。

我们将允许 APACHE-USERS 组的成员进行身份验证。

Apache Active directory authentication group

选择"用户组"选项,然后单击"添加"按钮。

nps - user group condition

单击"添加组"按钮并找到 APACHE-USERS 组。

APC UPS - Active directory group

选择"访问授予"选项,然后单击"下一步"按钮。

这将允许 APACHE-USERS 组的成员在 Radius 服务器上进行身份验证。

NPS Access granted

在"身份验证方法"屏幕上,选择未加密身份验证(PAP、SPAP)选项。

Radius server authentication method

如果出现以下警告,请单击"否"按钮。

NPS Warning message

单击"下一步"按钮,直到显示摘要屏幕。

验证半径服务器配置摘要,然后单击"完成"按钮。

pfsense active directory authentication summary

祝贺! 您已完成半径服务器配置。

阿帕奇 - 半径身份验证测试

安装所需的软件包。

Copy to Clipboard

使用以下命令在 Active 目录上测试半径身份验证:

Copy to Clipboard

下面是命令输出:

Copy to Clipboard

在我们的示例中,管理员帐户能够在 Radius 服务器上成功进行身份验证。

Apache - 活动目录上的半径身份验证

• IP - 192.168.15.11
• 操作系统 - 乌本图 19.10
• Hostname - APACHE

安装 Apache 服务器和半径模块。

Copy to Clipboard

启用 Apache2 半径模块。

Copy to Clipboard

在我们的示例中,我们将向尝试访问名为 Test 的目录的用户请求身份验证。

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

Copy to Clipboard

将 Apache 服务器配置为向尝试访问测试目录的用户请求 Radius 身份验证。

编辑 Apache 000 默认.conf 配置文件。

Copy to Clipboard

下面是配置前的 000 默认.conf 文件。

Copy to Clipboard

下面是配置后的 000 默认.conf 文件。

Copy to Clipboard

Apache 服务器配置为请求密码身份验证,以验证目录 /var/www/html/test。

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

重新启动 Apache 服务。

Copy to Clipboard

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

阿帕奇 - 半径身份验证测试

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

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

• http://192.168.15.11

将显示 Apache 默认页。

Apache default page

打开浏览器并输入 Web 服务器的 IP 地址加上 /test。

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

• http://192.168.15.11/test

在登录屏幕上,输入 Radius 用户名及其密码。

• Username: admin
• 密码: 123qwe.

Apache login form

成功登录后,您将被授权访问名为 Test 的目录。

Apache Radius Authentication test

祝贺! 您已配置 Apache 服务器上的半径身份验证。