opensslコマンドで以ってサーバ証明書の有効期限を詳らかにするならこういう具合である。
$ sudo su -c "openssl x509 -dates -noout </etc/letsencrypt/live/www7390uo.sakura.ne.jp/cert.pem" | grep After notAfter=Nov 5 23:18:58 2020 GMT
出力結果から有効期限の残り日数を導こうとするならば、もうひと手間かけねばならないとおもって取り組んだ成果がこうである。
!/bin/bash -eu CERTPATH='/etc/letsencrypt/live/backtick.dip.jp/cert.pem' EXPIRATION=$(sudo su -c "openssl x509 -dates -noout <${CERTPATH}" | grep After | cut -d= -f2) END=$(date +%s --date "${EXPIRATION}") NOW=$(date +%s) echo $(( ("${END}" - "${NOW}") / 86400 ))
Let’s Encryptの証明書に限ればシンプルにcertbotコマンドで以って有効な日数のみを得ることができる。
$ sudo certbot certificates 2>/dev/null | grep VALID | awk '{print $6}' 40