2023/05/01(月)トラブルのメモ

  • 現象:複数のサーバで、DNS権威サーバとUDPでの通信ができない。TCPでは疎通。
    • OSはFreeBSD 13.(1|2)-RELEASE
    • DNSサーバはnsd(from FreeBSD ports)
  • 対策?:現象を深掘りしようと、pfを設定して入ってくるパケットのログ取りをすると、疎通する。しなかった。
なんでやねん。

drill -t @[サーバ] では通るし、traceroute -P UDP -p [ポート番号] で読み捨てるところまでは確認できたんで、単純なIP53Bではなさそう。みると、IP53Bかけてる気配が。FreeBSDのtracerouteって、プローブパケット1つ出すとポート番号変えるのな。GWホストつなげている某プロバイダがこっそりポート番号フィルタリングしたのでは?NetNews盛んな頃こっそりtcp/119フィルタリングしたのを覚えているよ。

2023/01/07(土)またDMZこけた。

取りあえず落ち着いたので、書き留めておく。

1月3日の午後から兆候は出ていた。DMZホスト(FreeBSD13.1R on conoha)へのsshセッションが妙に切れる。postfixやらなにやらがいつの間にやら死んでいる。迷惑メール対策でいろいろ設定をいじっていたので再起動し忘れたかなと思ってた。深夜になると、いよいよつながらなくなる。VPSの制御コンソール経由で再起動かけてもダメ。それどころかブートシーケンスの途中で "out of swap space" とほざいて死んでいく。まだシングルユーザモードでは立ち上がるので、増設ディスク借りてスワップ増量してもだめ。「仕事始めの直前でこれかよ」と思ったよ。

そこで、諦めて次の手を打つ。
  1. 借りた増設ディスクにUFSパーティションを切る。
  2. インストールしたpackageのリストを "pkg info" でとって増設ディスクに保管。
  3. /home, /etc, /usr/local/etc, /usr/local/www (このサイトのデータ)をtarでバックアップして増設ディスクへ。
  4. dumpで / をフルダンプして増設ディスクへ。
  5. VPSの制御コンソールからサーバ再構築。
  6. restore かけてみる。→ 再発。
  7. も一度再構築。freebsd-updateでOSを最新に。
  8. tarとったデータとpackageデータ見ながら、DMZのサービスを1つずつ復元する。
    1. NTP
    2. DNS
    3. postfix
    4. apache
    5. let's encrypt(認証にapacheが必要なので、順序としてはここ。)
    6. Webアプリ
  9. バックアップを圧縮して自宅に待避 ←いまここ
  10. 待避完了したら増設ディスクを返して終了。
postfix復旧した時点で4日の朝3時すぎ。8時には家を出なければ。勘弁してくれよ。仕事始めを済ませてからWeb関連復旧して今日に至る。
xz -9 でdumpイメージ圧縮しているが、終わらない。圧縮後のファイルがまだ5%ぐらいだから、1ヶ月かかるのか。失敗した。先に自宅に移すべきだった。この日記書く裏で思い立って転送始めたが、書いているうちに自宅サーバへの転送終わっちゃった。さあ、増設ディスクを切り離して返却しないと。

2022/12/03(土)メモ:postscreen

postscreenも動かしてみた。以前と比べて、メール配送会社経由のDMがtarpitに引っかかってそのまま消滅。そのため、postscreen_pipelining_enable=yesでは案外危険。規定値のnoでも一部の迷惑メールは落としてくれるが、うちの状況だとあまり期待はできないらしい。

2022/12/03(土)メモ:postfixの設定変更

一部の迷惑メールで、RFC違反のMessage-IDをつけてくる。自宅サーバのpostfixでMessage-IDヘッダを補完してしまい、gmailへの転送過程で叱られる。将来的にはmilterか何かで検出するかしないといけないが、暫定的にpostfixでのヘッダ補完を規制することにした。
#local_header_rewrite_clients = static:all
local_header_rewrite_clients = permit_mynetworks

2022/11/12(土)dcardアプリでのトラブル

ちょいとd払いがらみでトラブルが発生し(こっちは解決。最近の認証強化の件。)、いろいろいじっているうちに、Android上のdcardアプリが権限不足と言い出して起動しなくなっていた。アプリ情報から権限を確認すると、電話の権限が必要だが無効化されているっぽい。最近のPlayStoreでは長期間未使用のアプリの権限削除をしているとは通知されていたが、こんなところでひっかかるとは。権限を有効化して復旧。

ということで、まとめ:
  • 3Dセキュアの強化が各社進んでいるので、要確認。
  • PlayStoreがアプリの権限をこまめに無効化している。以前動いたアプリがうまく動かないときには権限チェックし有効化。自信がなければ多分再インストールで解決。