• ベストアンサー
  • すぐに回答を!

メールサーバPostfixの設定について

教えてください。 Postfix初心者です。 2点質問があります。 1点目ですが、 PostfixとDovecotを使って、バーチャルドメインの設定するのですが、 以下の3つの違いが分かりません。 どのような使い分けをするものなのでしょうか? 教えていただけないでしょうか? ・共有ドメイン ・バーチャルエイリアス ・バーチャルメールボックス 2点目ですが、 DMZ内にMTAサーバを構築し、ローカルLAN上にあるMTA+POPサーバを構築します。 外→内のメールですが、DMZ内のMTAサーバで受け取って、ローカルのMTAに転送する。 内→外のメールについては、ローカルのMTAから直接外へとする場合、 my.cnfのコンフィグファイルに必要な記述はどこになりますでしょうか? relayhostとmydestinationの記述のところでしょうか? どのように書けば良いでしょうか? すみません。よろしくお願いします。

共感・応援の気持ちを伝えよう!

  • Linux系OS
  • 回答数1
  • 閲覧数304
  • ありがとう数1

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

  • ベストアンサー
  • 回答No.1
  • anmochi
  • ベストアンサー率65% (1332/2045)

この回答ではバーチャルドメインとしてexample.comとexample.netを扱うものとする。 > 1点目 共有ドメインというのはよく分からないが、ymoshimoshi@example.com宛とymoshimoshi@example.net宛のメールが同じメールボックスに入るという意味じゃないかな。複数ドメインを扱うのでなければ考える必要はない。 バーチャルエイリアスはエイリアスのバーチャルな奴で、ymoshimoshi@example.comに来たメールをymoshimoshi@example.netやadmin@example.comに転送するものだ。 バーチャルメールボックスは、OSユーザとは独立したメールボックスの事で、代表OSユーザなどの権限でメールをディスクに保存する。あまりよろしくない例だがCentOS6でnobody(uid=99)を使う例を示すと、main.cfには virtual_minimum_uid = 99 virtual_uid_maps = static:99 virtual_gid_maps = static:99 virtual_mailbox_base = /var/vmailbox virtual_mailbox_domains = example.com example.net virtual_mailbox_maps = hash:/etc/postfix/vmailbox virtual_alias_maps = hash:/etc/postfix/virtual などとすればよいだろう。/etc/postfix/vmailboxには ymoshimoshi@example.com example.com/ymoshimoshi/Maildir/ ymoshimoshi@example.net example.net/ymoshimoshi/Maildir/ などと記述してpostmapコマンドでハッシュにする。/etc/postfix/virtualも同じ。ここでvmailboxに ymoshimoshi@example.com example.com/ymoshimoshi/Maildir/ ymoshimoshi@example.net example.com/ymoshimoshi/Maildir/ などとするのが共有ドメインという意味なのではなかろうか。ちなみに、上のような設定でymoshimoshi@example.com宛のメールは/var/vmailbox/example.com/ymoshimoshi/Maildir/newにnobody:nobody権限で保存される。 > 2点目 my.cnfはMySQLサーバーの設定ファイルじゃないか。 DMZ側は外→内のメールの転送しかしないサーバになるため、relayhostに内側のサーバーを宛てておけばよいだろう。 ローカルLANのmain.cfのmydestinationにはexample.comやexample.comには記述しない。そうするとバーチャルメールボックスが使えなくなるからだ。変わりにvirtual_mailbox_domainsに記述する。なお、バーチャルエイリアスとバーチャルメールボックスに同じドメインを使いたい場合、virtual_mailbox_domainsにのみそのドメインを記述し、virtual_alias_domainsには記述してはいけない。 以下、余談 個人的には内→外のメールもDMZメールサーバーを経由すべきだと思うが、その場合はDMZメールサーバーはrelayhostではなくtransport(8)を用いてメールの転送を制御する事になる。 また、DMZメールサーバーはメール受信の拒否設定(存在しないメールボックス宛のメールを拒否するなど)をきっちり行っておくべきだ。またはキャッチオールメールボックスを作って存在しないメールボックス宛のメールは全てそこに溜めるか。 バーチャルメールボックスをメインとして運用する場合、ローカルメールの取り扱いについて検討しておく方が良いだろう。ローカルメールとは、LogWatchやtripwireなどのローカルからpickupされるメールで、これの受け取り手がないとローカルのroot宛にずっと溜まったままになるなどディスクを圧迫するなどが起こる。 DovecotはPostfixに比べたらuserdbとpassdbをちょこちょこ調整すれば良いだけなので楽チンだが、かと言って侮ってはいけないのでこちらも頑張りましょう。

