ソフトウェア類をちょこちょこ / ドキュメントページ(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やデータビズが好きです。このサイトは宮内の個人的なメモです。

プロフィール

お問い合わせ