数日間のイベントのために簡易的ではあるけどhttps化したいという要望が出たのでLets’ Encriptを利用してHttps化してみました。その手順をまとめましたので是非参考にしてみてください。
スポンサードリンク
セキュリティグループの設定
セキュリティグループのインバウンドのHTTPS(443)を許可する。(参考サイト参照)
certbotインストール
Certbotは無料かつ自動でSSL証明書を発行できるツールで、CSRとKEYファイルの作成からWebサーバーの設定まで自動で行ってくれます。
curl https://dl.eff.org/certbot-auto -o /usr/bin/certbot-auto
chmod 700 /usr/bin/certbot-auto
証明書の発行
sudo certbot-auto certonly --webroot -w /var/www/html -d hogehoge.net --email test@hogehoge.net --debug
-d はドメイン
–email は連絡先
【注意】
構築の際に参考にしたサイトでは「–debug」不要と記載があるが、付与しないと実行できない。(2019.1.31 現在)
–debug なしで実行すると以下のメッセージが表示された。
FATAL: Amazon Linux support is very experimental at present…
if you would like to work on improving it, please ensure you have backups
and then run this script again with the –debug flag!
Alternatively, you can install OS dependencies yourself and run this script
以下の場所に証明書が作成されている(確認用コマンド)
sudo ls -la /etc/letsencrypt/live/hogehoge.net
SSL.comf に証明書のパスを追加
sudo vi /etc/httpd/conf.d/ssl.conf
SSLCertificateFile /etc/letsencrypt/live/hogehoge.net/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/hogehoge.net/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/hogehoge.net/chain.pem
パスを追加したらApacheの再起動
sudo service httpd restart
ここでキーファイルがない、または空だとエラーがでた場合は権限を変えてみる。
sudo chmod 600 /etc/letsencrypt/archive/hogehoge.net/cert1.pem
sudo chmod 600 /etc/letsencrypt/archive/hogehoge.net/chain1.pem
sudo chmod 600 /etc/letsencrypt/archive/hogehoge.net/privkey1.pem
sudo chmod 600 /etc/letsencrypt/archive/hogehoge.net/fullchain1.pem
SSLのキーファイルはApacheユーザー以外が見える権限だとダメなことがあるみたい。
コメント