ここでは不特定多数に公開する WEB サーバーを対象としておりません。独自CA による WEBサイトの暗号化は限られた用途のみに限定する必要があります。
本稿で紹介しているCA公開カギの活用は、ここで決めた運用ポリシーに従った利用となります。不特定多数への公開は行うべきではありません。
クライアント認証を行う場合は、自CAを公開鍵を信頼できる認証期間として明示的に登録する必要があります。そのために配布する公開鍵です。また、ユーザー側で自CAを信頼するように設定した場合、ブラウザは公的認証期間ではない旨の警告を出さなくなります。
自組織の限定ユーザーに対する公開鍵を配布する方法として、公開鍵をWeb公開ディレクトリに設置し、ユーザーにブラウザでアクセス(IE)してもらう事でインストールできるように設定します。
一般に公開する訳ではないので、ローカルユーザーに限定できる場合は、ネットワークを制限、外部ネットワークから接続する必要がある場合は、ベーシック認証による保護など適宜考えてください。
Netscapeに関してはCA公開カギがな くても警告を出さないようにする事ができます。Windows版 MAC版 IE Netscape共に、このブラウザの仕様は共通です。
/etc/httpd/ssl/cacert.pem にCA公開カギを複製したので、これを変換します。
cacert.der が生成されます。これを配布し、ユーザーがインストールする事で信頼する認証期間として登録され、警告は出なくなります。
cacert.der が自CAの公開カギとなります。これをIEでユーザーに取り込んでもらうには以下のようなCGIを用意し、ユーザーにアクセスしてもらいます。不特定多数への公開を制限するため、ディレクトリアクセス制限が必要になります。
ここでは自組織の限られたユーザーでの利用を想定しています。間違っても不特定多数に公開している WEBサービスで利用する事はお止めください。実際にこのような行為を行う銀行が存在するようです。
CAcert.cgi 以下内容
#!/bin/sh
echo "Content-Type: application/x-x509-ca-cert"
echo
cat cacert.der
CAの証明書をダウンロードしてもらうために、Webサーバー側で拡張子derを登録しておきます。以下の内容を追記します。
application/x-x509-ca-cert der
ユーザーにCAcert.cgi に接続してもらうとブラウザに信頼できる証明機関として自CAが登録されるので接続の度に出る警告はなくなります。この公開鍵を使ってクライアント認証は行えません。
windows版IEでこのcacert.cgi にアクセスした場合、cacert.cer をダウンロードするようにメッセージが出るのでダウンロードし、ダウンロードした証明書を右クリックでインストールします。次回アクセス時に警告はでなく なります。
尚、Macintosh版IEでアクセスした場合は、信頼される証明機関として登録するかダイアログが出ますので、指示に従い登録します。