【誰でも10分でできる】超簡単!Let’s Encryptを利用し無料でSSL証明書を発行する【HTTPS】
こんにちは、ま。です
今回は、超簡単にWebサイトをSSL化する手順です!
手順だけどんどん実行していけば、誰でも10分でできます!
certbotのインストール
まずはcertbotという、証明書を発行するためのコマンドをインストールします。
今回はyumとなっていますので、Ubuntuなどを利用している方はaptに置き換えて実行してみてください。
sudo yum -y install certbot
certbotのインストールはこれだけで完了です!
証明書の発行
早速証明書を発行します。
sudo certbot-auto certonly --webroot -w /var/www/sample/public -d ドメイン
/var/www/sample/public
に該当するのはSSL化したいサイトのドキュメントルートのフォルダになります。
ドメイン
にはSSL化するドメインを記載ください。
AuthorizationError: Some challenges have failed.
もし、このコマンドで上記のようなエラーが起こるようであれば、Webサーバーを止めて以下のコマンドで再度実行してみてください。
sudo service httpd stop
sudo certbot certonly --standalone -d sample.com
stopのコマンドはApatchのなかでもCentOSの書き方なので、webサーバーそれぞれの書き方で止めてください。
できあがった証明書は “/etc/letsencrypt/live/ドメイン” の配下に保存されています。
証明書の適応
証明書をWebサーバーに適応してあげます。
Apatchであればたいていは “/etc/httpd/conf/httdp.conf” にWebサーバーのコンフィグファイルがあると思いますので、
証明書情報を記載してあげます。
またドメイン
のところはSSL化するものと置き換えてください。
ServerName ドメイン
SSLEngine on
SSLCertificateFile /etc/letsencrypt/live/ドメイン/cert.pem
SSLCertificateKeyFile /etc/letsencrypt/live/ドメイン/privkey.pem
SSLCertificateChainFile /etc/letsencrypt/live/ドメイン/chain.pem
Nginxではこんな感じに記載します。
listen 443 ssl;
ssl_certificate /etc/letsencrypt/live/ドメイン/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/ドメイン/privkey.pem;
最後にWebサーバーを再起動しましょう!
sudo service httpd restart
これでサーバー作業は終了です!HTTPSでドメインにアクセスしてみてください!
更新するとき
Let’s Encryptの最大の難点であるのが証明書期限です。
この方法で取得した証明書は90日しか期限がないので、3ヶ月に1度はこうしんしなくてはなりません。
ただ、更新も難しいことはなく、更新コマンドたたいてWebサーバーを再起動しておしまいです!
sudo certbot renew
sudo service httpd restart
crontabなどで定期実行すれば、更新も気にせずWebサイトを運営できます!
まとめ
Apatchだったり、Nginxだったり、サーバーOSによっても少しづつコマンドが違う個所もありますが、全体の流れとしてはこんな感じです。
初回はさぐりさぐりなので、10分ではできないかもしれませんが、
やること自体は少ないので数回やれば簡単にできてしまうのではないかなと思います!
WebサイトにはHTTPSが必須かと思いますのでぜひ活用してください!