使用 Active Directory 的 Subversion 服务器
Subversion Server Using Active Directory
我是 运行 VMWare Workstation 11 下的 Linux 服务器,用于颠覆控制。我在另一个VM下还有一个Windows Server 2012 R2域控制器运行。我正在使用 CentOS7 并希望将身份验证配置为使用活动目录。我的 CentOS7 服务器已经加入域,我可以执行任务来验证我是否已连接,例如。
$id myuser
我安装了 mod_ldap,一切似乎都正常,但是当我访问该网站并尝试进行身份验证时,我在错误日志中收到以下消息。
[Thu Mar 05 13:04:32.976448 2015] [auth_basic:error] [pid 2541] [client
192.168.28.1:52099] AH01618: user myuser not found: /svn/testrepo
有一件事我不明白,它说的是客户端 192.168.28.1,而 DC 位于 192.168.28.3。也许这有问题,但我不明白为什么它显示 VMNet8 适配器的 IP。
这是我的 /etc/httpd/conf.d/svn.conf 文件中的信息。
<location /svn>
DAV svn
SVNParentPath /svn
AuthType Basic
AuthName "Root Repo"
AuthUserFile /dev/null
AuthLDAPBindDN "CN=Apache User,CN=Users,DC=corp,DC=mydomain,DC=com"
AuthLDAPBindPassword apachePassword
AuthLDAPURL "ldap://192.168.28.3.corp.mydomain.com:389/DC=corp,DC=mydomain,DC=com?sAMAccountName?sub?(objectClass=*)"
require valid-user
</location>
似乎无论我如何输入凭据,我总是会收到上述错误。
其实我自己回答了这个问题。我不得不将我的 LDAP url 更改为以下内容。
AuthLDAPURL "ldap://192.168.28.3/DC=corp,DC=mydomain,DC=com?
AMAccountName?sub?(objectClass=*)"
我想将域添加到 IP 上是行不通的。我还必须添加
AuthBasicProvider ldap
所以现在我的文件如下所示。
<location /svn>
DAV svn
SVNParentPath /svn
AuthType Basic
AuthBasicProvider ldap
AuthName "Root Repo"
AuthLDAPURL "ldap://192.168.28.3/DC=corp,DC=mydomain,DC=com?
sAMAccountName?sub?(objectClass=*)"
AuthLDAPBindDN "CN=Apache User,CN=Users,DC=corp,DC=mydomain,DC=com"
AuthLDAPBindPassword apacheUserPassword
Require valid-user
</location>
我是 运行 VMWare Workstation 11 下的 Linux 服务器,用于颠覆控制。我在另一个VM下还有一个Windows Server 2012 R2域控制器运行。我正在使用 CentOS7 并希望将身份验证配置为使用活动目录。我的 CentOS7 服务器已经加入域,我可以执行任务来验证我是否已连接,例如。
$id myuser
我安装了 mod_ldap,一切似乎都正常,但是当我访问该网站并尝试进行身份验证时,我在错误日志中收到以下消息。
[Thu Mar 05 13:04:32.976448 2015] [auth_basic:error] [pid 2541] [client
192.168.28.1:52099] AH01618: user myuser not found: /svn/testrepo
有一件事我不明白,它说的是客户端 192.168.28.1,而 DC 位于 192.168.28.3。也许这有问题,但我不明白为什么它显示 VMNet8 适配器的 IP。
这是我的 /etc/httpd/conf.d/svn.conf 文件中的信息。
<location /svn>
DAV svn
SVNParentPath /svn
AuthType Basic
AuthName "Root Repo"
AuthUserFile /dev/null
AuthLDAPBindDN "CN=Apache User,CN=Users,DC=corp,DC=mydomain,DC=com"
AuthLDAPBindPassword apachePassword
AuthLDAPURL "ldap://192.168.28.3.corp.mydomain.com:389/DC=corp,DC=mydomain,DC=com?sAMAccountName?sub?(objectClass=*)"
require valid-user
</location>
似乎无论我如何输入凭据,我总是会收到上述错误。
其实我自己回答了这个问题。我不得不将我的 LDAP url 更改为以下内容。
AuthLDAPURL "ldap://192.168.28.3/DC=corp,DC=mydomain,DC=com?
AMAccountName?sub?(objectClass=*)"
我想将域添加到 IP 上是行不通的。我还必须添加
AuthBasicProvider ldap
所以现在我的文件如下所示。
<location /svn>
DAV svn
SVNParentPath /svn
AuthType Basic
AuthBasicProvider ldap
AuthName "Root Repo"
AuthLDAPURL "ldap://192.168.28.3/DC=corp,DC=mydomain,DC=com?
sAMAccountName?sub?(objectClass=*)"
AuthLDAPBindDN "CN=Apache User,CN=Users,DC=corp,DC=mydomain,DC=com"
AuthLDAPBindPassword apacheUserPassword
Require valid-user
</location>