Apache-2.2

具有活動目錄身份驗證的 Apache Subversion 不起作用

  • August 26, 2015

我正在嘗試使用活動目錄配置 Apache Subversion,但域使用者的憑據不起作用。我是 Subversion 的新手,但我首先是:

LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so

<Location /svn>
  DAV svn
  SVNParentPath /var/www/svn
  AuthType Basic
  AuthName "Authorization Realm"
  AuthUserFile /etc/svn-users
  Require valid-user
</Location>

這使用了使用 htpasswd 創建的憑據。

我現在已經/etc/httpd/conf.d/subversion.conf像這樣編輯了文件:

LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so

<Location /svn>
  DAV svn
  SVNParentPath /var/www/svn
  AuthType Basic
  AuthName "Authorization Realm"
  AuthzLDAPAuthoritative off
  AuthBasicProvider ldap
  AuthLDAPURL ldap://server.example.local/dc=example,dc=local?sAMAccountName" NONE
  AuthLDAPBindDN "CN=Administrator,CN=Users,DC=example,DC=com"
  AuthLDAPBindPassword "<password>"
  Require valid-user
</Location>

當我檢查 /var/log/httpd/access_log 我沒有看到錯誤,只是這個:

192.168.1.3 - user1 [26/Aug/2015:07:45:05 +0200] "GET /svn/project_repo HTTP/1.1" 401 479 "-" "Mozilla/5.0 (X11; Linux x86_64; rv:10.0.12) Gecko/20130104 Firefox/10.0.12"

當我檢查 /var/log/httpd/error_log 時,我看到密碼不匹配:

[Wed Aug 26 08:05:22 2015] [error] [client 192.168.1.3] user user1: authentication failure for "/svn/project_repo": Password Mismatch

但我確信密碼是正確的。

我可以檢查其他日誌嗎?還是我的配置錯了?

編輯: 顯然DN是錯誤的,我在dsquery user > c:\dn.txtAD伺服器上執行以獲得正確的DN。當我現在嘗試登錄時,我收到內部伺服器錯誤,但/var/log/httpd/error_log文件中沒有錯誤。我可以檢查任何其他文件嗎?

我在此連結中找到了一個答案,說您應該將埠號更改為 3268。它現在可以工作了!我的/etc/httpd/conf.d/subversion.conf文件現在看起來像這樣:

LoadModule dav_svn_module     modules/mod_dav_svn.so
LoadModule authz_svn_module   modules/mod_authz_svn.so

<Location /svn>
  DAV svn
  SVNParentPath /var/www/svn
  AuthType Basic
  AuthName "Authorization Realm"
  AuthzLDAPAuthoritative off
  AuthBasicProvider ldap
  AuthLDAPURL "ldap://server.example.LOCAL:3268/dc=example,dc=local?sAMAccountName" NONE
  AuthLDAPBindDN "CN=Administrator,CN=Users,DC=example,DC=local"
  AuthLDAPBindPassword "PASSWORD"
  Require valid-user
</Location>

引用自:https://serverfault.com/questions/716840