ICAP は,認証実用化協議会(ICAT)http://www.icat.or.jp/ にて研究開発成果として公開されている CA パッケージです.現在の URL は,http://www.wide.ad.jp/document/historical-projects/icat/ です.ダウンロードファイルは現在準備中なのでしばらくお待ちください.
ICAP は,Perlで書かれた CGI など動作環境を選ばない icap-common.tar.gz と,特定のプラットホームでコンパイルされた icap-<freebsdなど>.tar.gz を利用します.http://www.wide.ad.jp/document/historical-projects/icat/ から必要なファイルをダウンロードします.
ダウンロード後,これらのファイルを解凍します.どちらのファイルも ICAP/〜 のようにディレクトリつきで解凍されますので,同じディレクトリで解凍をする必要があります.
解凍後, ICAP というディレクトリをインストール先(/usr/local など)に移動します.インストール先はどこでもよいけど,ICAP には,設定保存先として,/usr/local/etc をハードコーディングしている場合もあることを留意しておきます.
ICAP ディレクトリを移動後, ICAP/install のスプリクトを実行して,質問に答えていってください.
応用的な方法ですが,スプリクトを実行する前に書き換える方法もあります.インストールスプリクトは実行すると,一度入力ミスをすると最初からやり直す必要がある仕組みになってしまっています.注意深く見るとスプリクトは,以下のような構造の繰り返しになっています.
echo "tail コマンドのパス名を入力して下さい。" echo -n " (default: /usr/ucb/tail) " read answer if [ -z "${answer}" ] ; then answer="/usr/ucb/tail" fi if [ ! -x $answer ] ; then echo echo "!! tail が存在しません。" echo "!! インストール作業を中断します" echo exit 1 fi
これをデフォルトで適切な形になるように編集します
echo echo "tail コマンドのパス名を入力して下さい。" -echo -n " (default: /usr/ucb/tail) " +echo -n " (default: /usr/bin/tail) " read answer if [ -z "${answer}" ] ; then - answer="/usr/ucb/tail" + answer="/usr/bin/tail" fi
このように変更しておけば,スプリクト実行時には,Enter を押すのみです.スプリクト実行後, ICAP/cgi-bin の中を見ると, .pl と拡張子がついたものとついていないものがあるはずです.この拡張子がない方が,インストールスプリクトが生成した設定済みのスプリクトになります.
ICAP では,シンボリックリンクを Apache のデータディレクトリに作成するため,シンボリックリンクをたどれるように設定する必要があります.
<Directory "/usr/local/www/data"> Options FollowSymlinks </Directory>
<Directory "/usr/local/www/cgi-bin"> Options FollowSymlinks </Directory>
もちろん, CGI も有効にする必要があります.
http://localhost/ca/admin/ など CA 管理者のページを表示すると以下のようになります.
と表示されているはずです.これを上から順に設定していきます. 上から順にやる というのがポイントです.でないと正常に動作しないことになります.
ICAP で証明書破棄を行う場合,ICAP ユーザが破棄する方法と,管理者が破棄する方法があります.
証明書を廃止する を選択すると,証明書破棄チケットが表示されます.このチケットを,ユーザの秘密鍵で署名を行い,送信すると破棄されます.
管理者であれば,証明書のシリアル番号か,破棄する証明書そのものを準備すれば証明書の破棄が可能です.管理者向けサービスの ユーザの証明書の登録を抹消する を選択してください.
発行済みの証明書は, ユーザの証明書を表示 を選択すると表示されます.MIC-CLEAR モードとは,本文は平文のままで署名のみを行うモードのことを指します.