共感・感謝の気持ちを伝えよう!

質問者からのお礼

ご丁寧に教えて頂きありがとうございます。

関連するQ&A

  • Postfixのサーバホスト名及び設定について

    Postfix初心者です。 教えてください。 現在CentOS6.4にPostfixをインストール中です。 Postfixのサーバを以下の通り用意しなければなりません。 DMZの中に1台(MTA1) 外部からの受付をするMTAです。 例えばabc.co.jpという自社宛てのメールを受け付け、 LAN側にあるMTA+POPに送ります。 LAN内に1台(MTA2) 上記のようにDMZにあるMTAからのabc.co.jp宛のメールの受付と abc.co.jpのメールアカウントから他の外部宛のメールを受け付け、 外へ直接送ります。 2点質問がございます。 MTA1とMTA2に付けるホスト名についてお伺いしたいです。 MTA1はmail.abc.co.jpという名前にして、DNSサーバ上のMXレコードと同じ名前にする。 MTA2はどのような名前にすればいいのでしょうか? もし考え方が違っていたら指摘いただき、教えていただけないでしょうか? 又上記説明に書いたように、 MTA1→MTA2に送る MTA2からは外へ直接送る と言った場合 以下のように記述すれば良いでしょうか? もし何か間違っていたら教えていただけないでしょうか。 (参考) MTA1については、 /etc/postfix/main.cf: relayhost =(※記述しない) MTA2については、 /etc/postfix/main.cf: relay_domains = $mydestination (※$mydestinationについては、別の$mydestinationの定義で書いたドメイン) その他POPで使用するDovecotでの設定が必要な箇所がありましたらお願い致します。

  • メールのサーバ側ユーザー作成について

    メールサーバ構築初心者です。 すみません。教えてください。 サーバAにMTA1(DMZ)を構築し、 サーバBにMTA2(LAN)を構築します。 MTA1にはPostfixをインストールし。 自社ドメイン(1つ)宛のメールは MTA2に転送するという設定をします。 サーバ2にはMTA2としてPostfixをインストールし、 自社ドメイン宛のメールをmydestinationとして受けます。 POP3でクライアントがメールを受信する為にDovecotもインストールしました。 社内からはMTA2を使って直接外部へメールを送信します。 前置きが長くなってしまいましたが、 質問させていただきたいのが、 Linuxアカウントとして、MTA2に40ユーザぐらいの ユーザを #useradd -s /sbin/nologin test #passwd test のような感じで作成しました。 通常40人ぐらいのユーザであれば、Linuxユーザを40人分ユーザー名/パスワードを作成し、 運用するという方法が良いのでしょうか? PostfixAdminをインストールするという方法もあるようですが、 mysqlをインストールしたりするのが煩雑であれば、このような運用でも問題ないのでしょうか? もう1点気になるのが、/homeの下にユーザ毎のディレクトリが作成され、 その下にメールボックスがMaildir形式で作成されています。 たとえ100名のユーザーがいて、PostfixAdminをインストールして管理しないのであれば、 100名分を/home下に作成して運用するというのでも問題ないのでしょうか? 経験されている方からのご教示をいただきたいです。 よろしくお願い致します。

  • postfixの設定

    サーバ構築練習のため、社内でローカルサーバを構築しています。 192.168.3.10がLinuxサーバでpostfixを起動しました。 postfixの設定はmain.cfをちょこっとだけ編集しました。 myhostname = サーバ名 mydomain = ドメイン名 myorigin = $mydomain inet_interfaces = ALL mydestination = $myhostname, localhost.$mydomain,$mydomain,localhost というようにしました。 サーバ上でmailコマンドを使って同じサーバ上のユーザへのメールは正常に送れます。192.168.3.11というWindowsのメーラーを使っても送受信はできます。 しかし、社内のメールサーバに登録してあるユーザへのメールは届きません。 携帯電話へのメールは送信できます。 ちなみにローカルのサーバに付けているドメイン名は自分で勝手に付けました。 なので登録はしておりません。 これは何か設定漏れとかありますのでしょうか?なぜ携帯には送れるのか分かりません。補足があれば追加します。

  • バーチャルドメインベースのpostfix設定

    バーチャルドメイン数個を1台のサーバで運営するに当たって /etc/postfix/main.cf の記述で困っています。 まず、[myhostname] ですが、これはバーチャルなサーバの場合は何て記述すればいいのでしょうか。 [mydomain][myorigin]についても困っています。

  • postfixメールサーバー構築について

    いつもお世話になっております。 ローカルネットワークのWindowsPCにVmwareをインストールして その上に、CentOS5のPostfixでメールサーバーを構築しようとしていています。 それで、ご質問ですが、 独自ドメインを取得しなくても、外部にメールを送ることは、可能でしょうか。 お手数をおかけしますが、どうぞよろしくお願いいたします。

  • Postfixにするとrootにメールが届かない

    Fedora Core 2にPostfixをインストールしています。 #mail user だとメールが届きますが、 #mail root ではメールが届きません。 ログは、 Feb 6 12:33:38 fc2 postfix/pickup[11536]: 7DE7FD0E: uid=500 from=<user> Feb 6 12:33:38 fc2 postfix/cleanup[16482]: 7DE7FD0E: message-id=<20050206033338.7DE7FD0E@fc2.domain.tld> Feb 6 12:33:38 fc2 postfix/nqmgr[11537]: 7DE7FD0E: from=<user@domain.tld>, size=284, nrcpt=1 (queue active) Feb 6 12:33:38 fc2 postfix/local[16494]: 7DE7FD0E: to=<postfix@domain.tld>, orig_to=<root>, relay=local, delay=0, status=sent (mailbox) となっています。 宛がuserの時は user@postfix@domain.tld と変わるだけで無事届き、mailコマンドでも dovecot経由でBeckyやOutlokkでも受信できます。 confファイルの主だったところは次のような感じです。 mail_owner = postfix myhostname = fc2.domain.tld mydomain = domain.tld myorigin = $mydomain inet_interfaces = localhost mydestination = $myhostname, localhost.$mydomain $mydomain mynetworks_style = subnet #home_mailbox = Mailbox #home_mailbox = Maildir/ mail_spool_directory = /var/spool/mail なお、MTAをsendmailにするとrootでもuserでも、問題なく動いてます。このときのsendmailの状態はデフォルトです。

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

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

  • 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の設定について

    LAN内にメールサーバA(postfix稼働)を構築し、 LAN内の各サーバからのメールは、全てメールサーバAを経由して、 外部の宛先へ送信されるように設定を行いたいと考えております。 各サーバはMSP(Mail Submission Program)としてsendmailが稼働しており、 /etc/mail/submit.cfを修正し、メールサーバAへメールが転送されるようになりましたが、 各サーバのログに「stat=Deferred: Connection refused」が出力され、メールが送信できておりません。 各サーバからtelnetを利用してメールを送信した場合は、正常に送信できております。 postconf -n の出力は以下の通りです(一部抜粋してあります) home_mailbox = Maildir/ inet_interfaces = all manpage_directory = /usr/share/man message_size_limit = 10485760 mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain, mydomain = aaaaa.net myhostname = aaaaa.net mynetworks_style = subnet newaliases_path = /usr/bin/newaliases.postfix queue_directory = /var/spool/postfix relay_domains = $mydestination, bbbbbbb.ne.jp ← 外部へ送信する際のアドレス relayhost = [mail.aaaaaaaaa.ne.jp]:587 ← ISPのメールサーバを指定 smtp_sasl_auth_enable = yes smtp_sasl_mechanism_filter = LOGIN, CRAM-MD5, PLAIN smtp_sasl_password_maps = hash:/etc/postfix/authinfo smtp_sasl_security_options = noanonymous smtpd_banner = $myhostname ESMTP unknown smtpd_recipient_restrictions = permit_mynetworks permit_sasl_authenticated reject_unauth_destination smtpd_sasl_auth_enable = yes smtpd_sasl_local_domain = $myhostname unknown_local_recipient_reject_code = 550 原因が分かる方がいれば、ご教示いただければと思います。 どうぞ宜しくお願いいたします。

  • Postfixのリレー設定

    現在、postfixにて中継サーバを構築しております。 この中継サーバにて、特定ドメインの場合はサーバAに、その他のドメインの場合はサーバBへ中継するという環境を構築したいのですがpostfixにてこの様な環境は構築できるのでしょうか。 現在、relyahost = の設定にてサーバBを、tranceport_mapにて 特定ドメイン = サーバA を指定 しておりますが、特定ドメインを含む全てのメールがサーバBへ転送されてしまいます。 勉強不足を重々承知でお尋ねさせていただいております。 どなたかお解りになる方がいらっしゃいましたら御教授の程宜しくお願い致します。