Let's Encrypt が使用しているIPアドレス、ホスト名
Let's Encrypt の証明書は3か月ごとにチェックされて更新される。 そこで気になるのが、Let's Encrypt が証明書のチェックや更新に使用しているIPアドレスやホスト名。
サイトによっては悪質なボットのアクセスを拒否するため、.htaccess などでいくつかのIPアドレスやホスト名を塞いでいる。 そのせいで Let's Encrypt の証明書の更新が失敗すると困る。
Let's Encrypt の公式サイトを見ると、様々なIPアドレスを使用していると書かれているだけで公開されていない。
私はVPSでサイトを運営している。 VPSでcertbotの設定を行い、Let's Encryptの証明書が自動更新されるようにしている。
先日、運営しているサイトのサーバーのアクセスログを見ていたら「Let's Encrypt」と書かれたユーザーエージェントを見つけた。 ユーザーエージェントは以下の通り。
Mozilla/5.0 (compatible; Let's Encrypt validation server; +https://www.letsencrypt.org)
IPアドレスとホスト名は以下の通り。 あくまで私のサイト(サーバー)にアクセスがあったものだけで、これ以外にもあると思われる。
- outbound2l.letsencrypt.org(23.178.112.211)
- outbound2m.letsencrypt.org(23.178.112.212)
- ec2-34-216-156-165.us-west-2.compute.amazonaws.com(34.216.156.165)
- ec2-18-217-48-98.us-east-2.compute.amazonaws.com(18.217.48.98)
- ec2-47-129-131-45.ap-southeast-1.compute.amazonaws.com(47.129.131.45)
- ec2-13-60-249-244.eu-north-1.compute.amazonaws.com(13.60.249.244)
これらは全て、サイトの /.well-known/acme-challenge/ ディレクトリにアクセスしている。 おそらく本物の Let's Encrypt のボットと思われる。
とりあえず分かったことは、letsencrypt.org というドメインと Amazon AWS が使われているということ。 この辺りのIPアドレスやホスト名に注意すれば良い。
また、私は us-east-2.compute.amazonaws.com からのアクセスを .htaccess で拒否していた。 そのため us-east-2.compute.amazonaws.com からのアクセスはHTTPステータスコードが403(アクセス拒否)となっていた。 しかし、証明書は問題なく更新されていた。 おそらく複数個所から証明書の更新を試み、一部が失敗しても他が成功すれば更新されるようになっている。
VPSなどでcertbotを使ってLet's Encryptの証明書を自動更新している人は、上記IPアドレス、ホスト名、ユーザーエージェントに注意しておくと良いかもしれない。