• ベストアンサー

sendmailの設定について(user unknownメールの転送)

社内メールサーバの管理を行っています。(専任ではありません) sendmailで次のような処理が出来ないかと考えています。 --------------------------------------------------------- 退社等により既に使われていないメールアドレス宛に送られてくるDMやメールマガジン(user unknownになるメール)を管理者用のメールアドレスに通知する 通知の内容については 1.メールのヘッダのみ 2.メールのヘッダと本文 3.送信者宛に送られるエラー通知メール のいずれか --------------------------------------------------------- このような処理は可能か、また、可能であるとしたらどのような方法があるかをご教示ください。 目的は存在しないメールアドレスに送られてくるDMやメールマガジンの送信を停止させることです。 (上記の方法より良い方法がありましたらそちらも教えていただきたいです。) なお、利用環境は OS:Red Hat Linux release 6.2 sendmail:sendmail 8.11.4 です。 宜しくお願いします。

質問者が選んだベストアンサー

  • ベストアンサー
  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.2

いっそのこと、アクセスデータベースを利用して、smtp接続そのものを拒否するというのはどうですか? たとえば、access.txtというテキストを以下の内容で作成します。 From:spammer.com.jp  REJECT Connect:cracker.com  DISCARD Connect:123.456.789  REJECT From:はエンベロープ送信者のアドレスです。 Connect:は接続もとのIPアドレス(の一部)またはFQDN(ドメイン名)。 REJECTはメールの受け取りを拒否し、エラーを返す。 DISCARDはメールを破棄し、エラーを返さない。 データベースを作成する。 # makemap hash access < access.txt これでaccess.dbというhashデータベースができます。 FEATURE(`access_db')を指定してsendmail.cfを作成する。 こんな感じです。自動化できる事は自動化してknyacki__の負担を減らす方が良いかも。不正メールなんてどんどん飛んできますのでキリがないです。

knyacki__
質問者

お礼

Logをみて不正メールの送信者から送られてくるメールをREJECT/DISCARDするという事ですね。 確かにいちいち手動で対応していたらきりが無いですよね^^; semdmail.cfの作り方などを勉強してから、教えていただいた方法を試してみたいと思います。 ありがとうございました。

その他の回答 (3)

noname#41381
noname#41381
回答No.4

メール本体を確保したいということであれば、 例えば メールバーチャルの設定で、既にいないユーザ宛のメールを管理者宛に転送してしまうとか。 (参考URL) http://www.smb.net/~jake/Boubi/Sendmail/ (複数ドメイン メール バーチャル) あとは、 「sendmail -bd -ODeliveryMode=deffered」でキューにためるように起動して qxxxxxxxxファイルのRPFDレコードが既にいないユーザ宛なら処理するような スクリプトを作るとか。 ちなみに、キューにたまったメールは「sendmail -q」で配信 (この場合、cronで5分おき等に設定しておけばいいですね)

knyacki__
質問者

お礼

http://oshiete1.goo.ne.jp/kotaeru.php3?q=283008の記事に回答されている方ですか? メールバーチャルは調べてみたのですが詳しいサイトが見つからず諦めていたので、URLのページは非常に参考になりました。 ↓のREJECT/DSICARDの処理とあわせて、良い方法を検討してみたいと思います。 ありがとうございました。

  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.3

ひとつ書き忘れましたが To: でエンベロープ受信者宛のsmtp接続を REJECT/DISCARDできます。

  • xjd
  • ベストアンサー率63% (1021/1612)
回答No.1

通常、unknown user宛のメールは仮想ユーザであるMAILER-DAEMON又はpostmasterが発信者にエラーメールを返しますが、わざわざ管理者に受信させる必要があるのですか? >送信を停止させることです 発信者に対し、送信しないようお願いするのですか? すくなくとも/var/log/messagesやmaillogにはエラーの履歴が残りますが.....

knyacki__
質問者

補足

