お世話になってます。OP25B対応の設定についておやじ様のHPを読ませて
いただきました。それで質問なのですがそれは下のふたつの項目の事です。
smtp_sasl_security_options = noanonymous
smtp_sasl_mechanism_filter = cram-md5, plain, login
私の立てているメールサーバーにはこのふたつの項目が入っていませんが
/usr/lib/sasl2/smtpd.confに下のように設定しています。
pwcheck_method: saslauthd
mech_list: plain login
この状態でいまのところ問題ないのですが2行を追加することで
安定度を増すでしょうか?変な質問ですいません。
> お世話になってます。OP25B対応の設定についておやじ様のHPを読ませて
> いただきました。それで質問なのですがそれは下のふたつの項目の事です。
> smtp_sasl_security_options = noanonymous
> smtp_sasl_mechanism_filter = cram-md5, plain, login
>
> 私の立てているメールサーバーにはこのふたつの項目が入っていませんが
> /usr/lib/sasl2/smtpd.confに下のように設定しています。
> pwcheck_method: saslauthd
> mech_list: plain login
これはPostfixがサーバモード(smtpd)で動作するときの設定であり、OP25B対策の設定はPostfixがクライアントモード(smtp)で動作するときの設定で全く関係ありません。
> この状態でいまのところ問題ないのですが2行を追加することで
> 安定度を増すでしょうか?変な質問ですいません。
上の行はおまじない程度ですが、下の行は安定度には関係なく、HPに書いてあるとおり「ISPのSMTPサーバ側のSASLメカニズムと自宅サーバ側のSASLメカニズムが不一致だと認証に失敗することがあるので、使用するメカニズムを固定する。」のもので、digest認証はISPではサポートされていないことが多いようなので、自鯖のsaslでこのモジュールが入っていると認証に失敗します。
おやじのNiftyはcram-md5, plain, login をサポートしており、自鯖のsaslにdigest認証がはいっているため、この行がないと認証失敗で送れません。もちろんdigest-md5を書くとこれも駄目です。要は、仮にISPがPostfixであれば、それの/usr/lib/sasl2/smtpd.confのmech_listで記述されているものに併せる必要があるということです。
下記を参考にISPにアクセスしてみれば、(2)でサポートしてタイプがわかります。
http://www.aconus.com/~oyaji/mail2/smtp-auth-tst.htm
> これはPostfixがサーバモード(smtpd)で動作するときの設定であり、OP25B対策の設定はPostfixがクライアントモード(smtp)で動作するときの設定で全く関係ありません。
> 上の行はおまじない程度ですが、下の行は安定度には関係なく、HPに書いてあるとおり「ISPのSMTPサーバ側のSASLメカニズムと自宅サーバ側のSASLメカニズムが不一致だと認証に失敗することがあるので、使用するメカニズムを固定する。」のもので、digest認証はISPではサポートされていないことが多いようなので、自鯖のsaslでこのモジュールが入っていると認証に失敗します。
> おやじのNiftyはcram-md5, plain, login をサポートしており、自鯖のsaslにdigest認証がはいっているため、この行がないと認証失敗で送れません。もちろんdigest-md5を書くとこれも駄目です。要は、仮にISPがPostfixであれば、それの/usr/lib/sasl2/smtpd.confのmech_listで記述されているものに併せる必要があるということです。
> 下記を参考にISPにアクセスしてみれば、(2)でサポートしてタイプがわかります。
>
> http://www.aconus.com/~oyaji/mail2/smtp-auth-tst.htm
やってみたのですが
$ telnet mx.hogenet.ne.jp 25
Trying 135.181.48.100...
Connected to mx.hogenet.ne.jp (135.181.48.10).
Escape character is '^]'.
220 mta06.hogenet.ne.jp ESMTP Postfix
EHLO mx.hogenet.ne.jp
250-mta06.hogenet.ne.jp
250-PIPELINING
250-SIZE 20480000
250-VRFY
250-ETRN
250-XVERP
250 8BITMIME
QUIT
221 Bye
Connection closed by foreign host.
これって認証なし?XVERPとはなんでしょうか?
すいません勉強が足りません。
> > これはPostfixがサーバモード(smtpd)で動作するときの設定であり、OP25B対策の設定はPostfixがクライアントモード(smtp)で動作するときの設定で全く関係ありません。
> > 上の行はおまじない程度ですが、下の行は安定度には関係なく、HPに書いてあるとおり「ISPのSMTPサーバ側のSASLメカニズムと自宅サーバ側のSASLメカニズムが不一致だと認証に失敗することがあるので、使用するメカニズムを固定する。」のもので、digest認証はISPではサポートされていないことが多いようなので、自鯖のsaslでこのモジュールが入っていると認証に失敗します。
> > おやじのNiftyはcram-md5, plain, login をサポートしており、自鯖のsaslにdigest認証がはいっているため、この行がないと認証失敗で送れません。もちろんdigest-md5を書くとこれも駄目です。要は、仮にISPがPostfixであれば、それの/usr/lib/sasl2/smtpd.confのmech_listで記述されているものに併せる必要があるということです。
> > 下記を参考にISPにアクセスしてみれば、(2)でサポートしてタイプがわかります。
> >
> > http://www.aconus.com/~oyaji/mail2/smtp-auth-tst.htm
>
> やってみたのですが
> $ telnet mx.hogenet.ne.jp 25
> Trying 135.181.48.100...
> Connected to mx.hogenet.ne.jp (135.181.48.10).
> Escape character is '^]'.
> 220 mta06.hogenet.ne.jp ESMTP Postfix
> EHLO mx.hogenet.ne.jp
> 250-mta06.hogenet.ne.jp
> 250-PIPELINING
> 250-SIZE 20480000
> 250-VRFY
> 250-ETRN
> 250-XVERP
> 250 8BITMIME
> QUIT
> 221 Bye
> Connection closed by foreign host.
> これって認証なし?XVERPとはなんでしょうか?
この状態なら認証はいらないですね。
単純に "relayhost = [mail.example.com]"で終わりです。
XVERPは下記がわかりやすいのではないでしょうか?
http://wiki.utmc.or.jp/wiki.cgi/mickn?page=VERP
> > > 下記を参考にISPにアクセスしてみれば、(2)でサポートしてタイプがわかります。
> > >
> > > http://www.aconus.com/~oyaji/mail2/smtp-auth-tst.htm
> >
> > やってみたのですが
> > $ telnet mx.hogenet.ne.jp 25
> > Trying 135.181.48.100...
> > Connected to mx.hogenet.ne.jp (135.181.48.10).
> > Escape character is '^]'.
> > 220 mta06.hogenet.ne.jp ESMTP Postfix
> > EHLO mx.hogenet.ne.jp
> > 250-mta06.hogenet.ne.jp
> > 250-PIPELINING
> > 250-SIZE 20480000
> > 250-VRFY
> > 250-ETRN
> > 250-XVERP
> > 250 8BITMIME
> > QUIT
> > 221 Bye
> > Connection closed by foreign host.
> > これって認証なし?XVERPとはなんでしょうか?
>
> この状態なら認証はいらないですね。
> 単純に "relayhost = [mail.example.com]"で終わりです。
本日、友人宅で再度テストをしてみました。友人はpl○l○と契約しています。
端末で25番にアクセスしてみると
$ telnet xxxx.mail.pl○l○.ne.jp 25
Trying 58.94.255.31...
Connected to camel.mail.pl○l○.or.jp (58.94.255.31).
Escape character is '^]'.
220 mvs7tmp.plala.or.jp ESMTP server ready Thu, 12 Oct 2006 13:13:02 +0900
EHLO xxxx.mail.pl○l○.ne.jp
250-mvs7tmp.plala.or.jp
250-PIPELINING
250-DSN
250-8BITMIME
250 SIZE 20971520
QUIT
221 mvs7tmp.plala.or.jp ESMTP server closing connection
Connection closed by foreign host.
となり認証が必要ない?ように見えます。これは前回の結果と合わせて考えると
契約ISPのメールサーバーは25番で接続できて認証なしに使用できるという事でいいですよね。(当然?)ちなみに同じ端末で587番に接続しようとすると
$ telnet xxxx.mail.pl○l○.ne.jp 587
Trying 58.93.255.31...
Connected to xxxx.mail.pl○l○.ne.jp (58.94.255.31).
Escape character is '^]'.
220 mvs9sub.plala.or.jp ESMTP server ready Thu, 12 Oct 2006 13:07:10 +0900
EHLO camel.mail.plala.or.jp
250-mvs9sub.plala.or.jp
250-AUTH=LOGIN PLAIN CRAM-MD5
250-AUTH LOGIN PLAIN CRAM-MD5
250-PIPELINING
250-DSN
250-8BITMIME
250 SIZE 20971520
QUIT
221 mvs9sub.plala.or.jp ESMTP server closing connection
Connection closed by foreign host.
このように認証を求められます。(ここまでは正しいと思うが...)
念のために私の契約ISP(OP25B導入している。)に587番でアクセスしてみるとこちらは25番にアクセスしたときと変わらず認証を求められません。これって異常でしょうか?
説明上、行変えしてます。
> 本日、友人宅で再度テストをしてみました。友人はpl○l○と契約しています。
> 端末で25番にアクセスしてみると
>
> $ telnet xxxx.mail.pl○l○.ne.jp 25
> Trying 58.94.255.31...
> Connected to camel.mail.pl○l○.or.jp (58.94.255.31).
> Escape character is '^]'.
> 220 mvs7tmp.plala.or.jp ESMTP server ready Thu, 12 Oct 2006 13:13:02 +0900
> EHLO xxxx.mail.pl○l○.ne.jp
> 250-mvs7tmp.plala.or.jp
> 250-PIPELINING
> 250-DSN
> 250-8BITMIME
> 250 SIZE 20971520
> QUIT
> 221 mvs7tmp.plala.or.jp ESMTP server closing connection
> Connection closed by foreign host.
>
> となり認証が必要ない?ように見えます。これは前回の結果と合わせて考えると
> 契約ISPのメールサーバーは25番で接続できて認証なしに使用できるという事でいいですよね。(当然?)
見方を変えて考えてみてください。ISPのSMTPサーバをたこさんの自宅サーバと考えてみるとわかりやすいです。つまり、たこさんの自鯖からみれば自宅内のクライアントは信頼できるクライアントなので、認証なしで中継できますよね。ISPのSMTPサーバも同様で、ISPのSMTPサーバからすれば、たこさんの自鯖は契約回線から即ち信頼できる回線からのアクセスなので認証なしで中継させても問題ないですよね。
従って、一般には契約回線からの送信なら認証なしで送信できるのが普通です。(例外としてYah○○などは認証が必須であり、かつFROMアドレスまでチェックしてますが・・・。)
> ちなみに同じ端末で587番に接続しようとすると
>
> $ telnet xxxx.mail.pl○l○.ne.jp 587
> Trying 58.93.255.31...
> Connected to xxxx.mail.pl○l○.ne.jp (58.94.255.31).
> Escape character is '^]'.
> 220 mvs9sub.plala.or.jp ESMTP server ready Thu, 12 Oct 2006 13:07:10 +0900
> EHLO camel.mail.plala.or.jp
> 250-mvs9sub.plala.or.jp
> 250-AUTH=LOGIN PLAIN CRAM-MD5
> 250-AUTH LOGIN PLAIN CRAM-MD5
> 250-PIPELINING
> 250-DSN
> 250-8BITMIME
> 250 SIZE 20971520
> QUIT
> 221 mvs9sub.plala.or.jp ESMTP server closing connection
> Connection closed by foreign host.
>
> このように認証を求められます。(ここまでは正しいと思うが...)
厳密にいうと少し違います。 "250-AUTH LOGIN PLAIN CRAM-MD5"は認証ができるようになっているだけで、認証を求めているわけではありません。自鯖でSMTP-AUTHをサポートすると同じ応答がでますが、家庭内からは認証は必須ではないですよね。通常mydestinationは認証なしでpermitされているので、認証してもいいですがしなくても送信できますよね。従って、この状態でも契約回線から587番でアクセスした場合は認証なしでも中継してくれると思います。ところが、これがたこさんのところ、即ち、自社の契約回線以外からの場合(この形態は、たこさんの自鯖ならインターネット側からアクセスした場合に相当)は、誰がアクセスしてきているかわからないので単純に中継させるわけにはいかないので、この場合は認証が必須になります。
> 念のために私の契約ISP(OP25B導入している。)に587番でアクセスしてみるとこちらは25番にアクセスしたときと変わらず認証を求められません。これって異常でしょうか?
そのサーバは、自社契約回線からのアクセスしか受け付けないSMTPサーバなのでしょう。企業で言えば、企業内のみで動作し外部とはGWサーバ経由でしか機能しないサーバです。それなら認証入らないですよね。恐らく、そのサーバは友達のところ、即ち契約回線以外からはアクセスできないはずです。もしできてしまい、送信までできてしまうなら不正中継できてしまうので、そんな馬鹿な話はないはずです。
> そのサーバは、自社契約回線からのアクセスしか受け付けないSMTPサーバなのでしょう。企業で言えば、企業内のみで動作し外部とはGWサーバ経由でしか機能しないサーバです。それなら認証入らないですよね。恐らく、そのサーバは友達のところ、即ち契約回線以外からはアクセスできないはずです。もしできてしまい、送信までできてしまうなら不正中継できてしまうので、そんな馬鹿な話はないはずです。
わかりやすい説明ありがとうございます。
>そのサーバは友達のところ、即ち契約回線以外からはアクセスできないはずです。
今度試してみます。
最後に確認ですが友人が私の自鯖を介して(もちろん認証をして)メールを送ることができるのはISPから見た場合、表面的には私が自分のアカウントでメールを送っているのと同じ事になると考えていいのでしょうか。
> 最後に確認ですが友人が私の自鯖を介して(もちろん認証をして)メールを送ることができるのはISPから見た場合、表面的には私が自分のアカウントでメールを送っているのと同じ事になると考えていいのでしょうか。
そうですね。ISPから見れば、自鯖という意識はなく単なるパソコンからOEでメールを送ってくるのと変わりありませんから。但し、FROMがISPのアカウントではなく自鯖のアカウントになっているという違いはありますが・・・。