ソフトウェア類をちょこちょこ / ドキュメントページ(hiki)復活 / qmail-inject を使って VERP 付きのメールを送る方法
投稿日: 2003年12月17日 更新日: 2017年07月22日
ソフトウェア類をちょこちょこ
サーバ(Debian GNU/Linux)にソフトウェア類をインストール。
proftpd FTP サーバ
apt-get install proftpd
ウィザード形式で設定ができた。
/etc/proftpd.conf の LsDefaultOptions “-l” だけ “-la” に変更。
FFFTP で接続できることを確認できた。
exim メールサーバ
もともとインストールされてたので設定を行うだけ
eximconfig
ドキュメントページ(hiki)復活
amrita を入れ忘れてて動いてなかったのを修正。
qmail-inject を使って VERP 付きのメールを送る方法
qmail-inject の使い方をおさらい
echo to: recipient@example.com | /var/qmail/bin/qmail-inject
1.リターンパスは user@example.com (コマンドを実行したユーザ)になる。
最初に考えたパターン
echo to: recipient@example.com | \
QMAILINJECT="r" /var/qmail/bin/qmail-inject -f 'sender@example.com'
が、これだとリターンパスが sender@example.com になってしまった
環境変数 QMAILINJECT の r は
宛先ごとの VERP を使用します。 qmail-inject は、宛先に送られるコピーの表書
き発信者に、各宛先アドレスを付け加えます。
-f は
-fsender
表書き送信者アドレス(envelope sender address)として、 qmail-queue に、引数
sender を渡します。このオプションは、 Return-Path とすべての環境変数を無効
にします。
つまり“すべての環境変数を無効に”されてしまうので QMAILINJECT も無効になっ ていた
正しいパターン
表書き送信者アドレスも環境変数で書き換える
export QMAILSUSER='sender'
export QMAILSHOST='example.com'
export QMAILINJECT='r'
echo to:recipient@example.com | \
/var/qmail/bin/qmail-inject
リターンパスは sender-recipient=example.com@example.com でちゃんと VERP になっ た。
この環境変数はホスティンスサービスのときにも使える。各ユーザの CGI に -f を つけさせる必要が無い。
おまけ 送信者と受信者のドメイン名が違う場合
export QMAILSUSER='sender'
export QMAILSHOST='example.com'
export QMAILINJECT='r'
echo to:recipient@mail.example.com | \
/var/qmail/bin/qmail-inject
この場合のリターンパスは sender-mail.example.com-recipient=mail.example.com@example.com
recipient のドメインが被ってるのはなぜ?
参考ページ
名前:宮内 はじめ
Code for Nagoya名誉代表
E2D3名古屋支部長
プログラマーです。GISやデータビズが好きです。このサイトは宮内の個人的なメモです。