.forwardでメール転送設定をしていたものの,いつからか何かの拍子に自アカウントのメール転送ができなくなる現象が起こりました.
設定の文法には問題なく,受信トレイにはメールは届き,ほかの人は転送も問題なくできるのに,自分だけ転送できない……
悩んだ挙句調べてもらったら,このキーワードに行き着きました.
「world writable directory」
.forwardはホームディレクトリ直下にあるのですが,ホームディレクトリにパーミッション777が設定されており,.forwardがほかのユーザから書き換えられる状況にありました. このようなディレクトリの状態をworld writable directoryというようです.
sendmailは,誰でも書き込みできる状況の.forwardを信用しないようにできているらしく,ホームディレクトリのパーミッションを755に戻すと,転送設定が反映されました.
おそらく,知らない間に他人が自分のメールを盗み見るように設定されないようにするためだと思います.
apacheでも似たような現象はあるらしく,闇雲にパーミッションを付ければシステムが動いてくれる訳ではないことを思い知らされました.