FC2ブログ

SVN + LDAPな連携方法

SVN(Subversion)とLDAPの連携(Apache)をやったので書き置き。
これもすんなりはやらせてもらえず・・・悩みました。

さて、今回はこんな感じな流れで説明していこうかと。ただしガンガン省略して、設定ファイルばっかり書いてくよ。

  1. LDAPのインストール
  2. SVNのインストール
  3. LDAPとSVNの連携

ではではやってきましょう。とはいえ、LDAPインストールはスキップ。各自ぐぐってください。

SVNのインストール

飛ばしてもいいかなと思ったけど、簡単なので一応書いとく。
Subversionは単独でも動かせるけど、今回はApacheのBasic認証(LDAP)を利用するので、Apache連携なSVNのインストールをしようと思う。

とはいえ、ほとんど書く必要ないほど簡単。
まずはリポジトリにしたいディレクトリを作成。それをApacheから見えるようにして、Apacheにちょっと設定するだけ。

# mkdir /var/svn #適宜変えてね!
# cd /var/svn
# svnadmin create repos
# chown -R apache:apache /var/svn
# vim /etc/httpd/conf/httpd.conf
...
<Location /svn>
    DAV svn
    SVNPath /var/svn/repos
</Location>
...

てな感じで。とっても簡単でイイネ!
あ、モジュールとかが足りなかったらちゃんと追加しとくのを忘れずに。

LoadModule dav_svn_module       extramodules/mod_dav_svn.so

ここまでできたらhttp://yourhost.com/svn/reposでアクセスできるはずだよ。

LDAPとSVNの連携

次は連携。基本的にApache側に設定していく。さっきのLocationのところに追記する感じかな。
自分の環境はApache2.2だったんだけど、ネットに晒されてる設定じゃうまくいかなかった。いろいろ工夫するうちに以下でおさまった。

  <Location /svn>
       DAV svn
       SVNParentPath /var/svn/

       AuthType Basic
       AuthBasicProvider ldap
       AuthName "Subversion Test"
       AuthzLDAPAuthoritative off
       AuthLDAPURL "ldap://yourldaphost.com:389/ou=people,dc=xxxxxx,dc=com?uid"

       AuthLDAPBindDN "ログイン名"
       AuthLDAPBindPassword "パスワード"

       Require valid-user
   </Location>

これで完了!http://yourhost.com/svn/reposで試してみてくださいな。

ちなみにAuthLDAPURLの書式はこのページあたりを参照すると吉。
うまくいかないときはLogLevelをdebugとかに変えるといい。

スポンサーサイト



コメントの投稿

非公開コメント

検索フォーム
RSSリンクの表示
QRコード
QR