• ベストアンサー

postfixで社外宛メールを拒否したい

現在 Webページ[CentOSで自宅サーバー構築]を見ながら メールサーバ構築をしております。 用途としては、社内専用のメールサーバとして使用するため 社外宛のメールは、すべて拒否したいと考えております。 (例えばメールサーバのドメイン名がexsam.comだった場合、宛先がexsam.com以外のメールはすべて拒否) 簡単にできそうかな?と甘く考えていましたが なかなか目的までたどり着けず、 Webページ検索で技術文書を見つけても、なかなか読み解けず 四苦八苦しております。 このような質問で申し訳ないのですが ご教授のほど、よろしくおねがいします。 環境 CentOS 5.1 postfix-2.3.3-2 dovecot-1.0.7-2.el5

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

  • ベストアンサー
  • anights
  • ベストアンサー率72% (35/48)
回答No.3

なにか難しく考えていませんか? 社内に対してもオープンリレーさせないという風には考えられませんか? 例えば mynetworks = 127.0.0.0/8 としてしまえば済むのではありませんか?

voltea
質問者

お礼

ご回答有り難うございます。 ご回答は、まさに私の望むもので 希望の設定を行うことが出来ました。

その他の回答 (2)

  • pakuti
  • ベストアンサー率50% (317/631)
回答No.2

CentOS5.0で検証した事がありますが 問題なく動作していました。 記述におかしい所はありませんか? どうしても駄目ならばスマートではありませんが 外向き25をiptablesで落とすとか。。。。 スマートホストを自分自身に向けるとか。

voltea
質問者

補足

