Bitnami製のWordpressをSSL化した

前置き

なんだかんだ公式ドキュメントに全て書いてます。 一部わかりにくかったので自分用と引き継ぎ用のメモって位置付けです。

docs.bitnami.com

流れ

※前提として、念の為DBのバックアップは取っておきました。

  1. Goをinstall(しなくて良かった)
  2. Legoをinstall
  3. Legoを使って証明書設定
  4. Really Simple SSLWordpressプラグイン)をインストール
  5. Really Simple SSLを有効化

1. Goをinstall(しなくて良かった)

  • Goコマンドをダウンロード curl -L -O https://dl.google.com/go/go1.12.1.linux-amd64.tar.gz

  • 解凍 tar -C /usr/local/ -xf go1.12.1.linux-amd64.tar.gz

  • パスを通す echo 'export PATH=$PATH:/usr/local/go/bin' >> ~/.bash_profile echo 'export GOPATH=$HOME/go' >> ~/.bash_profile

  • パスが通ったか確認 which go ※パスが帰ってきたらOK

Legoをinstall

  • 【本来やりたかったけどできなかった】Goコマンドを使ってLegoをインストール go get -u github.com/go-acme/lego/cmd/lego

  • Legoをインストール wget https://github.com/go-acme/lego/releases/download/v2.3.0/lego_v2.3.0_linux_amd64.tar.gz

  • 解凍 tar -zxvf lego_v2.3.0_linux_amd64.tar.gzCHANGELOG.mdとかLICENCE.mdとか不要なファイルも出来ちゃうけどrmで消せば良い

  • パスが通ってる場所にlegoコマンドを移動 mv lego /usr/local/bin/lego

  • Legoが使えるか(installされていてパスが通ってるか)を確認 which lego ※パスが帰ってきたらOK

Legoを使って証明書設定

  • Bitnamiのサービスをストップする sudo /opt/bitnami/ctlscript.sh stop

  • 証明書を要求する sudo lego --tls --email="EMAIL-ADDRESS" --domains="DOMAIN" --domains="www.DOMAIN" --path="/etc/lego" run ※EMAIL-ADDRESSは自分のメアドに置き換え ※DOMAINも自分のドメインに置き換え

  • 生成された証明書を使う設定

sudo mv /opt/bitnami/apache2/conf/server.crt /opt/bitnami/apache2/conf/server.crt.old
sudo mv /opt/bitnami/apache2/conf/server.key /opt/bitnami/apache2/conf/server.key.old
sudo mv /opt/bitnami/apache2/conf/server.csr /opt/bitnami/apache2/conf/server.csr.old
sudo ln -s /etc/lego/certificates/DOMAIN.key /opt/bitnami/apache2/conf/server.key
sudo ln -s /etc/lego/certificates/DOMAIN.crt /opt/bitnami/apache2/conf/server.crt
sudo chown root:root /opt/bitnami/apache2/conf/server*
sudo chmod 600 /opt/bitnami/apache2/conf/server*

※上記全コマンドはドキュメントにあります ※上記はApacheの場合です。Nginxの場合はドキュメントへ ※ドキュメント: https://docs.bitnami.com/bch/how-to/generate-install-lets-encrypt-ssl/

  • Bitnamiのサービスをリスタート sudo /opt/bitnami/ctlscript.sh start

  • Really Simple SSLWordpressプラグイン)をインストール

  • Really Simple SSLを有効化 wordpressGUI上でイントロダクションに沿ってやれば良しなので割愛。

終わりに

以上でSSL対応が完了します。 自分は1.5時間くらいかかりました。流れが分かったので次は10~15分くらいで出来そう。

Let's Encryptの証明書は90日で期限が切れるそうなので、ドキュメント(https://docs.bitnami.com/bch/how-to/generate-install-lets-encrypt-ssl/)のRenew The Let’s Encrypt Certificateセクションを見て随時更新 or 自動更新の設定をするべし。

参考

WordPressサイトアドレスをhttpsに変更する(Really Simple SSL) | 楓プログラミングスタジオ ITインフラ部

docs.bitnami.com