GEOLOG / @geeorgey のゲオログ

武器は走りながら拾え

2009–2020年のブログ保存版 ・ 全941記事

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

サクッと申請しておっしまーいと、思っていたら、今朝さくらインターネットからメールが来てました。

お問い合わせいただきましたところ恐れ入りますが「さくらのVPS」におきましてはSSLサーバ証明書の申請代行及び設定代行サービスのご提供はございません。

Oh...そうだったのか...

という事で、仕方なく自分で設定するのまき。

SSL証明書の購入はこちらでどうぞ。ジオトラストSSL証明書

SSL導入手順

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

基本的にはこちらの手順に従っています:RapidSSLをさくらのVPSにインストールしてみた

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

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

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

次に、CSRを作ります

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

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

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

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

ジオトラストSSL証明書

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

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

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

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

今回買ったのはジオトラスト クイックSSL プレミアムなので、【ジオトラスト クイックSSL プレミアム専用】中間CA証明書(三階層目)にある中身をコピーしてサーバに保存します。名前はgeotrust.crtとかにしておきましょうか。(以下に書いたもの使っても大丈夫ですよ。コピペしただけなので)
*こちらの中間証明書は2020年までなのでそれ以降の場合は、更新をチェックしましょう

-----BEGIN CERTIFICATE----- MIIERDCCAyygAwIBAgIDAjp4MA0GCSqGSIb3DQEBCwUAMEIxCzAJBgNVBAYTAlVT MRYwFAYDVQQKEw1HZW9UcnVzdCBJbmMuMRswGQYDVQQDExJHZW9UcnVzdCBHbG9i YWwgQ0EwHhcNMTQwODI5MjIyNDU4WhcNMjIwNTIwMjIyNDU4WjBmMQswCQYDVQQG EwJVUzEWMBQGA1UEChMNR2VvVHJ1c3QgSW5jLjEdMBsGA1UECxMURG9tYWluIFZh bGlkYXRlZCBTU0wxIDAeBgNVBAMTF0dlb1RydXN0IERWIFNTTCBDQSAtIEc0MIIB IjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA30GUetr35DFDtuoBG1zOY+r6 baPZau4tmnX51ZxbvTTf2BzJbdgEiNputbe18DCuQNZd+sRTwdQinQROEaaV1UV8 QQVY4Ezd+e5VvV9G3K0TCJ0s5PeC5gcrng6MNKHOxKHggXCGAAY/Lep8myiuGyiL OQnT5/BFpLG6EWeQVXuP3u04XKHh44PEw3KRT5juHMKAqmSlPoNiHMzgnvhawBMS faKni6PnnyrXm8rL7ZcBnCiEUQRQQby0/HjpG88U6h8P/C4BMo22NcsKGDvsWj48 G9OZQx4v973zWxK5B17tPtGph8x3cifU2XWiY0uTNr3lXNe/X3kNszKnC7JjIwID AQABo4IBHTCCARkwHwYDVR0jBBgwFoAUwHqYaI2J+6sFZAwRfap9ZbjKzE4wHQYD VR0OBBYEFAtQ7HfvKpv/7AOhCv+txuQqGMc+MBIGA1UdEwEB/wQIMAYBAf8CAQAw DgYDVR0PAQH/BAQDAgEGMDUGA1UdHwQuMCwwKqAooCaGJGh0dHA6Ly9nLnN5bWNi LmNvbS9jcmxzL2d0Z2xvYmFsLmNybDAuBggrBgEFBQcBAQQiMCAwHgYIKwYBBQUH MAGGEmh0dHA6Ly9nLnN5bWNkLmNvbTBMBgNVHSAERTBDMEEGCmCGSAGG+EUBBzYw MzAxBggrBgEFBQcCARYlaHR0cDovL3d3dy5nZW90cnVzdC5jb20vcmVzb3VyY2Vz L2NwczANBgkqhkiG9w0BAQsFAAOCAQEAMyTVkKopDDW5L8PHQpPAxhBLAwh2hBCi 4OdTEifyCtp/Otz9XHlajxd0Q1Ox1dFdWbmmhGTK8ToKWZYQv6mBV4tch9x/4+S7 BXqgMgkTThCBKB+cA2K89AG1KYNGB7nnuF3I6dHdrTv4NNvB0ZWpkRjtPCw3EU3M /lM+UEP5w1ZBrFObbAWymuLgWVcwMrYmThMlzfpIcA91VWAR9TvVXlo8i1sPD2JC SGGFixD0wYi/f1+KwtfNK5RcHzRKCK/rromoSHVVlR27wJoBufQDIj7U5lIwDWe5 wJH9LUwwjr2MpQSRu6Srfw/Yb/BmAMmjXPWwj4PmnFrmtrnFvL7kAg== -----END CERTIFICATE-----

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

SSL証明書は、/etc/nginx/ssl 以下に保存しました。
example.crtとgeotrust.crtが入っている状態で以下のコマンドを。

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

これで組み合わされました。次にnginxのconfファイルをいじります。

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

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

server {
 listen 80;
 listen 443 ssl;
 # 秘密鍵 (cert. key)
 ssl_certificate_key /var/www/html/example.com/ssl.key/example.com.key;
 # 合体証明書
 ssl_certificate /etc/nginx/ssl/example.com.chained.crt;

//以下略

秘密鍵は1で作ったファイルを、適当な場所に移動してください。

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

無事にSSLの設定が完了しているか https://example.comに接続して確認してみましょう。こんな感じになれば完成!

[画像はバックアップに含まれていません: さくらのVPSにGeotrustのSSL証明書の設置完了] さくらのVPSにGeotrustのSSL証明書の設置完了

という感じです。

SSLも安いのは安いんですね。それも今回驚きましたとさ。

ジオトラストSSL証明書[画像はバックアップに含まれていません]

まずはさくらのVPSを試してみる人はこちらから申し込みどうぞ。
サーバ比較なんかもやってみました
[画像はバックアップに含まれていません] [画像はバックアップに含まれていません]

Tips