CentOS + Subversion + LDAP + ApacheをInstallして設定
CentOSにSubversionをInstallして、Mac OS X ServerのSubversionで管理していたRepositoryを移行したときのMemo. 長くなったので今回は設定まで。
環境は
Server: CentOS 6.0 x64, Subversion 1.6, OpenLDAP 2.4.19, Apache 2.2.15
Client: Windows 7 Home Premium 64bit (英語版)
参考にしたのは下記Site.
- バージョン管理システム構築(Subversion) - CentOSで自宅サーバー構築
- CentOS5(RHEL5)+LDAP+Apache2+WebDAV+Subversion設定メモ - MugeSoの日記
1. Install
Subversion本体をYUM経由でInstall
# yum install subversion
SubversionとApacheを連携させるModuleをInstall. mod_authz_svnも同時にInstallされるらしい。詳しくは
/usr/share/doc/subversion-1.6.11/mod_authz_svn-INSTALL
に書いてある。
# yum install mod_dav_svn
Moduleがあるか確認
# ls /usr/lib64/httpd/modules/
自動的にModuleを読み込むApache用設定Fileを作成してくれる。
# less /etc/httpd/con.d/subversion.conf
2. Apache用設定Fileを記述
Repository用のDirectoryを作成
# mkdir /home/svn
# mkdir /home/svn/Repositories
VirtualHostを利用した場合の設定例
#
# For subversion
#
<VirtualHost *:80>
ServerName svn.hoge.com.sg
<Location "/">
DAV svn
SVNParentPath /home/svn/Repositories
#SVNListParentPath on
#SVNAutoversioning on
<LimitExcept GET PROPFIND OPTIONS REPORT>
Order deny,allow
Deny from All
Allow from 127.0.0.1
Allow from 192.168.0.0/24
AuthType Basic
AuthBasicProvider ldap
AuthName "Authorization Realm for Subversion"
AuthzLDAPAuthoritative off
AuthLDAPURL ldap://127.0.0.1/ou=people,o=hoge,dc=com,c=sg?uid
Require valid-user
</LimitExcept>
</Location>
</VirtualHost>
DocumentRootがあると
Error: Redirect cycle detected for URL
とCheckoutするときに怒られるので注意。
設定を反映させる
# /etc/rc.d/init.d/httpd configtest
# /etc/rc.d/init.d/httpd reload
3. LDAPに認証するUserを追加
OpenLDAPのInstall方法は前の記事を参考に。Install後はLDAP AdminというFree Softを使うと楽。今のVersionは1.2
起動直後に「規定のLDAP Browserにするか?」と聞いてきて、「Yes」を選択するとErrorになるけど気にしない。
4. Repositoryを追加して、Http経由でCheckout, Commitが出来るか試す
Test用のRepositoryを追加
# cd /home/svn/Repositories/
# svnadmin create test1
# chown -R apache test1/
TortoiseSVNなどのSubversion ClientでCheckoutとCommit出来れば完了。
次回はMac OS X ServerのSubversionのRepositoryを移行する。
最後にSubversionのRepositoryを作成、削除するにはUSVNというFreeの管理Toolが便利そう。今度試す予定。
< Related Posts >