- PR -

存在しないメールアドレスで送信できてしまいます

1
投稿者投稿内容
なっこ
会議室デビュー日: 2003/07/01
投稿数: 2
投稿日時: 2003-07-01 15:00
初めまして。
現在メールサーバーについて勉強中のなっこと申します。
sendmail-8.9.3-20とqmail-1.0.3のサーバーを2つ立ち上げ試行錯誤中です。
(それぞれ別マシンで動いています。OSは両方ともRedHat6.2です)

今、sendmail、qmailとも存在しないメールアドレスでも送信ができてしまいます。
メールサーバー接続時にはユーザーIDとパスワードの整合性のチェックを行っていて
送信元アドレスがそのユーザーのアドレスである、ということはチェックしていない状態です。
これをユーザーとメールアドレスの整合性もチェックしたいと思っております。
恐れ入りますがご存知の方がおられましたらご指導・ご教授願います。
なか-chan@最愛のiMac
ぬし
会議室デビュー日: 2002/07/17
投稿数: 385
お住まい・勤務地: 和光市・世田谷区
投稿日時: 2003-07-02 08:26
なっこさんこんにちは。

> 今、sendmail、qmailとも存在しないメールアドレスでも送信ができてしまいます。

メールサーバは立てたことがないので詳しくはわかりませんが...(^^;
POP Before SMTPとかでしょうか...
http://www.tinyforest.gr.jp/memo/dracd.html
など参考になるかもしれません。
Dr.Doraemon
ぬし
会議室デビュー日: 2002/03/23
投稿数: 265
投稿日時: 2003-07-02 12:56
お疲れ様です。

> 今、sendmail、qmailとも存在しないメールアドレスでも送信ができてしまいます。
この意味は、どういうことなのでしょうか?

なか-chanさんのいわれるように、POPでログオンしていないユーザがメールを送れるというのでしょうか?
 この場合は、POP before SMTPになっていないのが原因です。

それとも、自分のたてたメールサーバ当てに、存在しない実在しないメールアドレスで送ったら送信ができてしまったということなのでしょうか?
 この場合は、防ぐ方法はないと思います。ドメインが存在し、そのメールアドレスが存在しない場合はメールの送信者宛にuser unknowとかなにかでエラーメッセージがメールサーバより返されるはずです。

> 送信元アドレスがそのユーザーのアドレスである、ということはチェックしていない
> 状態です。
> これをユーザーとメールアドレスの整合性もチェックしたいと思っております。
これは、送信者が自分のメールアドレス(送信元も送信先も同じアドレス)であるかどうかをチェックするという意味ですか?

 ちょっと、現象がつかめないというか、できないことと、やりたいことがいまいちぼやけています。申し訳ないですが、もう少し詳しく教えていただければ、なにか解決策をご提案できるかもしれません。

よろしくお願いいたします。
なっこ
会議室デビュー日: 2003/07/01
投稿数: 2
投稿日時: 2003-07-02 13:56
なっこです。
なか-chanさん、Dr.Doraemonさんアドバイスどうもありがとうございます。

説明不足ですいません。
sendmail、qmailともPOP before SMTPを入れてあります。
(受信後10分以内のみ送信可能にしてあります。動作確認済みです。)

<現在の状態とやりたいこと>
 ・qmailサーバーは、ドメイン"testa.com"で立てました。
 ・サーバーにはユーザー"user-a"がいて、メールアドレスは"user-a@testa.com"です。
 ・メールクライアントの設定は
   ユーザー名→"user-a" パスワード→******
SMTP,POP3→mail.testa.com
   メールアドレス→user-a@testa.com です。
 ・メールの送受信、POP before SMTPは確認済みです。
 
 問題なのは、ここでメールクライアントの設定でミスもしくは意図的に
 メールアドレスを"user-x@testa.com"としてしまうと
 送信できてしまうことです。
 "user-x"はLinux上に実在しても、しなくてもできてしまいます。
 このままだと、同じドメインを持つ他のユーザーのアカウントになりすまして
 メールが送信できてしまいますし、ダイレクトメールなどを送る場合に
 わざと実在しないユーザー名を用いて送信し、受信者が返信した場合に
 "user unkown"とさせることができてしまうことです。
 これを、ユーザー認証の際に、
 ユーザー"user-a"はパスワードが"*****"でかつ、送信元のメールアドレスが
 "user-a@testa.com"であることを確認の上、ログイン成功とさせたいのです。

 ↑qmailについてだけ挙げましたがsendmailの方もドメイン・ユーザー名が異なるだけで
 状態は同じです。

 私の使用しているプロバイダbiglobeさんの場合は自分のメールアドレス以外を
 入力すると認証ではじかれます。(お使いのメールサーバーは知りませんが)

 このようなことがsendmail、qmailで実現可能かどうかもわからない状態で
 お尋ねするのは真に恐縮なのですが ご存知の方がおられましたら
 ご指導ご教授願います。
Dr.Doraemon
ぬし
会議室デビュー日: 2002/03/23
投稿数: 265
投稿日時: 2003-07-03 13:19
お疲れ様です。

なっこさん、やりたいことはわかりました。

 メールを送信する時に、送信元のアドレスと自分のアカウントが一致しない場合はメールを送れないようにしたいということなのですよね。

 これは、難しいと思います。sendmailは詳しくは知りませんが、qmailにはそのような機能がついているという話は聞いたことがありません。私が知らないだけという可能性の方が高いですが・・・。
 ただ、メールアドレスの使い方としては、送信元と返信先アドレスを変える場合などもありますから、プロバイダで制限をかけていることは少ないと思います。私の加入しているプロバイダでももちろんできてしまいます。

 biglobe.ne.jpのメールサーバはどうやら、sendmailで動いているようですから、sendmailでなにか設定する方法があるかもしくは、すこしソースを書き換えるなどのカスタマイズを入れているという可能性もありますね。
 送信元のアドレスは、ヘッダー情報ですからそのへんのチェックをしてくれるアドインか何かがあるのかもしれませんね。
おさるさん
会議室デビュー日: 2002/06/13
投稿数: 13
投稿日時: 2003-07-03 19:13
こんにちは。

基本的にメールクライアントの設定までメールサーバーは管理していません。
そういう機能もないと思います。
Perlとかで存在するアカウントと比較するぐらいはできないことはないと思いますが。
(FROMアドレスのアカウントが/etc/passwdに存在するとかぐらいです)
/var/log/maillogを見てみるとFROMアドレスを参照してログを吐いていますので送信したアカウントをサーバー上で判別できないのでFROMアドレスとの完全一致は難しいと考えられます。

メールサーバーでは、個人の不注意で間違ったFROMアドレスを送信しても責任持てないと考えたほうが良いと思います。また、アドレスの偽装もできるわけですがこれも個人のモラルの問題だと思います。

解決策でなくて申し訳ありません。
おさるさん
会議室デビュー日: 2002/06/13
投稿数: 13
投稿日時: 2003-07-03 19:23
追記です。
---------------------------------
BIGLOBEのエラーメッセージ
http://email.biglobe.ne.jp/errormsg.html#smtperr2

差出人(From)のアドレスと同一契約IDでBIGLOBEにダイヤルアップIP接続した場合
他契約IDでのダイヤルアップIP接続または他プロバイダからの利用で、同一接続中の規定時間内に 差出人(From)と同一アカウントでメール受信している場合
---------------------------------

たぶんBIGLOBEの場合、POP認証のアカウントと接続IPを覚えておき、送信時にアカウントと送信元IPが一致しているかチェックしているのだと思います。

違ったらごめんなさい。
1

スキルアップ/キャリアアップ(JOB@IT)