萌えハッカーニュースリーダー

2025/03/26 01:34 OpenSMTPD and Maildrop working in concert

出典: http://blog.whenhen.com/posts/opensmtpd-and-maildrop-working-in-concert.html
hakase
博士

ロボ子、今日はOpenBSDでのメールフィルタリングツール、maildrop(1)について話すのじゃ!

roboko
ロボ子

maildrop(1)ですか。Courier Mail Serverに付属するプログラムの一つとのことですが、具体的にどのようなことができるのですか?

hakase
博士

ふむ、maildropはメールを振り分けたり、特定の条件で処理したりできる便利なやつじゃ。インストールは簡単で `pkg_add maildrop` でOK!postfixのパッケージと間違えないように気をつけるのじゃぞ。

roboko
ロボ子

なるほど。動作モードにはデリバリーモード、マニュアルモード、埋め込みモードがあるんですね。普段使うのはデリバリーモードでしょうか?

hakase
博士

そうじゃな、デリバリーモードが一般的じゃ。ソケットを監視して、サービスとして起動、停止、再起動できるからの。

roboko
ロボ子

設定も重要なようですね。`~/.mailfilter`ファイルにフィルタリングルールを記述するとのことですが、これはどのようなファイルなのですか?

hakase
博士

`~/.mailfilter`は、メールの振り分け条件を書くファイルじゃ。複雑な処理もできるから、色々試してみると良いぞ。パーミッションは0600にするのを忘れないように!

roboko
ロボ子

Maildir形式のディレクトリ設定も必要ですね。`.vip`や`.maildir`を適切に設定しないと、メールが正しく振り分けられない、と。

hakase
博士

その通り!`mkdir -p .vip/{cur,new,tmp}` と `mkdir -p .maildir/{cur,new,tmp}` でディレクトリを作っておくのじゃ。

roboko
ロボ子

デバッグ方法も把握しておきたいです。`/etc/courier/authdaemonrc`ファイルで設定し、`tail -f /var/log/messages`でメッセージを追跡するんですね。

hakase
博士

そうじゃ。そして、maildropデーモンは`authdaemond`という名前で`/usr/local/sbin`にあるぞ。rootで実行する必要があるからの。

roboko
ロボ子

`authdaemond`を起動するために、rootのcrontab(1)に`@reboot /bin/sh /usr/local/sbin/authdaemond start`を追加するんですね。

hakase
博士

その通り!これで再起動時に自動でデーモンが起動するようになるのじゃ。

roboko
ロボ子

`smtpd.conf`の設定例も参考になりますね。特定のメールアドレスからのメールをmaildrop(5)で処理するように設定する、と。

hakase
博士

例えば、VIPメールは`~/.vip`へ、インターネットメールは`~/.maildir`へ振り分けるように設定できるのじゃ。

roboko
ロボ子

テストも重要ですね。maildrop(5)サービスを起動し、smtpd(8)をチェックして再起動する、と。

hakase
博士

`sh /usr/local/sbin/authdaemond start`、`smtpd -n`、`rcctl restart smtpd` の順番じゃな。

roboko
ロボ子

最後に、`[email protected]`や`[email protected]`からのメール、ローカルユーザー間のメールを送信して、適切な場所にメールが振り分けられるか確認するんですね。

hakase
博士

完璧じゃ!これでOpenBSDでのメールフィルタリングはバッチリじゃな!

roboko
ロボ子

ありがとうございます、博士!とても勉強になりました。

hakase
博士

ところでロボ子、メールの振り分けといえば、私のおやつもちゃんと振り分けてくれるかの?

roboko
ロボ子

博士のおやつは、優先度最高で博士の口に振り分けられるように設定されていますので、ご安心ください。

hakase
博士

さすがロボ子じゃ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search