トップ 最新

かってきままな日々

2022-02-07 (Mo) [長年日記]

_ SSL証明書 更新失敗

なんでだ… 手動で2回失敗したから再現してるのかと思ったら 3回目は成功した…

なんでだ…

最初に自動更新が失敗したのは python 3.10 用に plugin を インストールしてなかったからなんだが、 インストールしてからは認証に失敗してた。

認証方法は dns-01。 ttl がおかしいのかなぁ。 plugin は自作だからなぁ...

なんか他に安定した認証方法サポートしてないかな… って http-01 と dns-01 しかないのか。うーん…

なんか certbot が標準で plugin を提供してて 無料で使える DNS サービス、ないかな… AWS のアカウントは持ってるけど、Route53 は無料じゃないしな。

まぁ、使うのはほんの数個だから、 wildcard じゃなくても列挙してしまえばいい、 といえばいいんだけど… そうすれば http-01 が使える。

てなわけで wildcard はやめて、webroot に切り替え。

うん、速いし安定してる。

web 系は大丈夫そうかな。メール系はまた明日。今日は時間切れ。

_ let's encrypt の認証について

dns 認証は、その dns サーバが操作者の管理下にあるかどうかを 試している。

dns サーバが管理下にある人なら、そのドメインはその人の管理下 にあると思って良い。dns サーバが指してるマシンがいつの間にか 全てその人の管理下のマシンだった、なんてことも可能だし。

一方、webroot は。

  • dns が指してるそのマシンで
  • certbot を実行できる
  • 特定のディレクトリにファイルを置ける

一見 root のようだけど、違うよね。これなら一部の権限を移譲してもらうだけでできる。

で、生成された証明書って smtp にも使えるんだけど、 でも、その人って、smtp に関する権限は移譲されてないと思うんだ。

  • smtp.xxx.com がそのマシンを指してる (これは別の人が担当)
  • そのマシンで postfix が動いてる (これも別の人が担当)
  • その postfix が使う SSL 証明書を、上の certbot 権限を移譲された人が作る??

この辺がよくわからん。いいのか?

上の人って www 系の権限を移譲されただけだと思うんだ。

  • /usr/share/nginx/html/ 以下に書き込む権限をもらった
  • /etc/letscrypt/ 以下に書き込む権限をもらった

こんなもんでいけると思うんだ。 これなら certbot を実行して証明書をゲットできるのではないか。

それを postfix 側で使っちゃう、ってのがよくわからん。

もしかして、同じマシンだろうと、postfix 側はそっちはそっちで 取得すべきなんだろうか。 でもそのためには /usr/share/nginx/html/ 書き込み権限が必要なんだけど…

  • web 系
    • /usr/share/nginx/html/web/ 以下に書き込む権限
    • /etc/letscrypt/web/ 以下に書き込む権限
  • mx 系
    • /usr/share/nginx/html/mx/ 以下に書き込む権限
    • /etc/letscrypt/mx/ 以下に書き込む権限

それぞれがこれらの権限をもらえば、独立した権限で干渉しない作業が可能になるんだろうか…

certbot が root じゃないと動かないなんてことはないよね。 Linux/UNIX においては port 80 を bind するには root 権限が必要だけど、 Windows ではそんな制限ないし。

ふむ。よくわからん。

まぁ私が管理する趣味系マシンでは、私しか管理者いないので、 どうでもいいんだけどな。