> 発信者に対し、送信しないようお願いするのですか? そうです。 送信者に対してエラーメールが返っているとは思うのですが、それでもまた送ってくるので送信停止の手続きをしないとだめかなと・・・ > すくなくとも/var/log/messagesやmaillogにはエラーの履歴が残りますが 一応logのチェックはしています ただlogではメール本文を見ることは出来ませんよね? (管理者といえども他人宛にきたメールを見るというのは問題があるような気もしますが・・・) ちなみに質問の項に書き忘れたのですが、DMなどの送信停止という目的のほかに、弊社ドメインのメールアドレスを不正に取得(というより調査でしょうか?)しようと送られてくるメールの情報を収集するという目的もあります。 (不正に...:弊社のメールアドレスの@より前の部分をランダムに書き換え、その生成したメールアドレス宛にメールを送ることにより社員のメールアドレスを調べようとしているようです)

関連するQ&A

  • user unknownの原因

    当社はお客様(企業の方)向けに月一回DMを配信しています。 さきごろ配信に使用するメールサーバを自社内サーバから外部のレンタルサーバに変更しました。(これに伴いDNSも変更しています) メールサーバ変更後の最初のDM配信を先日行ったところ、user unknown(や類似のエラー)によるエラーメールが多量に届きました。 4月ですので異動等に伴い通常月よりは多くのエラーが出るだろうとは思いますが、通常はメールの不達でのエラーは1%未満であるのに対し今回は6~8%と異常な高率です。 これについて、本当の意味でのuser unknown(メールアドレスが存在しない)ではないのにuser unknownとエラーメールが届く場合とはどのような場合か、またある程度よくあることなのかご存知の方がいましたらご教授ください。 なお、当社のDMは携帯電話相手には配信していません。(検索すると、携帯電話での受信拒否でこのエラーを返すケースがあるようですが今回は該当しません。) 私は社内のPC管理担当ですがメールサーバ周りは詳しくはなく、DM配信担当は純粋な事務職でPC自体詳しくなく、メールサーバを管理するものも営業事務兼WEB管理が主業務で専任のメール担当がいない状況です。(このためお知恵を拝借したいという次第です)

  • エラー(user unknown)メールを別のアドレスへ返信させたい

    こんばんは 今、社内のシステムで複数のユーザーに対してメールを 送信しているのですが、登録されたメールアドレスが 存在しない場合などに戻ってくるエラーメールが、 かなり膨大になってきているので、これらのメールを 送信アドレスではなく別のアドレスへ返信させられないか 考えています。 メール送信用のサーバーとしてはSendmailを使っている (らしい)のですが、そちらの設定は変えず、メールを 送信する際のヘッダー情報などでなんとか制御できない でしょうか?

  • Sendmailの設定

    違うジャンルで以前質問させて頂いたのですが、回答が なかったためこちらで質問させて頂きます。かなり困って いますので、よろしくお願い致します。 Solaris8でsendmail8.11.2を使用しているのですが、 あるPCから自ドメイン以外へメールを送信しようとすると あなたはIPアドレスを偽っていますというエラーがでて 送信できません。また、自ドメイン宛のアドレスには送信できます。 その後管理しているDNSの設定を見てみると、送信できなかったIPアドレスの正引きと逆引きのホスト名が違っていたため、そこを修正すると外部へ送信できました。 今までの古いバージョンのsendmailでは起こっていなかったので多分新しいバージョンの仕様だと思うのですが。 現在DNSの情報を整理しているところなので、もしこのsendmailの機能を解除する設定をご存知でしたら教えて頂けないでしょうか?

  • User unknownでメールが送れない

    信頼できる友人から,久々にメールを貰い 返信メールを書き,送信ボタンを押したら 瞬時に下記のようなメッセージが表示され,メールが送信できません. ------------------ メールの送信中にエラーが発生しました. メールサーバは,次にように応答しました: 5.1.1<**@nifty.com>... User unknown.メッセージの宛先を確認して,やり直してください. ------------------- メールの返信なので, 相手のメールアドレスが無くなっているとも思えません. 相手にメールを送信するにはどうしたらよいでしょうか? メーラはネスケ7.1です. よろしくお願いします.

  • Sendmail8.11.2の設定について

    RedHatLinux7.1にSendmail8.11.2をインストールしてメールサーバを立ち上げようとしています。 LinuxもSendmailも初心者なもので、色々と良くわからない事があります。 Q1. メールを送信するのは出来たのですが、メールを受信する為に設定しないといけない内容及び手順が記載されているオススメサイトはありませんか。 Q2. 不正なアドレスにメールした時にエラーメールが返ってくると思うのですが、これをある特定のユーザに通知する設定及び手順が記載されているオススメサイトはありませんか。 御存知の方、御教示を御願いします。

  • sendmailを許可するユーザーとしないユーザーの切り分け方

    sendmail と qpopper で POP before SMTP なメールサーバーを構築していますが、 ユーザーにメールを使わせたい人と、使わせたくない人がいるんですが、 どうすれば制御出来ますか?(RED HAT8.0です) 今は暫定的に、/etc/mail/access ファイルに、メールを使わせたくないユーザー をBと仮定して b@***.ne.jp REJECT と記入して使ってますが、b@***.ne.jp のアドレスでメールの送受信は出来ませんが B君はqpopperに認証出来てしまいますし、認証出来たのならSMTPも通過出来てしまうので a@***.ne.jp とか c@***.ne.jp などの他人のアドレスで詐称してメール送信出来てしまいます。 B君にメールを一切使わせない方法はどうすればよいでしょうか。 (IPで弾く方法を考えましたが、B君がネットカフェなどからアクセスされるとどうしようもないです)

  • Sendmailで送信。メアドが違う場合User unknowメールを返す。

    Sendmailで送信させるPerlプログラムを作成しました。 それ自体は、ちゃんとメール送信できるのですが、Toのメールアドレスが存在しない場合、fromのメールアドレスにUser unknowメールを返す様にするには、どうしたらよいのでしょう。 現在のコードは、メールヘッダー部を$headerに代入し、本文を$bodyに代入しています。 open(MAIL, "| $SENDMAIL -i -t -f $mail") or die("ERROR: exec sendmail."); print MAIL $header, $body; close MAIL; なにせ、あんまりパラメーターの意味がわかってなくて、ネットで調べたコードをそのまま使っているもので、このコードを変えるのだろうな、という憶測はつきますが、じゃあどうかえるのかが分かりません。 よろしくお願いします。

    • ベストアンサー
    • Perl
  • sendmailでのエラーメールの処理について

    sendmailでpostmasterあてに、すべてのエラーメールを転送させるにはどのようにするのでしょうか? (host unknownは転送できますが、user unknownは送信者にしか戻りません。 どなたかご存知の方は教えてください。

  • sendmailの設定について

    クローズなネットワークにあるサーバから、管理者宛メール(root宛)をあるメールサーバへ送信したいです。 DNSなどを参照せずに、IP指定でメールをすべて転送したいのですが、sendmail.cfの設定箇所が分からず困ってます。 sendmail-8.12.10を使用しております。 よろしくお願いします。

  • sendmailでの複数メールアドレスへの送信

    sendmailで、複数のメールアドレスに送信したいのですが、 Perlのスクリプトで、メールヘッダを出力するとき、 open(TMP,"| /usr/sbin/sendmail -t"); print TMP "To:***@**co.jp,***@**co.jp\n"; などのようにカンマをはさんで複数のアドレスをそのまま記述すれば 送信できるのでしょうか? なぜこう思ったかと言うと、 サイトサーブでのCGIの設置で、フォーム側に送信先アドレスを設定して渡すのですが、 そのとき複数アドレスの指定の仕方がカンマをはさんで記述するようになっていたからです。 また、他の方法があれば教えてください。 お願いします。

    • ベストアンサー
    • CGI