您想了解如何在活动目录上配置 Nginx 服务 Kerberos 身份验证吗? 在本教程中,我们将向您展示如何使用来自 Microsoft Windows 和 Kerberos 协议的活动目录对 Nginx 用户进行身份验证。

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

在我们的示例中,域控制器 IP 地址为 192.168.15.10。

在我们的示例中,Nginx 服务器 IP 地址为 192.168.15.11。

设备列表

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

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

教程窗口 - 域帐户创建

• IP - 192.168.15.10
• Operacional System - WINDOWS 2012 R2
• Hostname - TECH-DC01

我们需要在活动目录数据库上至少创建 1 个帐户。

管理员帐户将用于登录 Nginx 服务器。

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

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

Zabbix active directory account

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

配置为 ADMIN 用户的密码: kamisama123.

此帐户将用于在 Nginx 服务器上进行身份验证。

active directory admin account
zabbix active directory admin properties

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

Nginx - 活动目录中的 Kerberos 身份验证

• IP - 192.168.15.11
• Operational System - Ubuntu 20
• Hostname - NGINX

使用 HOSTNAMECTL 命令设置主机名。

Copy to Clipboard

编辑 HOSTS 配置文件。

Copy to Clipboard

添加域控制器 IP 地址和主机名。

Copy to Clipboard

安装所需的包列表以启用 Kerberos 身份验证。

Copy to Clipboard

在图形安装中,执行以下配置:

• Kerberos realm - TECH.LOCAL
• Kerberos server - TECH-DC01.TECH.LOCAL
• Administrative server - TECH-DC01.TECH.LOCAL

您需要更改域信息以反映网络环境。

编辑 Kerberos 配置文件。

Copy to Clipboard

这是我们配置之前的文件。

Copy to Clipboard

这是我们配置后的文件。

Copy to Clipboard

您需要更改域信息以反映网络环境。

您已经完成了所需的 Kerberos 配置。

Nginx - Kerberos 身份验证

安装 Nginx 服务器和所需的包。

Copy to Clipboard

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

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

Copy to Clipboard

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

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

Copy to Clipboard

将以下配置添加到此文件。

Copy to Clipboard

这是我们配置之前的文件。

Copy to Clipboard

这是我们配置后的文件。

Copy to Clipboard

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

Nginx 服务配置为使用 PAM 身份验证模块对用户帐户进行身份验证。

创建 PAM 配置文件。

Copy to Clipboard

这是文件内容。

Copy to Clipboard

在我们的示例中,我们将使用 Kerberos 对 Nginx 服务访问进行身份验证。

重新启动 Nginx 服务。

Copy to Clipboard

祝贺! 您已成功将 Nginx 身份验证配置为使用 Kerberos。

Nginx - 凯贝罗斯身份验证测试

创建要在身份验证测试中使用的 HTML 页。

Copy to Clipboard

在我们的示例中,我们创建了一个名为 TEST 的 HTML 页面。

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

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

• http://192.168.15.11

将显示 Nginx 默认页面。

nginx welcome

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

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

• http://192.168.15.11/test/test.html

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

• Username: admin
• Password: kamisama123..

Apache login form

成功登录后,您将有权访问名为 TEST 的目录。

Nginx authentication test

祝贺! 您已经配置了 Nginx 服务器上的 Kerberos 身份验证。