ひとりごと

新しい記事:[1386]  古い記事:[1384] 表示単位 :

ついったー[おとなり日記] かがみさん Y.Kumagaiさん

2005/01/06 (木)

・ SMTP認証

うちのネットワーク環境はサーバ移設に伴って「サーバ完全支配型」から「ルータぶら下がり型」に変更になったわけですが、ルータにぶら下がっている場合は PPPoE 接続が一旦切れたことを知るすべがありません。以前は ユーザppp により接続/再接続した際に fetchmail -c していたわけですが、これができなくなりました。

それで何が困るのかというと、

接続後すぐはメールが送信できない
のですよ。正確には POP before SMTPに頼っている ケータイ会社のドメイン(草の根メールサーバからだと遅延したり Reject されたりする)だけですから、「接続後すぐにケータイに送信できない」となります。接続後すぐに私がメールを送るなんてことはあまりないのですが、サーバーがメールを送ることはよくありまして、「定期的にWANのIPアドレスを調べて、変わっていれば通知する」とか「リンク先の更新状況を調べて通知する」なんてメールが消失する可能性があります。

ということで、問題は外部メールサーバにリレーするときに POP before SMTP などという美しくない方法を使っていることにあるわけですから、SMTP認証に変えてみました。

[やったこと]
  1. /etc/mail/mailertable* を削除 (←ケータイ用の例外処理が書いてあった)
  2. /etc/mail/authinfo というファイルを作成。SMTPサーバ(アイネットディー)のユーザIDが'userid' パスワードが 'password' とすると、
    AuthInfo: "U:userid" "P:password" "M:DIGEST-MD5"
    と書く。続いて 'makemap hash authinfo < authinfo ' して authinfo.db を作成。パーミッションは下記のとおり
    -r-------- 1 root wheel 52 Jan 6 15:22 authinfo
    -rw-r----- 1 root smmsp 65536 Jan 6 15:22 authinfo.db
  3. sendmail.cf の元となる なんとか.mc の適当なところに
    define(`SMART_HOST', `[smtp.toriyu.que.ne.jp]')
    FEATURE(`authinfo', `hash -o /etc/mail/authinfo')
    等と入れて sendmail.cf を作り直す。上記の smtp.toriyu.que.ne.jp がプロバイダの SMTP サーバ。
  4. Sendmail を再起動

うまく動いていると、送ったメールの Received行には

Received: from toriyu.dd.que.ne.jp (PPPax10.osaka-ip.dti.ne.jp [210.170.254.10])
    (authenticated bits=128)
    by smtp1.inetd.co.jp (8.12.10/8.12.10) with ESMTP id j067DV8D064959
    (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=NO)
    for <takatani@mars.dti.ne.jp>; Thu, 6 Jan 2005 16:13:31 +0900 (JST)
    (envelope-from ◎◎◎◎@toriyu.dd.que.ne.jp)
のように付くようです。

authinfo ファイルは本当は AuthInfo: のコロンの後にメールサーバを書くようなのですが、うちで試したところ smtp.toriyu.que.ne.jp と書いても [smtp.toriyu.que.ne.jp] と書いても駄目で、smtp.toriyu.que.ne.jp を正引きしたIPアドレスを書くと OK という具合でした。メールサーバのアドレスが変わると面倒ですから何も書かずにデフォルトをこれとしました。

ということで、ようやく POP before SMTP から開放されました。めでたしめでたし。

# 結果だけ書くと簡単なのですが、これだけのために2日ほどハマっていたのは誰にもいえない秘密です。
## さらに、アイネットディーではWWW上でSMTPパスワードの設定が必要なのと、
## SMTP認証時はメールサーバが mail.toriyu.que.ne.jp から smtp.toriyu.que.ne.jp に
## 変わるのについさっきまで気づかなかったのはもっとナイショです(汗)
[つっこみ]

新しい記事:[1386]  古い記事:[1384] 表示単位 :
※このページへのリンクは自由です。リンクの方法については[つっこみ]で表示されるページの最後をごらんください。
たかたに(takatani@mars.dti.ne.jp)