【作業メモ】さくらVPSでLet's Encrypt(SSL化、サーバーはNginx) の設定メモ

さくらVPSでLet's Encrypt(SSL化、サーバーはNginx) の設定メモ

nginxの設定ファイルでつまずいた所などをメモ

ステージング環境にさくらのVPSを使っています。

独自ドメインを当てているので本番環境と合わせるためにもSSL化が必要になり設定したのですが、

Nginxのconfファイル設定で少しつまずいたので作業メモとして投稿します。

環境

さくらVPS
Ubuntu:16.04
Nginx

設定方法自身は沢山情報がありましたがこちらを参考にしています。
Let's Encrypt で Nginx にSSLを設定する

ありがとうございます。

Certbotをインストール

証明書発行

ポート80と443を開けておいてください。

今回は間違えてnginxを起動したまま発行の手続きをしてしまいました。

同じディレクトリのままで

ここで

Problem binding to port 80: Could not bind to IPv4 or IPv6.

と、エラーが出る。

Nginxが起動したままでポート80番がbindできませんでした。

停止してから再発行します。

nginxの設定ファイル編集

設定ファイルを見るとCertbotが上書きしている箇所があるので確認しておく

適切な位置に編集し、設定ファイルを保存する。

設定ファイル検証とエラー対応

sudo nginx -t

でエラーがないか確認すると2つエラーが出た。

nginx: [warn] the "ssl" directive is deprecated, use the "listen ... ssl" directive

nginx: [emerg] "ssl_prefer_server_ciphers" directive is duplicate

一つ目のエラーはlistenディレクティブを1行追加で解決した。

二つ目のエラーはincludeしている/etc/letsencrypt/options-ssl-nginx.confにsslの設定があり、重複しているためこちらの設定ファイルをコメントアウトすると解消した。

Nginxを起動

$ sudo service nginx start

うまく起動できないときは残プロセス確認してからkillする。
$ ps aux | grep nginx

$ sudo kill 番号

これで起動でき、ブラウザで確認したら無事に表示されました。

起動後に設定ファイルを調整したときはNginxの再起動を忘れずに。

証明書の更新

Nginxを一旦停止してから行う。

参考サイト(感謝です!)

nginx が起動しない・動かない場合の対処方法と確認ポイント

【備忘録】service nginx restartが失敗し、nginx.pidに苦しめられた
Client with the currently selected authenticator does not support any combination of challenges that will satisfy the CA.

Let's Encrypt で Nginx にSSLを設定する

Let's Encryptの証明書の取得・設定

Plesk is not accessible after upgrade: "ssl_ciphers" directive is duplicate

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

上へ