訳あって、約8年ぶりにsendmailの設定をした。久しぶりすぎて設定わかんねー。前にやったときは大学生の頃だし。
久しぶりにsendmail.mcなんぞ触ったけど、どうもこのコメントアウトを意味する"dnl"に違和感を感じまくる。
さて、本題。
デフォルトの設定のままsendmailを使ってメール送信を行うと、送信元であるFromヘッダが「username@localhost.localdomain」となってしまう。このままではSPAMと判断されかねない、かつそもそも送信者が分からないということで、設定を行った。
方法は、以下のエントリを参考にさせてもらった。
設定
とりあえず、"/etc/mail/sendmail.mc"を編集する。
# diff sendmail.mc sendmail.mc.20081121
以下に、変更前(デフォルト)と変更後のdiffを貼り付けておく。
160c160 < MASQUERADE_AS(`xxxxx.net')dnl --- > dnl MASQUERADE_AS(`mydomain.com')dnl 164c164 < FEATURE(masquerade_envelope)dnl --- > dnl FEATURE(masquerade_envelope)dnl 170,171c170,171 < MASQUERADE_DOMAIN(localhost)dnl < MASQUERADE_DOMAIN(localhost.localdomain)dnl --- > dnl MASQUERADE_DOMAIN(localhost)dnl > dnl MASQUERADE_DOMAIN(localhost.localdomain)dnl
ちなみに、↑の設定のうち"xxxxx.net"の部分が、変更後の正しいドメイン名となります。
次にsendmail.mcの編集後、sendmail.cfを作成する。
# m4 /etc/mail/sendmail.mc > /etc/mail/sendmail.cf
と実行したところ、、、
/etc/mail/sendmail.mc:10: m4: cannot open `/usr/share/sendmail-cf/m4/cf.m4': No such file or directory
とエラーが出たので、、、
# yum install sendmail-cf
と、"sendmail-cf"パッケージをインストールした後に、再度上記の"m4"コマンド実行したところ、今度は上手く実行できた。
# /etc/init.d/sendmail restart
最後に、↑のような感じでsendmailを再起動してやればOK。
これで、このサーバからsendmail経由でメール送信をした場合、今回の例だと"username@xxxx.net"のFromヘッダでメールが配信されるようになる。
参考
- 作者: クレイグハント,Craig Hunt,林秀幸
- 出版社/メーカー: オライリージャパン
- 発売日: 2004/06
- メディア: 単行本
- 購入: 2人 クリック: 19回
- この商品を含むブログ (2件) を見る