さくらのVPS nginx環境でGeotrustのTrue BusinessID Wildcardを設定する

   

前回こんな記事を書きましたがアップデート。前回やったのはRapid SSL。

さくらのVPS nginx環境でGeotrustのSSLを設定する

今回は、Wildcardのセキュリティ証明書を取ったので、その手順を書く。



基本的に手順はRapidSSLの時と変わらない。

SSL導入手順

  1. Geotrustに申請するためのCSRを作成する
  2. Geotrustに申請して、サーバ証明書がメールで返ってくるのを待つ
  3. 中間証明書とサーバ証明書を組み合わせる
  4. keyと組み合わせた証明書をnginx.confに読み込ませてreload
  5. httpsでアクセスしてみて問題ないか確認する

Geotrustのページにもやりかた書いてあるのでこちらもどうぞ

1:Geotrustに申請するためのCSRを作成する

まず、秘密鍵を作りましょう。example.comは貴方が使いたいドメインに置き換えてください。最初他のサイト見て2048の所を1024で作ったら、ダメだよって申請時に怒られました。こちらのコマンドを使いましょう。2行目は、パスフレーズを削除するコマンドです。

1
2
openssl genrsa -out example.com.key -des3 2048
openssl rsa -in example.com.key -out example.com.key

ここで作ったのが鍵です。これをオープンにしたらダメですよ。

キーは、/etc/nginx/ssl/private/においておきましょう。

$mkdir /etc/nginx/ssl

$mv example.com.key /etc/nginx/ssl/private/

/etc/nginx/ssl/private/example.com.key となります。

次に、CSRを作ります

1
openssl req -new -key example.com.key -out example.com.csr

*更新の場合は、ドメイン名の前に年度とか付けてファイル作れば良いと思う。

対話形式になっていますが、内容はこちらを参考にしていただければわかりやすいと思います

2:Geotrustに申請して、サーバ証明書がメールで返ってくるのを待つ

ジオトラストSSL証明書

SSL証明書の購入を行いましょう。途中、CSRを入力する窓が現れますので、そちらに先ほど作ったcsrファイルの中身をペーストしてください。まもなくサーバ証明書が届くはずです。3日位かかると思う。

届いたサーバ証明書は example.com.crtみたいなファイルにして保存します。

3:中間証明書とサーバ証明書を組み合わせる

中間証明書どこにあるんだよ!という人(俺)はこちらを御覧ください

今回はトゥルービジネスID ワイルドカードのSHA-2なのでそこをクリックします。→ここ

B:2013年12月7日以降の申請完了分のトゥルービジネスID用中間認証局証明書っていう奴。

クロスルート証明書というのがページの上部にあるので、そいつもインストールする。

geotrustTrueBiz.crtとか適当な名前をつけてファイルを作成し、中間証明書をコピペ。

改行して、クロスルート証明書をコピペして保存する。

4:keyと組み合わせた証明書をnginx.confに読み込ませてreload

SSL証明書は、/etc/nginx/ssl/certs/ 以下に保存しました。

/etc/nginx/ssl/certs/example.com.crt
/etc/nginx/ssl/certs/geotrustTrueBiz.crt

example.crtとgeotrustTrueBiz.crtが入っている上記の状態で以下のコマンドを。

1
cat example.com.crt geotrust.crt > example.com.chaned.crt

これで組み合わされました。

/etc/nginx/ssl/certs/example.com.chaned.crt が生成されます。

次にnginxのconfファイルをいじります。

/etc/nginx/conf.d/example.com.conf

のサーバブロックに以下の情報を追加

1
2
3
4
5
6
7
8
9
server {
 listen 443 ssl;
 # 秘密鍵 (cert. key)
 ssl_certificate_key /etc/nginx/ssl/private/example.com.key;
 # 合体証明書
 ssl_certificate /etc/nginx/ssl/certs/example.com.chained.crt;
//以下略

これでnginxの設定をリロード再起動すれば完了。(証明書の更新の場合、リロードだけじゃダメでした)

無事にSSLの設定が完了しているか https://example.comに接続して確認してみましょう。

オススメNginx本

nginx実践入門 (WEB+DB PRESS plus) 単行本(ソフトカバー) – 2016/1/16

nginxを現場で活用するための知識を、実践的なノウハウを交えて解説した書籍です。nginxのインストール方法や基本的な設定方法からはじめ、nginxを利用した「静的コンテンツ配信サーバ」「HTTPSサーバ」「Webアプリケーションサーバ」「大規模コンテンツ配信システム」の構築方法をそれぞれ詳しく紹介しています。後半ではnginxサーバのモニタリングやログの収集、そして軽量スクリプト言語Luaでnginxを拡張する方法について解説しているので、nginxをこれから使う方はもちろん、さらに活用したい方にもお勧めです。

 - Tips