2017-09-25
wordpressサイトのSSL化
このサイトのSSL化を行った。SSL/TLSサーバ証明書はLetsencryptを利用。また80番ポートへアクセスしたユーザー用にhttpsサイトへのredirectも完了。
変更点は以下の通り。
/etc/nginx/conf.d/ssl.conf
server { listen 443 ssl http2; # ポート443をlisten server_name www.hogehoge.com; ssl_certificate /etc/letsencrypt/live/www.hogehoge/cert.pem; # letsencrypt導入後に設定された公開鍵を指定。 ssl_certificate_key /etc/letsencrypt/live/www.hogehoge.com/privkey.pem; # letsecncrypt導入後に設定された秘密鍵を記述
/etc/nginx/conf.d/http.conf
server { listen 80; server_name www.hogehoge.com; rewrite ^ https://$server_name$request_uri? permanent; # httpsへrewrite
あとは30日後にcronで設定したジョブが動き証明書の更新が自動的に行われるか否かということだけ。
One Comment
このWordpressはkusanagiで制御されたサイトなので、証明書の自動更新とすべてのトラフィックを永久的にHTTPSにリダイレクトするために、以下のコマンドが用意されていた。
kusanagi ssl –https redirect –hsts weak –auto on
========
HSTSをサブドメイン指定無しで有効化します
もしあなたが中から切り替えた場合、有効になるまで相当の時間がかかります。
また、高からoffに変更することはできません。
XXX上のすべてのトラフィックを永久的にHTTPSにリダイレクトするよう設定します。
証明書の自動更新を有効にします
nginx/httpd の設定を変更し、再起動しました。
完了しました。
=========
なお上記を実行したらcronに以下のように書き込まれた。
07 03 * * 0 /usr/bin/kusanagi update cert