タグ別アーカイブ: SSL/TLS

Webサーバー nginx における SSL証明書設定の安全性向上 ~SSL Server Test で A+ 判定を目指して~

はじめに

 SSL証明書に使われる暗号化方式は設定時には安全と判断しても、日が経ってから脆弱性が発覚するものです。
 脆弱性が発覚した暗号化方式は以後使えなくなるよう、無効にする必要があります。
 今回、CentOS7 + Nginx における設定の調整方法と、安全性の確認には QUALYS SSL LABS の SSL Server Test ツール (https://www.ssllabs.com/ssltest/index.html) による安全性の確認を紹介したいと思います。
 前提として、CentOS7 + Nginx にはすでに SSL証明書がインストール済みで、https://~ でアクセスできる状態にしておいてください。こちらの投稿を参照してください。

続きを読む

SSL 証明書の作成とインストール

はじめに

 SSL 証明書は SSL 証明書発行機関によって、対象のドメインが実際にどの組織によって運営されているかを保障するための証明書です。今回、SSL 証明書の申請からインストールまでの手順を紹介します。
 組織の実体証明の厳密さにより、SSL 証明書のグレードが設けられています。呼び方、認証方法は SSL 証明書発行機関により差がありますが、大まかには次の 3 グレードがあるようです。

  • Class1 … ドメインの所有者をオンラインにより確認。
      ドメイン名宛のメールアドレスなど、例えば postmaster@example.com 宛に届く確認メールで運営者を確認できれば認証 OK となります。
  • Class2 … ドメインの所有者を電話により確認。
      ドメイン名宛のメールアドレスに加えて、運営者の電話番号宛の電話などで運営者を確認できれば認証 OK となります。
  • Class EV … ドメインの所有者を書類により確認。
      ドメイン名宛のメールアドレス、運営者の電話番号宛の電話に加えて、書類の送付などにより運営者を確認できれば認証 OK となります。

 どのグレードの SSL 証明書でも、サーバーへのインストール手順は同じです。
 CentOS の場合、次のようなディレクトリ・ファイル構成で管理するとよいでしょう。この構成は SSL 証明書の他に、中間証明書を 2 つ必要とする 4 層構成の SSL 証明書をインストールする場合の構成です。

 なお、SSL 証明書関連のファイルがいくつか出てきますが、すべて PEM 形式とよばれるテキスト文字列のファイルです。本投稿ではファイルの役割を拡張子に付ける事で、わかりやすくなるようにしています。また、年度の更新がしやすいよう、ファイルの末尾には有効期限日を付けておきます。ただし、本番用にリリースするときは、サーバーの設定ファイルを編集しなくて済むよう、有効期限日は削除します。日付付きのファイルで一式を準備してから、日付なしのファイルにコピーして本番環境に適用する、という流れを想定しています。

(作業用ユーザーエリア)
~/tls/
  certs/                     ← 外部に公開するファイルを格納するディレクトリ
    example.com.crt.20160519 ← SSL 証明書
    example.com.ca.20160519  ← 中間証明書(3層目、2層目、の順で結合したもの)
  private/                   ← 外部に公開してはいけない/公開する必要がないファイルを格納するディレクトリ
    example.com.ca2.20160519 ← 中間証明書(2層目、クロスルート証明書と呼ばれることがある)
    example.com.ca3.20160519 ← 中間証明書(3層目)
    example.com.csr.20160519 ← CSR
    example.com.key.20160519 ← 秘密鍵

(本番用グローバルエリア)
/etc/pki/tls/
  certs/                     ← 外部へ公開するファイルを格納するディレクトリ
    example.com.crt          ← SSL 証明書
    example.com.ca           ← 中間証明書(3層目、2層目、の順で結合したもの)
  private/                   ← 秘密鍵を格納するディレクトリ
    example.com.key          ← 秘密鍵

 大まかな流れは次のとおりです。

  • SSL 証明書の申請
  • SSL 証明書の受領
  • SSL 証明書のインストール
続きを読む