次に、まず前もって必要になるもの (OpenSSL と OpenLDAP) をインストールし、 それから必要なモジュール全部を Apache に組みこむよう設定します。
LDAP 認証機能を加えて WebDAV サービスをコンパイルするには、そのマシンに LDAP のライブラリファイルがインストールされている必要があります。 LDAP のライブラリファイルが、Apache 用の LDAP モジュールのコンパイル に利用されるからです。LDAP のライブラリファイルを入手する最も良い方法は、 http://www.openldap.org から OpenLDAP のソースコードをインストールし、コンパイルして必要な ライブラリファイルを作成することです。IPlanet のような他の LDAP ソフトウェアを利用されてもかまいませんが、私はオープンソースの ソリューションをお勧めします。
su コマンドで root になってください。
$ su |
では、OpenLDAP の(tar)ソースファイルがあるディレクトリ (/tmp/downloads) に移動して、 中身を展開してください。
# cd /tmp/download # gzip -d openldap-stable-xxxxxxx.tar.gz # tar -xvf openldap-stable-xxxxxxx.tar # cd openldap-x.x.xx |
これで openldap パッケージに対して、"configure" を実行できます。"configure" には、 たくさんのコマンドラインオプションがあります。全てのオプションを見るには、 "configure --help" と入力してください。
LDAP サーバはどこか他のところで動いていると仮定しますので、 このウェブサーバには、LDAP デーモンは実際必要ありません。 LDAP のライブラリ・ファイルだけが必要です。 LDAP デーモンをコンパイルしませんので、 'configure' のコマンドライン・オプションに '--disable-slapd' を指定しなくてはなりません。
# ./configure --disable-slapd |
--disable-slapd オプションを付けることで、 LDAP デーモンをインストールしないよう指定しています。 configure が終わったら、OpenLDAP パッケージの依存関係を構築できます。
# make depend |
依存関係を構築したら、OpenLDAP パッケージをコンパイルする必要があります。 make コマンドを使用してください。
# make |
すべてうまくいけば、あなたはカレントディレクトリに OpenLDAP をコンパイルしたことになります。この後、そのコンパイルされた バイナリを、しかるべき位置にインストールする必要があります。
# make install |
これで、 mod_ldap が必要とする LDAP のライブラリ・ファイルが、 正しいディレクトリ構造に置かれたはずです。
ウェブサーバ上で SSL 証明書を作成、管理するには、OpenSSL が必要となります。 Apache 用の SSL モジュールで使うライブラリのためにも、 OpenSSL のインストールが必要になります。
それでは、OpenSSL のソースコード・ファイルがあるディレクトリに移動 してください。
# cd /tmp/download # gzip -d openssl.x.x.gz # tar -xvf openssl.x.x # cd openssl.x.x # make # make test # make install |
mod_dav のインストールには、Apache を事前に設定(pre-configure)して、 必要なものすべてがどこにあるかが mod_dav からわかるようにしておく必要 があります。Apache のソースファイルのあるディレクトリに戻ってください。
# cd /tmp/download # gzip -d apache_1.x.x.tar.gz # tar -xvf apache_1.x.x.tar # cd apache_1.x.x # ./configure --prefix=/usr/local/apache |
上で述べたように、mod_dav は Apache のインストール時に静的にリンク されることになります。mod_dav ファイルの展開から始めてください。
# cd /tmp/download # gzip -d mod_dav-1.x.x.tar.gz # tar -xvf mod_dav-1.x.x.tar |
展開時に作成された新規ディレクトリに移動してください。
# cd mod_dav-1.x.x
そこで、Apache に静的リンクするよう mod_dav パッケージを設定してください。
# ./configure --with-apache= /tmp/download/apache_1.x.x
ファイルをコンパイルし、インストールしてください。
# make
# make install
make install の際に、mod_dav は部分的にコンパイルされ、 Apache のツリー以下に配置されます。
テンポラリのダウンロード用ディレクトリに戻り、mod_auth_ldap ファイルを展開してください。
# cd /tmp/download # gzip -d mod _auth_ldap.tar.gz # tar -xvf mod_auth_ldap.tar |
Apache ソースツリーに、modauthldap 配下のファイルをインストールします。
# cd apache_x.x.x # mv ../modauthldap ./src/modules/ldap |
# cd /tmp/download # gzip -d mod_ssl-2.x.x.tar.gz # tar -xvf mod_ssl-2.x.tar # ./configure --with-apache=../apache_1.3.x.x |
ようやく目的とするところに辿りつきました。でも、まだ目的には達していない のです.......
「旅こそが目的(The Journey is the Destination)」 (グレイトフル・デッドのジェリー・ガルシア) |
WebDAV と DAV 用の LDAP 認証機能付きの Apache をコンパイルし、 インストールする準備ができています。
テンポラリのダウンロード用ディレクトリに戻ってください。
# cd /tmp/download
Apache のソースツリーのあるディレクトリに戻ってください。
# cd apache-x.x.x
それでは OpenSSL のライブラリ・ファイルに、SSL_BASE 変数をセットしてください。 tcsh なら、以下のようにして行います。
# setenv SSL_BASE /tmp/download/openssl-0.9.x |
これで、コンパイルに SSL LIB ファイルを探す場所を指定します。
それでは mod_dav, mod_auth_ldap, そして mod_ssl を結合した Apache を構築してください。
# ./configure --prefix=/usr/local/apache \ --enable-module=ssl \ --activate-module=src/modules/ldap/mod_auth_ldap.c \ --activate-module=src/modules/dav/libdav.a \ --enable-shared=ssl [...ここにさらにオプションを追加可能...] |
--enable-shared は省略可能で、これは configure コマンドに SSL を動的モジュールとして構築するよう指定するものです。 提供しているサービスによって、 動的コンパイルを必要とするかもしれませんし、必要としないかもしれません。
それでは Apache をコンパイルし、それを適切な位置にインストールしてください。
# make
ウェブサーバ上に SSL 証明書を作成してください。
# make certificate TYPE=custom
処理をやり通せば、すぐに証明書を保有できます。CommonName があなたの FQDN (Fully Qualified Domain Name)になることを覚えておいてください (例:dav.yourcompany.com)。
SSL 証明書の作成と管理の詳細については、「SSL 証明書の作成と管理」 のセクションをご覧ください。
それでは Apache を自分で指定したディレクトリにインストールしてください。
# make install