ご回答有り難うございます。 今後の為にも、ご提案いただいた方法で解決したいと思います。 設定も再確認いたしました。 ・main.cf header_checks = regexp:/etc/postfix/header_checks (コメントアウトで記述済だったため#を削除する) ・header_checks (ファイルがすでにあったので、最終行に追加) !/^To:.*@MYDOMAIN.com/ REJECT →自ドメイン(MYDOMAIN.com)へのメール拒否・その他ドメイン宛メール拒否 その他、 的外れかもしれませんが色々試してみましたが やはり拒否されてしまっています。 !/^To:.*@MYDOMAIN.com.*/ REJECT →自他拒否 !/^To:.*MYDOMAIN.com.*/ REJECT →自他拒否 !/^To:.*MYDOMAIN\.com*/ REJECT →自他拒否 !/^To:.*MYDOMAIN*/ REJECT →自他拒否

  • pakuti
  • ベストアンサー率50% (317/631)
回答No.1

header_checksを使えば簡単です http://www.postfix-jp.info/trans-2.2/jhtml/header_checks.5.html 上記のページと若干異なりますが main.cfに header_checks = regexp:/etc/postfix/header_checks を書きます(既に書かれているかもしれません) で、/etc/postfixの下に、header_checksと言う名前でファイルを作成します。 !/^To:.*@your.domain/ REJECT と記述して、postfixのサービスを再起動すれば 希望の動作をするかと思われます

voltea
質問者

補足

ご回答ありがとうございます。 指定の方法で設定したところ 自ドメイン宛のメールでも 他のメールでもすべて拒否となってしまいました。 MUAのエラーメッセージは 550 5.7.1 message content rejectet と表記されています。

関連するQ&A

  • postfix+dovecotで、アカウントの拒否について

    CentOS4で、メールサーバ(postfix2.2+dovecot0.99)を構築しています。 現在は、Unix側のユーザをメールのアカウントにしているのですが、 一部のユーザ(アカウント)を利用できないようにしたいのですが、方法がわかりません。(接続拒否) どうすれば良いか、ご存知の方いましたら、ご教授ください。 よろしくお願いします。

  • postfixのセカンダリメールサーバについて

    ■環境 CentOS 5.6 postfix.x86_64 2:2.3.3-2.3.el5_6 ■質問経緯 postfixでセカンダリメールサーバを構築しました。 プライマリサーバのpostfixのサービスを停止し、他のドメインからメールを送信して、一定時間(約1時間)放置後にプライマリサーバのpostfixのサービスを開始すると正常にメールが受信できます。 上記より、セカンダリサーバが正常に動いていると考えております。 しかしながら、プライマリサーバがメールを受信できない場合にセカンダリサーバのどこにメールが保存されているのわかりません。 ■質問内容 1.セカンダリサーバのどこにメールが保存されているのでしょうか?

  • Postfixについて

    現在、CentOS4上でPostfix+Dovecotでメールサーバ環境を構築しています。 この環境において、該当ユーザがない場合のメールをエラーとして返信するのではなく、指定した該当ユーザ宛へ転送することは可能でしょうか? 目的としては、あるシステムでユニークなアドレスを生成してそこに送信された画像ファイルを各ユーザのデータとして保存するシステムを構築しています。 生成されるユニークなアドレスをあらかじめ登録しておくことは物理的に不可能ですので、本来エラーとして返されるものを同じサーバの有効なアドレスに転送できればと思います。 以上、よろしくお願いいたします。

  • Postfixとdovecot 設定

    CentOSでPostfixとdovecotをインストールしました。 postfixの設定は ~~~~~~~~~~~~~~~~ http://kennyqi.com/archives/18.html ~~~~~~~~~~~~~~~~ dovecotの設定は ~~~~~~~~~~~~~~~~ vi /etc/dovecot.conf protocols = pop3 imap mail_location = maildir:/home/%u/Maildir dovecotを起動 /etc/rc.d/init.d/dovecot start ~~~~~~~~~~~~~~~~ mailコマンドで自分あてに mail hoge@hoge.com メールを送信すると受信は出来るのですが、 Gmailなどメーラーを使って送信すると受信できません。 メールからの送信も出来ません。 おそらく設定ミスだとは思うのですが、ご指摘お願いします。

  • postfixおよびdovecotの設定について

    今回、Fedora11にpostfixとdovecotをインストーしてメールサーバーを構築したのですが、構築したアドレスの受信ができません。 逆に、送信はできgmailなど外部のメールに送ることはできます。 DNS、DHCPの設定は、問題ないことは確認できています。 また、dovecotでmail_location=の部分を変更しても設定が反映されません。(dovecotの削除→再インストールでもダメでした。) ファイヤーウォールを全開放しても受信できていません。 postfixやdovecotの設定は”Fedora 11で作る最強の自宅サーバー ”という本に書いてある設定しかしていません。 どのように設定を変更したらメールを受信できるようになりますでしょうか? 何かありきたりなミスなど皆様が御存知のことがありましたら是非、アドバイスお願いします。

  • squirrelmailサーバーの役割分担

    squirrelmail、postfix、dovecotで、 説明させて頂きます。 今まで、私は、  Webメールサーバー(squirrelmail) ⇔ メールサーバー(postfix or dovecot) だと思っておりました。  つまり、「メールボックスは、メールサーバー」「Webメールサーバにもボックスはあるが同期用」といった感じだと思っていました。  今回、squirrelmailを立てて見て 上の構成で、構築しようと考えていました。 しかし、実際は、  Webメール+メールサーバー(squirrelmail+postfix +dovecot)で 1つのサーバーに、squirrelmail、postfix、dovecot+(apache +PHP) の全てをインストールして、Webメールサーバーが出来てると知りました。 ■質問  1つのサーバーで、squirrelmail、postfix、dovecot入れて、webメールサーバーが成り立つことが 分かったのですが、私が当初考えた  「Webメールサーバー」⇔「メールサーバー」 (⇔は同期) というように複数台に役割を割りたいのです。  当然、メールボックスが「Webメールサーバー」「メールサーバー」各サーバーで必要になるため いけてないことも分かっているのですが。  どなたか、お分かりになる方がいらっしゃいましたら ご教授のほうお願いします。

  • Postfixの設定について

    CentOSで下記の設定をpostfix のmain.cfに加えた後、外部サイトのポートスキャンを実施すると失敗します。(iptalbe はstop にして chkconfig off 、selinuxはsetenforce 0 SELINUX =disabled 実施済みです。)  Vinlinuxでは下記の設定をすると、ポートスキャンで成功します。 おそらく、CentOSの場合、セキュリティの関係か何かで、さらに何か設定変更しないとポートスキャンに成功しない仕様だと思ってます。CentOSの場合、maillogを見るとpostfixがスタートしているようには出ているのですが。 ネットで調べたのですが、うまい解決方法が見つかりません。CentOS導入のウエブページにもPostfix Dovecotの組み合わせで設定する方法が結構載っていますが、そのとおり試してもうまくいきません。 そもそも、Postfixの設定完了時点でポートスキャンで失敗しているので、Dovecotの設定などしても意味が無い状態です。 どうすれば、ポートスキャンが成功するでしょうか。 テスト環境  (OSインストール後、すぐにPostfixに設定を加えるだけで、ポートスキャンを実施しています) ------------------------------------------- CentOS5.5 or CentOS6.2 (iptables,selinux 無効実施済み) postfix-postfix-2.3.3 Vinlinux4.2 postfix-2.2.10-10v14 ------------------------------------------- main.cf の設定内容 (試験目的のため最小限の設定をしたつもりです。Vinelinuxではうまく動作します) myhostname = jitaku-server.net mydomain = jitaku-server.net myorigin = $myhostname inet_interfaces = all mydestination = $myhostname, localhost.$mydomain $mydomain mynetworks_style = subnet home_mailbox = Maildir/ ------------------------------------------- よろしくお願いします。

  • PostfixとDovecotでメールサーバ構築

    先日より、PostfixとDovecotを使用してメール環境整えようと作業を進めています。 そこで、認証にはSMTP-Auth設定 (sasldb2認証)を使用しているのですが、ユーザとパスワード設定したのち、 sasldblistusers2 を実行しましたが、しっかりとユーザを作成できているようでした。 /etc/sasldb2の所有グループもpostfixにしており、パーミッションも740に変更しました。 telnetで接続確認(telnet localhost 110)をし、上記で作成したユーザ名とパスワードを入れても認証に失敗します。 [root@centos ~]# telnet localhost 110 Trying 127.0.0.1... Connected to localhost. Escape character is '^]'. +OK Dovecot ready. user panasonic +OK pass ********* -ERR Authentication failed. Connection closed by foreign host. ログメッセージ Apr 3 11:42:53 centos52 dovecot: pop3-login: Aborted login: user=<cisco@centos.alhambr.mydns.jp>, method=PLAIN, rip=::ffff:127.0.0.1, lip=::ffff:127.0.0.1, secured Apr 3 11:43:11 centos52 postfix/smtpd[1930]: warning: xsasl_cyrus_server_get_mechanism_list: no applicable SASL mechanisms Apr 3 11:43:11 centos52 postfix/smtpd[1930]: fatal: no SASL authentication mechanisms Apr 3 11:43:12 centos52 postfix/master[1887]: warning: process /usr/libexec/postfix/smtpd pid 1930 exit status 1 Apr 3 11:43:12 centos52 postfix/master[1887]: warning: /usr/libexec/postfix/smtpd: bad command startup -- throttling Apr 3 11:51:24 centos52 postfix/smtpd[1971]: warning: xsasl_cyrus_server_get_mechanism_list: no applicable SASL mechanisms 何が原因なのでしょうか。アドバイスお願い致します。 -環境- postfix-2.3 dovecot-1.0 Centos5.4

  • postfixとdovecotでメールサーバ構築

    postfixとdovecotでメールサーバ構築を行おうとしています。 送信はできているのですが、受信ができていないようです。 imapの認証エラーが出ていて解決ができません。 対処方法を教えていただければと思います。 http://kajuhome.com/postfix.shtml#n03 http://www.htkyama.org/netbsd/postfix.html を参考にしたのですが、上手くいきません。 postfixのmain.cfの末端に記述する内容が若干かわっていたりします。 現時点でエラーログが dovecot: imap-login: Aborted login (no auth attempts): となっています。 これはThunderBirdでアカウント登録をしようとした際に表示されます。 ターミナルソフトで #telnet localhost 143 として 1 login (Username) (Password) を入力してログインを試すのですが dovecot: imap-login: Disconnected: Inactivity (auth failed, 1 attempts): user=<(Username)>, method=PLAIN, rip=::1, lip=::1, secured とエラーログに表示されます。 どのように対処すればいいのか教えてください。 非常に困っていますのでよろしくお願いいたします。

  • postfix + dovecot

    Red Hat Enterprise Linux6.2上でpostfix + dovecotのメールサーバを構築していますが、送受信とも正常に行えていません。 もともとtubbo linax10で動作していた環境を移植しています。 postfixは現在の設定をほぼそのまま利用しています。 doveco(dovecot-2.0.9-2. el6_1.1.x86_64)は新規の使用です。 外部ネットワークからのメール送信は行わない運用とする為、smtp-authは構成していません。 dovecotも各ユーザでのパスワードは設定せずに、運用したいと考えています。 postfix,dovecot共にサービスは正常に動作しており、ポートも空いている事は確認しています。 LAN内からメールの送受信を行うと、サーバに接続できないエラーとなります。 /var/log/massages,maillogにはpostfixとdovrcotが起動した旨のメッセージしか記録されておらず、 詳細なエラー情報は記録されていません。 第一点は、詳細ログの確認方法をご教授下さい。 devecotを調査している過程で、認証方法を"auth-system.conf.ext"としており、その設定の中でデフォルトが ”driver = pam” 設定されており、それを ”driver = shadow”に変更して再起動すると、下記エラーとなってしまいます。 「doveconf: Fatal:Error in configuration file /etc/dovecot/conf.d/auth-system.conf.ext line 14: Unknow setting: driver」 この辺りが、ポイントではないかと考えているのですが、ご支援頂きたくお願いします。