2月初めごろからかな?(実はもっと前からあって表面化したのかそれぐらいかもしれませんが)
フォローすると「承認待ち」のステータスになり、
連合にも相手の最新のトゥートが出てこないなどの弊害が多数発生していました。
デバッグモードでログを追ったり、Mastodonのソースを読んだりしていろいろ調べましたましたが
結局Nginxの設定の問題だと分かったため、情報共有の目的でここに書かせていただきます。
■問題の設定
・変更前
ssl_certificate /etc/letsencrypt/live/mstdn-jp.site/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/mstdn-jp.site/privkey.pem; ssl_trusted_certificate /etc/letsencrypt/live/mstdn-jp.site1/chain.pem;
・変更後
ssl_certificate /etc/letsencrypt/live/mstdn-jp.site/fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/mstdn-jp.site/privkey.pem; #ssl_trusted_certificate /etc/letsencrypt/live/mstdn-jp.site1/chain.pem;
ssl_trusted_certificateの設定をなくしただけですね。
(そもそもssl_trusted_certificateに指定する証明書間違ってるって突っ込みはなしでお願いします;;)
■なぜこれで治ったのか?
実は明確な原因はわかっていません;;
ただソースを見る限りActivityPubはSSLを基盤としているため証明書の評価を行っているようなんです。
その評価の過程でActivityPubでのやり取りが途中で止まってしまっていたのでは?と疑っています。
何はとも本来非公開ユーザーをフォローした場合にしかありえない「承認待ち」が
公開ユーザーでも発生するって場合はSSL証明書を疑って見た方がいいみたいです。