鍵の生成

 最初に、 cd コマンドを実行し、次のディレクトリに移動します。/etc/httpd/conf 次の2つのコマンドを実行して、インストール時に生成された鍵と証明書を削除します。

rm ssl.key/server.key
rm ssl.crt/server.crt

 次に、自分自身のランダム鍵を作成します。コマンドを次のとおり入力します。

make genkey

 以下のようなメッセージが表示されます。

umask 77 ; \
/usr/bin/openssl genrsa -des3 1024 > /etc/httpd/conf/ssl.key/server.key
Generating RSA private key, 1024 bit long modulus
.......++++++
................................................................++++++
e is 65537 (0x10001)
Enter PEM pass phrase:

 ここでパスワードを入力する必要があります。安全性を高めるために、パスワードの長さを少なくとも8文字以上にし、また数字や句読点を組み込む必要があります。辞書に登録された単語は使わないでください。また、パスワードでは大文字/小文字が区別されることを覚えておいてください。

Note注意
 

セキュアWebサーバーを起動するたびにパスワードを思い出して入力する必要があるので、パスワードは忘れないでください。

 パスワードが正しいことを確認するために、パスワードを再入力するように要求されます。パスワードを正しく入力すると、 server.key という名前の、鍵を含むファイルが作成されます。

 セキュアWebサーバーの起動時に、毎回パスワードを入力したくない場合には、鍵を生成する際に、 make genkey の代わりに以下の2つのコマンドを使用する必要があります。どちらのコマンドも、完全に1行内に入力する必要があります。

 コマンドを次のとおり実行します。

/usr/bin/openssl genrsa 1024 > /etc/httpd/conf/ssl.key/server.key

鍵が作成されます。次のコマンドを実行して、作成された鍵に関する権限が正しく設定されたことを確認します。

chmod go-rwx /etc/httpd/conf/ssl.key/server.key

 上記のコマンドを使用して鍵を作成した後では、セキュアWebサーバーを起動する際にパスワードを使用する必要がなくなります。

Caution注意
 

安全なWebサーバーのパスワード機能を無効化することは、セキュリティ上のリスクです。セキュアWebサーバーのパスワード機能を無効化することはお勧めしません。

 パスワードを使用しないことに関連する問題は、ホストマシンのセキュリティと直接に関連します。たとえば、ふとどきなユーザーがホストマシンに関する通常のUNIXセキュリティ機能を突破した場合、そのユーザーは秘密鍵( server.key ファイルの中身)を入手することができるでしょう。この鍵を使用すれば、貴社のサイトから送信されたかのように見えるWebページを偽造することができます。

 ほとんどのホストコンピュータがUNIXのセキュリティに関する作法をきちんと守っている(つまり、公開されると同時にすべてのオペレーティングシステムパッチとアップデートデータがインストールされている、不必要または危険度の高いサービスが動いていない、など)ならば、セキュアWebサーバーのパスワードは必要ないようにも思えます。ただし、セキュアWebサーバーは頻繁に再起動すべきではないので、ほとんどの場合はパスワードを入力することによって得られる安全性に価値があるはずです。

 システムのrootユーザーが server.key ファイルの所有者となるので、他のユーザーはこのファイルにアクセスできません。このファイルのバックアップコピーを作成し、そのバックアップを安全な場所に保管してください。server.key ファイルを使用して認定要求を作成した後でこのファイルをなくした場合、証明書が機能しなくなった場合、CAが組織を支援できなくなった場合に、バックアップコピーが必要になります。さもなければ、新しい証明書を要求(かつ出費する)することしか選択肢がなくなります。

 CAから証明書を購入する場合は、本章のthe section called 認定要求の作成とCAへの送付に進みます。自己署名証明書を作成する場合は、本章のthe section called 自己署名証明書の作成に進みます。