Let’s Encryptで証明書の有効期限が迫っているとのメールが来た件 | そう備忘録

Let’s Encryptで証明書の有効期限が迫っているとのメールが来た件

警告メール

このサイトhttps対応はLet’s Encryptを使っているのだが「もうすぐ証明書の有効期限が切れる」とのメールが届いた。

無料なのにきちんと親切に案内してくれるのはとてもありがたい。

Let's Encryptよりもうすぐ有効期限が切れるとのメール

Let’s Encryptの証明書の有効期限は90日間なのでcrontabで毎月1日のAM5:00に自動更新をかけるようにしていたのだが、何らかの理由で自動更新が止まっていたらしい。

環境

今のServerの環境は以下の通り。

Server

AWS(Amazon Web Services) EC2(Elastic Compute Cloud)

OS

Ubuntu Server 18.04 LTS(HVM)64 bit

CMS

WordPress 5.4.2

有効期限の確認

念の為、Chromeで証明書の有効期限を確認する。

Chromeで有効期限を確認する

有効期限が8月9日になっている。

本来であれば実行されるはずの6月1日、7月1日の自動更新が実行されていない模様。

※実行されていれば証明書の有効期限がその日から90日後になっているはず。

有効期限が8月9日

心当たりは実はある。

6月の中旬にServerのOSをUbuntu 16.04から18.04にバージョンアップしている

その際に何らかの理由でcrontabかLet’s Encryptの設定が変わってしまったのだと思う。

AWS Serverに接続

crontabを確認

ServerにPuTTYで接続して以下のコマンドでcrontabの設定を確認する。

sudo crontab -l

certbot(証明書を更新するためのコマンド)はcrontabに設定されていて特に問題は無さそう。

crontab -l

certbotを確認

続いて以下のコマンドで証明書の有効期限のシミレーション更新を実行してみる。

※–rty-runは実際の更新は行わずにシミレーションモードで実行するオプション

sudo certbot renew --dry-run

するとcommand not foundになってしまった。

command not found

certbotをインストール

どうやらServerのOSをUbuntu 16.04から18.04にアップグレードした際にcertbotのプログラム自体がなくなってしまった模様。

仕方が無いので以下のコマンドで改めてcertbotをインストールする。

sudo add-apt-repository ppa:certbot/certbot
sudo apt-get update
sudo apt-get install python-certbot-apache -y

正常にインストールされた。

インストール終了

手動でシミレーション実行

続いて以下のコマンドで再びシミレーション実行してみるがエラーになってしまった。

sudo certbot renew --dry-run

”Another Instance of Certbot is already running.”(他のCertbotのインスタンスが既に動いている)でエラーになってしまった。

already runningでエラー

しかしこのエラーはインストール直後にコマンドを実行したせいと思われ、psコマンドでプロセスを監視した所、他のcertbotは動いていなかったのでしばらく待ってから同じコマンドを入力した所、今度は通った。

シミュレーション実行

しかしここで不可解な事が。

–dry-runはシミュレーションモードで実際の証明書の有効期限の更新は行わないと思っていたのだが何故か有効期限が更新されてしまう。

有効期限が更新されてしまった

sudo certbot renew

念の為、–dry-run無しで実行したが既に更新済みの為、証明書の有効期限を更新しないとのメッセージが表示された。

まぁ当たり前なのだが

既に更新されているのメッセージ

恐らくだがインストールをした際に裏で証明書の有効期限の更新が動いていたのだと思う。

だから直後に–rty-runで実行した時に”Another Instance of Certbot is already running.”のメッセージが表示されたのだと想像する。

元々Ubuntu 16.04の時にはcetbotは設定されていたのでまっさらな状態からのインストールとは若干動きが違ったのかも知れない。

とりあえず有効期限は延長されたので良しとすることにした。

以上で今回の記事は終了とする。

最後に

この記事が何処かで誰かの役に立つことを願っている。

尚、当記事中の商品へのリンクはAmazonアソシエイトへのリンクが含まれています。Amazonのアソシエイトとして、当メディアは適格販売により収入を得ていますのでご了承ください。

souichirou

やった事を忘れない為の備忘録 同じような事をやりたい人の参考になればと思ってブログにしてます。 主にレゴ、AWS(Amazon Web Services)、WordPress、Deep Learning、RaspberryPiに関するブログを書いています。 仕事では工場に協働ロボットの導入や中小企業へのAI/IoT導入のアドバイザーをやっています。 2019年7月にJDLA(一般社団法人 日本デイープラーニング協会)Deep Learning for GENERALに合格しました。 質問は記事一番下にあるコメントかメニュー上部の問い合わせからお願いします。

おすすめ

質問やコメントや励ましの言葉などを残す

名前、メール、サイト欄は任意です。
またメールアドレスは公開されません。