0

我正在通过 kerberos (mod_auth_kerb) 在 Apache 网络服务器中针对 Active Directory 部署 SSO。

该模块已正确安装和配置,当我使用登录用户访问 AD 网络的 apache 网站时,Apache 通过REMOTE_USER变量正确接收用户的凭据。问题是我希望外部用户(非 AD 网络用户)能够通过常规登录访问 Apache 网站,但他们获得了

401 需要授权

访问网站时。

我想这可以通过 kerberos 配置来实现,但还没有达到解决方案。有谁知道这是否可以使用 kerberos 位置指令,或者我应该为此配置一些解决方法,例如通过虚拟主机配置位置指令中的 ip 范围限制位置访问?

我的虚拟主机配置是:

<VirtualHost *:80>
    # General
    ServerAdmin packettrc@my.es
    DocumentRoot /home/moodle/moodle
    ServerName my.es  
    LogLevel debug
    ErrorLog logs/my.es-error.log
    CustomLog logs/my.es.log combined

    <Location />    
        AuthType Kerberos
        AuthName "Kerberos Login MY"

        KrbMethodNegotiate On
        KrbMethodK5Passwd Off
        KrbServiceName HTTP/my.es@MY.ES
        KrbAuthRealms MY.ES  
        Krb5KeyTab      /etc/krb5.keytab

        require valid-user
    </Location>
</VirtualHost>
4

1 回答 1

1

尝试更换

Require valid-user

Satisfy Any

您可以在本文中找到一些见解。以防万一链接到 Apache 的手册

于 2014-10-28T09:55:49.930 回答