Chapter 5. セキュアサーバの証明書を取得する

Table of Contents
既存の鍵と証明書の使用法
Web サーバのセキュリティの概要
証明書のタイプ
認定機関に関する決定
CA に対して貴組織の身元を証明する
鍵の生成
認定要求を作成して CA に送る
証明書の購入
自己署名証明書の作成
証明書のテスト
Apache の起動と停止
セキュアサーバにアクセスする

本章では、証明書を取得しインストールすることによって、サーバを保護するプロセスを紹介します。

貴組織との業務を Web 経由で遂行する際に、顧客に安心感を与えるためには、貴組織の Web サーバを保護する必要があります。セキュアサーバは、Secure Sockets Layer (SSL) プロトコルを使用します。このプロトコルはブラウザとサーバの間でやりとりされるデータを暗号化します。ブラウザが SSL を使用して通信している場合は、ナビゲーションバーの URL (Uniform Resource Locator) の前に https: という接頭辞が表示されます。

Web サイトから何かを購入する際に、そのサイトの取引が安全であることが分かっていれば、顧客は安心できます。ただし、セキュアサーバは E-コマースのためにのみ使用される訳ではありません。外回りのセールスマンやインターネット上の業務取引先に対して売上げ金額などの機密データを送信する場合にも、セキュアサーバを使用することができます。

セキュアサーバは、証明書を使用することで自分自身の身元を Web ブラウザに対して示します。自分で証明証を作成 (「自己署名」証明書と言います) しても、認定機関すなわち CA から証明書を取得してもかまいません。有名な CA から発行される証明書により、Web サイトが特定の会社または組織と関連していることが保証されます。

サーバを E コマース目的で使用する場合は、おそらく CA から証明書を購入したいと思うでしょう。CA の証明書は 2 つのメリットを提供します:(通常) ブラウザは自動的に CA の証明書を認識するので、Web サイトの責任を持つ組織の身元が CA によって保証されます。自己署名証明書がユーザのブラウザによって自動的に受け付けられることはありません - この場合、ユーザは、証明書を受け付けて安全な接続を確立するのかどうかをブラウザから尋ねられることになります。

CA による署名付証明書を使用するということは、サーバを運用する組織の身元を保証するということです。たとえば、ある Web サイトが Red Hat のものであると証明書に記載されており、ユーザがその CA を信頼するならば、そのサイトからダウンロードしたファイルやプログラムが本当に Red Hat から提供されたものであることを疑う理由がなくなります。

最初のステップは、公開鍵と秘密鍵の組を作成することです。次に、認定要求 (CSR) を作成して CA に送信するか、自己署名証明書を作成する必要があります。本章では、VeriSign (http://www.verisign.com または Red Hat のお客様に対する VeriSign 社の割引については http://www.verisign.com/offer/redhat/ を参照) および Thawte (http://www.thawte.com) からテスト証明書および署名付証明書を取得する方法、および独自の証明書を作成する方法について説明します。

注意:: 本マニュアルに登場する CA のみではなく、任意の CA から署名付証明書を取得できることに注意してください。ただし、VeriSign は Red Hat のお客様に、証明書に関する割引を提供しています。VeriSign の割引については、http://www.verisign.com/offer/redhat を参照してください。

自己署名証明書を作成するか、好みの CA から署名付証明書を取得した後で、その証明書を Red Hat Linux Secure Web Server にインストールする方法を学ぶことになります。

既存の鍵と証明書の使用法

すでに鍵と証明書を所有している場合 (たとえば、Red Hat Linux Secure Web Server をインストールすることによって、他社の安全な Web サーバ製品と置き換える場合)、おそらくは Red Hat Linux Secure Web Server についても既存の鍵と証明書を使用することができます。以下の 2 つの状況では、既存の鍵と証明書を使用することはできません。

IP アドレスまたはドメイン名を変更する場合には古い鍵と証明書を使用することはできません。証明書は、特定の IP アドレスとドメイン名の組に対して発行されます。したがって、IP アドレスまたはドメイン名を変更する場合は、新しい証明書を取得する必要があります。

VeriSign は広く利用される CA です。すでに別の目的のために VeriSign の証明書を所有している場合は、新しい Red Hat Linux Secure Web Server についても既存の VeriSign の証明書を使用することを考えているかもしれません。ただし、そうすることは許されません。なぜならば、VeriSign は特定のサーバソフトウェアと IP アドレス/ドメイン名の組み合わせに対して証明書を発行するからです。

そのようなパラメータのいずれかを変更する場合 (たとえば、以前は別の安全な Web サーバ製品を使用しており、今度は Red Hat Linux Secure Web Server を使用する場合)、以前の構成について取得していた VeriSign 証明書は、新しい構成では機能しなくなります。したがって新しい証明書を取得する必要があります。

既存の鍵と証明書を使用することができる場合は、Chapter 5 に含まれる指示に従う必要はありません。鍵と証明書を含むファイルを移動し、その名前を変更する必要があります。

既存の鍵ファイルを以下の場所に移動します。

/etc/httpd/conf/ssl.key/server.key

既存の証明書ファイルを以下の場所に移動します。

/etc/httpd/conf/ssl.crt/server.crt

鍵と証明書を移動した後で、the section called 証明書のテスト に進みます。

Red Hat Secure Web Server のバージョン 1.0 および 2.0 からアップグレードする場合、古い鍵 (httpsd.key) および証明書 (httpsd.crt) は /etc/httpd/conf/ の中に保存されることになります。Red Hat Linux Secure Web Server が鍵と証明書を使用できるようにするには、鍵と証明書を移動して名前を変更する必要があります。鍵と証明書を移動し、名前を変更するには、以下の 2 つのコマンドを使用します。

mv /etc/httpd/conf/httpsd.key /etc/httpd/conf/ssl.key/server.key
mv /etc/httpd/conf/httpsd.crt /etc/httpd/conf/ssl.crt/server.crt

次に the section called Apache の起動と停止 で説明するようにして Red Hat Linux Secure Web Server を起動します。以前のバージョンの Red Hat Linux Secure Web Server をアップグレードする場合は、新しい証明書を取得する必要はないはずです。