HTTPS化をしよう!その2
Let’sEncryptを使ってHTTPS(暗号)化しよう!Debian系
2020-12-18
近年では、GoogleがHTTPでは検索エンジンに表示されないようにされる取組や、警告を発するようになってきた。
これによりSSLを導入することが今後必須になりそうだ。
今回は無料のLet’sEncryptを使ったSSL化を実現しようと思う。
さて、今回このサイトの作業に必要なことは
・ドメインを取得している
・ポートをルータともに開放している。(80と443)
・apacheサーバである。
1. Apache2のSSLモジュールを有効にする。
$ sudo a2enmod ssl
$ sudo a2ensite default-ssl
これでapacheではssl機能の準備ができた。
2. 必要な物をインストールする。
$ sudo apt update
$ sudo apt install -y python-certbot-apache
<a name="_Hlk59192062">こ</a>のソフトウェアは、対話式で設定することが可能。
3. セットアップ。
$ sudo certbot --apache
Enter email address (used for urgent regent renewal and security notice)
(Enter ‘c’ to cancel): 登録するメールアドレス
--------------------
Please read the Tems of Service at ...
~~これは規約に承諾するかの質問~~
--------------------
(A)gree/(C)ancel: A (同意する)
--------------------
Would you be willing to shar your email address with Ele…
~~これはLet’sEncrypt にメールを提供するかの質問~~
--------------------
(Y)es/(N)o: N (特に提供する理由が無ければN )
--------------------
~~apache設定ファイルにドメインを記入していないならば
ここにドメインを入力してくださいと表示される~~
~~ただここではドメインを設定していたと想定して進める~~
Which names would you like activate HTTPS for?
--------------------
1: example.com (設定したドメインが出てくる)
--------------------
Select the appropriate numbers…
…select all options shown
(Enter ‘c’ to cancel):1 (上記の設定したい番号を入力)
--------------------
Please choose whether or not to redirect HTTP
Traffic to HTTPS, removing HTTP access.
--------------------
1.No redirect (HTTPで接続したらそのまま)
2.Redirect (HTTPで接続したらHTTPSにリダイレクト)
--------------------
Select the appropriate number [1-2] then [Enter]
(press ‘c’ to cancel):2 (リダイレクトしたほうが便利なので2)
--------------------
Congratulations! … ~コングラッチュレーション!が出れば完成!!~
次は、更新できるか確認してみる
$ sudo certbot renew --dry-run
エラーがでなければ完成!!
これでSSL化は完了!
では、実際に接続してみよう!!
https://で接続できる!
4. 証明書更新手続き
$ sudo certbot renew
これでSSLが期限切れにならないように毎月する必要がある。
しかし、我々が毎月これを打つのはとても面倒なので全てサーバで行なうよう自動化してあげる必要がある。
$ sudo crontab -e
複数エディターがありますよと表示された場合は、自身が使いやすいエディターの番号を選択してEnter
Crontabの一番下に移動し、毎月1日の午後11時5分に更新したいときは
5 23 1 * * /usr/bin/certbot renew
と入力し保存して終了(vim ならescキーを押して:キーとwqキー(:wq)で保存)
ちなみに上記の設定は
分 時 日 月 年 コマンド
である。