是否有任何可用的 Apache 模块可以在 Ubuntu Server 上实现 NTLM

是否有任何可用的 Apache 模块可以在 Ubuntu Server 上实现 NTLM

我正在尝试为在 Apache/Ubuntu Jammy 上运行的内部站点配置 NTLM 身份验证。我能够实现 LDAP 身份验证。不过,我希望使登录/身份验证过程顺利进行,因为用户已经使用其域凭据登录到他的工作计算机。

我尝试根据通过 Google 找到的一些旧文档通过 apt 安装 Apache 模块,但这些软件包不再可用。

sudo apt install libapache2-mod-auth-ntlm  
E: Unable to locate package libapache2-mod-auth-ntlm

您能否建议我如何为在基于 Debian 的 Linux(Ubuntu)上运行的 Apache 代理服务器实现 NTLM 身份验证?

答案1

自 2010 年起,Microsoft 不再推荐 NTLM在应用程序中。

NTLM 不支持任何最新的加密方法,例如 AES 或 SHA-256。它使用循环冗余校验 (CRC)或消息摘要算法([RFC1321])来保证完整性,并使用 RC4 进行加密。推导出钥匙密码如下:[RFC1320][FIPS46-2].因此一般建议应用程序不要使用NTLM。<81>

应该使用 Microsoft Kerberos 身份验证。

虽然libapache2-mod-auth-kerb对于 Jammy 来说,它已经存在从 Debian 11 中删除。因此,我会使用libapache2-mod-auth-gssapi而是用于未来的实现。

  1. sudo apt install libapache2-mod-auth-gssapi

  2. 配置 Apache,例如,

    <Location /private>
        AuthType GSSAPI
        AuthName "GSSAPI Single Sign On Login"
        GssapiCredStore keytab:/etc/httpd.keytab
        Require valid-user
    </Location>
    

相关内容