Blog, The

1 月 22 日生まれ、ブログ座です。

Apache + Subversion で Active Directory 認証

会社で Subversion のサーバを立てることになって、
「せっかくだから AD 連携したい」と色々試してたところ、えらくハマったのでメモ。

環境

OS は Debian Squeeze。
Samba で AD ドメインに参加したりとかは、特にしてません。

インストール

まずは普通に ApacheSubversion をインストール。

# aptitude install apache2 subversion libapache2-svn

Apache モジュールの設定

関連する Apache モジュールを有効にする。

# a2enmod alias auth_basic authnz_ldap authz_default authz_user dav dav_svn ldap

/etc/apache2/mods-enabled/dav_svn.conf を編集。

<Location /svn>
  DAV svn
  SVNPath /path/to/repos

  AuthType Basic
  AuthName "Subversion Repository"
  AuthBasicProvider ldap
  AuthzLDAPAuthoritative Off
  AuthLDAPUrl "ldap://dc.example.com:389/DC=example,DC=com?sAMAccountName?sub?(objectClass=*)" NONE
  AuthLDAPBindDN hoge@example.com
  AuthLDAPBindPassword hogehoge
  AuthzSVNAccessFile /path/to/repos/conf/authz
  Require valid-user
</Location>

OpenLDAP の設定?

/etc/ldap/ldap.conf に以下の行を追加。ハマったとこ。

REFERRALS off

正直、何なのかよくわかってない。
OpenLDAP 2.1 ´ÉÍý¼Ô¥¬¥¤¥É: ʬ»¶¥Ç¥£¥ì¥¯¥È¥ê¥µ¡¼¥Ó¥¹¤Î¹½ÃÛ
この辺の話だと思うんだけども・・・


とりあえずこれらの設定で、Active Directory 認証ができるようになった。よかった。