*、または「トランスポート層セキュリティ」、およびその前身である「SSL」は、保護された暗号化されたラッパーで通常のトラフィックをラップするために使用されるWebプロトコルです。このテクノロジーを使用すると、サーバーは、メッセージが外部の第三者によって傍受されて読み取られる心配なしに、サーバーとクライアント間で安全にトラフィックを送信できます。証明書システムは、ユーザーが接続先のサイトのIDを確認するのにも役立ちます。Webサーバーで使用する自己署名SSL証明書を設定する方法を示します。前提条件このガイドを始める前に、最初に完了する必要があるいくつかのステップがあります。7サーバーにアクセスする必要があります。7初期サーバーセットアップガイド]を実行して、これを作成できます。仮想ホストを構成するには、Apacheもインストールする必要があります。+`を使用して、CentOSのデフォルトのソフトウェアリポジトリからApacheをインストールできます。httpd次に、ApacheをCentOSサービスとして有効にして、再起動後に自動的に開始されるようにします。httpd.serviceこれらの手順が完了したら、SSHを介して非rootユーザーアカウントとしてログインし、チュートリアルを続行できます。`がサーバーにインストールされていることを確認する必要があります。mod_sslモジュールはインストール中に自動的に有効になり、Apacheは再起動後にSSL証明書の使用を開始できます。+`を使用するために追加の手順を実行する必要はありません。ステップ2:新しい証明書を作成するApacheで暗号化を使用する準備ができたので、新しいSSL証明書の生成に進むことができます。証明書にはサイトに関するいくつかの基本情報が保存され、サーバーが暗号化されたデータを安全に処理できるようにするキーファイルが添付されます。/etc/ssl/privateこのディレクトリ内に保持されるファイルは厳密にプライベートに保持する必要があるため、ルートユーザーのみがアクセスできるようにアクセス許可を変更します。+`を使用してSSLキーと証明書ファイルを作成できます。/etc/ssl/certs/apache-selfsigned.crtリクエストを入力すると、Webサイトに関する情報を入力できるプロンプトが表示されます。それを説明する前に、発行しているコマンドで何が起こっているのか見てみましょう。*:これは、OpenSSL証明書、キー、およびその他のファイルを作成および管理するための基本的なコマンドラインツールです。*:これは、X.509証明書署名要求(CSR)管理を使用することを指定します。「X.509」は、鍵と証明書の管理のためにSSLおよびTLSが準拠している公開鍵インフラストラクチャ標準です。*:これは、パスフレーズで証明書を保護するオプションをスキップするようOpenSSLに指示します。サーバーの起動時に、ユーザーの介入なしでファイルを読み取ることができるApacheが必要です。パスフレーズは、再起動のたびにパスフレーズを入力する必要があるため、これを防ぐことができます。-365日*:このオプションは、証明書が有効と見なされる期間を設定します。ここで1年間設定しました。*:これは、新しい証明書と新しいキーを同時に生成することを指定します。前の手順で証明書に署名するために必要なキーを作成しなかったため、証明書と共に作成する必要があります。+`部分は、2048ビット長のRSAキーを作成するように指示します。*:この行は、作成中の生成された秘密鍵ファイルを配置する場所をOpenSSLに指示します。*:これは、OpenSSLに、作成する証明書を配置する場所を伝えます。プロンプトに適切に記入します。Name`を要求する行です。サーバーに関連付けるドメイン名を入力する必要があります。ドメイン名がない場合は、代わりにパブリックIPアドレスを入力できます。プロンプトの完全なリストは次のようになります。+`ディレクトリの適切なサブディレクトリに配置されます。Secrecy]の交渉に使用される強力なDiffie-Hellmanグループも作成する必要があります。これを行うには、次のように入力します。+」に強力なDHグループができます。これを設定で使用できます。+`ディレクティブが含まれていないため、自己署名証明書の最後に生成されたファイルを手動で追加する必要があります。これを行うには、次を入力します。+`ファイルには、証明書と生成されたDiffie-Hellmanグループの両方が含まれているはずです。ステップ3:証明書を設定するこれで、完成したインターフェースに必要なコンポーネントがすべて揃いました。次に行うことは、新しい証明書を表示するように仮想ホストを設定することです。root権限でテキストエディターでApacheのSSL設定ファイルを開きます。+`で始まるセクションを見つけます。SSL証明書がサイトに正しく適用されるようにするには、ここでいくつかの変更を行う必要があります。`行のコメントを外し、引用符で囲んだアドレスをサイトのドキュメントルートの場所に編集します。html`にあります。サイトのドキュメントルートを変更していない場合、この行を変更する必要はありません。guide]のようなガイドに従った場合、サイトのドキュメントルートは異なる場合があります。+」をドメイン名またはサーバーIPアドレス(証明書に共通名として入力したもの)に置き換えます。+`の行を見つけて、それらを削除するかコメントアウトします。貼り付ける構成は、CentOSのApacheに含まれるデフォルトよりも安全な設定を提供します。+`で作成したディレクトリに変更します。`ブロック内の変更が完了しました。+`タグの後に行われます。Elst]の推奨事項を使用します。このサイトは、一般的なソフトウェアの使いやすい暗号化設定を提供するように設計されています。[こちら]をご覧ください。この目的のために、提供された設定全体をコピーできます。2つの小さな変更を行うだけです。[「プリロード」機能]をご覧ください。HSTSをプリロードするとセキュリティが向上しますが、誤って有効にしたり誤って有効にしたりすると、広範囲に及ぶ結果を招く可能性があります。このガイドでは、設定をプリロードしませんが、その意味を理解していることが確実な場合は変更できます。+`ディレクティブをコメントアウトすることです。7に同梱されているApacheのバージョンでは使用できないためです。Offこれらの変更が完了したら、ファイルを保存して閉じることができます。(推奨)暗号化されていない仮想ホストファイルを変更してHTTPSにリダイレクトする現状では、サーバーは暗号化されていないHTTPトラフィックと暗号化されたHTTPSトラフィックの両方を提供します。セキュリティを強化するために、ほとんどの場合、HTTPをHTTPSに自動的にリダイレクトすることをお勧めします。この機能が必要ない場合は、このセクションを安全にスキップできます。`ブロックを作成します。`ディレクティブを使用して、ドメイン名またはIPアドレスと再度一致させます。"https:///"</VirtualHost>終了したら、このファイルを保存して閉じます。ステップ4:証明書を有効にするこれで、SSL証明書を作成し、Webサーバーを構成してサイトに適用するようになりました。これらのすべての変更を適用してSSL暗号化の使用を開始するには、Apacheサーバーを再起動して構成とモジュールを再読み込みします。次のように入力して、構成ファイルの構文エラーを確認します。+」で終わる限り、続行しても安全です。これが出力の一部でない場合は、ファイルの構文を確認して再試行してください。OK次を入力して、Apacheサーバーを再起動して変更を適用します。httpd.service次に、ファイアウォールでポート80および443が開いていることを確認します。ファイアウォールを実行していない場合は、スキップできます。*ファイアウォールを実行している場合は、次のように入力してこれらのポートを開くことができます。*ファイアウォールを実行している場合、実行する必要があるコマンドは現在のルールセットに大きく依存しています。基本的なルールセットの場合、次のように入力してHTTPおよびHTTPSアクセスを追加できます。+`を使用してドメイン名またはIPにアクセスし、動作中の新しい証明書を確認してください。https:///Webブラウザは、サイトのセキュリティ証明書が信頼されていないことを警告する可能性があります。証明書はブラウザが信頼する認証局によって署名されていないため、ブラウザは接続しようとしているサーバーの身元を確認できません。信頼できるCA署名付き証明書の代わりに自己署名証明書を作成したため、これは完全に理にかなっています。ブラウザの本人確認に例外を追加すると、新しく保護されたサイトに進むことができます。結論HTTP要求とHTTPS要求の両方を処理するようにApacheサーバーを構成しました。これにより、クライアントと安全に通信し、外部の第三者がトラフィックを読み取れないようにすることができます。パブリックWebサイトでSSLを使用する予定がある場合、恐らく各訪問者に恐ろしい警告が表示されないように、おそらく信頼できる認証局からSSL証明書を購入する必要があります。