mod_auth_kerb / apache 2.4 не аутентифицируется для подпапок

Я делюсь репозиториями Subversion, используя mod_dav_svn и Kerberos аутентификацию mod_authz_kerb. Все это работало, и недавно это прекратилось. Он аутентифицирует пользователя для папки верхнего уровня URL, но не для каких-либо подпапок.

Вот ошибки на стороне клиента:

$ svn list https://myserver/svn/test
projectA/
projectB/
projectC/
projectD/

$ svn list https://myserver/svn/test/projectC
svn: E120190: Unable to connect to a repository at URL 'https://myserver/svn/test/projectC'
svn: E120190: Error running context: An error occurred during authentication

После выполнения первой команды сервер выводит, что он аутентифицировал пользователя, проверяющего KDC:

[auth_kerb:debug] [pid 10694] src/mod_auth_kerb.c(1093): [client :57101] kerb_authenticate_user_krb5pwd ret=0 user=user@DOMAIN.CA authtype=Basic
[authz_svn:info] [pid 10694] [client :57101] Access granted: 'user@DOMAIN.CA' OPTIONS (null)

При запуске второй команды на сервере я просто получаю:

[authz_svn:debug] [pid 10577] mod_authz_svn.c(449): [client :57072] Path to authz file is /opt/svn/generic_acl.conf
[authz_core:debug] [pid 10577] mod_authz_core.c(802): [client :57072] AH01626: authorization result of Require valid-user : denied (no authenticated user yet)
[authz_core:debug] [pid 10577] mod_authz_core.c(802): [client :57072]   AH01626:   authorization result of <RequireAny>: denied (no authenticated user yet)

Для второй команды я не получаю подсказку для пароля и auth_kerb, вовлеченного каким-либо образом.

Конфигурация apache для этого находится внутри /etc/apache2/conf-enabled/subversion.conf:

<Location /svn/test>
    Dav svn
    SVNPath /srv/svn/test

    SVNListParentPath On
    SVNAutoVersioning On

    AuthName "DOMAIN.CA"
    AuthType Kerberos
    KrbMethodNegotiate On
    KrbMethodK5Passwd On
    KrbAuthoritative On
    KrbVerifyKDC On
    KrbAuthRealms DOMAIN.CA
    Krb5KeyTab /etc/krb5.keytab
    KrbServiceName HTTP

    AuthzSVNAccessFile /opt/svn/generic_acl.conf

    Require valid-user
</Location>

Я переконфигурировал директиву для использования базовой / htpasswd аутентификации и LDAP для того же Active Directory, настроенный для Kerberos. Эти две альтернативные конфигурации кажутся работающими. Кажется, что что-то не так с недавним модулем apache / kerberos.

Любые предложения будут с благодарностью.

Я использую Ubuntu 14.04.3, apache 2.4.7-1ubuntu4.5, libapache2-mod-auth-curb 5.4-2.1

0
задан 1 September 2015 в 00:29

2 ответа

У Вас случайно есть шибболет на том сервере. Шибболет, кажется, повреждается, основной автор в том действительном пользователе не работает. Попробуйте

ShibCompatValidUser На на апачской конференции

http://trwa.ca/2014/10/shibboleth-2-5-apache-2-4-and-breaking-apache-basic-auth/

Для меня, SVNParentPath, кажется, не работает. Если я использую SVNPath, он работает как ожидалось (но затем я должен настроить запись в апачском conf для каждого repo)

, И я также думаю, что что-то повреждается. Я обновил до человечности 14.04 несколько месяцев назад, но только начал использовать repo's снова теперь.

1
ответ дан 1 September 2015 в 10:29
  • 1
    Спасибо. К сожалению, это didn' t работа. Обновленный мой вопрос. – H3R3T1K 22 November 2016 в 22:20

Для меня понижающий до предыдущих работ версии:

aptitude install libapache2-mod-svn=1.8.8-1ubuntu3 libapache2-mod-svn=1.8.8-1ubuntu3 libsvn1=1.8.8-1ubuntu3 subversion=1.8.8-1ubuntu3

и приостановленный их (по крайней мере, пока фиксация не будет выпущена):

aptitude hold libapache2-mod-svn libapache2-mod-svn libsvn1 subversion
0
ответ дан 1 September 2015 в 10:29
  • 1
    There' s способ заставить его выполнить при запуске, но в прошлый раз, когда я пытался сделать это, я должен был войти в системное восстановление для отмены то, что я сделал, но я знаю, что возможно, если Вы делаете его правильно. – cheesits456 22 November 2016 в 09:57

Другие вопросы по тегам:

Похожие вопросы: