web-dev-qa-db-ja.com

すべての受信メールを外部アドレス(Gmailなど)に(単に)転送するにはどうすればよいですか?

中小企業やチームがGoogleAppsを無料で利用できなくなったため、MXレコードをアプリケーションサーバーに向けたままになっています。前述のMXレコードに関連付けられているドメインに送信されたGmailアドレスでメールを受信したいのですが。

Sendmailのインストールと/etc/mail/virtusertableの設定を見て、

@mydomain    [email protected]

また、postfixのインストールと/etc/aliasesの変更についても見てきました。

admin:  [email protected]
team:  [email protected]
...

とにかく、[email protected]にメールを送信すると、メールがアプリケーションサーバーに届かないように見え(たとえば、/var/log/maillogには何も追加されていないことが表示されます)、Gmailアカウントに戻らないことは間違いありません。

別の方法でpostfixやsendmailを破棄しても問題ありません。アプリケーションサーバーでメールを受け入れて、そのメールをGmailアカウントに転送するだけです。サーバー上に実際の電子メールアカウントは必要ありません。これがサーバー上の唯一のドメインです。

4
user170072

Sendmailでは、最後に次のようなものを追加する必要があります/etc/mail/sendmail.mc

LOCAL_CONFIG
Kuser user -m -a.FOUND

LOCAL_RULE_0
R$- < @ $=w . > $*        $: $(user $1 $) < @ $2 . > $3
R$- . FOUND < @ $=w . > $*          $@ username < @ gmail.com. > $3

これにより、システムのユーザー(/etc/passwdにリストされている)宛ての電子メールが[email protected]に転送されます。ルールの左側は、スペースではなくタブでルールの右側から分離されていることに注意してください。コピーペーストしないでください。代わりに上記のルールを入力してください。その後、変更を行うには、/etc/mail/makeを実行してsendmail.cfservice sendmail restartをビルドする必要があります。

1
adamo

Postfixログに何も表示されない場合は、メールの送信先のドメインに責任を負わないため、サーバーが着信接続を取得していないように見えます。

仮想ユーザーとドメインのテーブルは適切な出発点ですが、次のように「mydestination」にドメインを追加する責任がPostfixにあることを確認してください。

mydestination = localhost, mydomain.tld, mail.mydomain.tld

最初にハッシュすることを忘れないでください:

postmap /etc/postfix/virtusertable

エイリアスマップにvirtusertableを含めます。

virtual_alias_maps = hash:/etc/postfix/virtusertable

最後に重要なことですが、postfixが実際にリクエストを取得していることを確認します

Dig mydomain.tld MX

ドメインとMXレコードをチェックし、それらがPostfixサーバーを指していることを確認します。今日/ MX DNSエントリを変更しただけの場合、DNSのDNSキャッシング、プロバイダーのDNS、またはmydomain.tldにメールを送信するサーバーの他のDNSサーバーが原因で、変更が表示されるまでに最大24時間かかることがあります。

0
Meiko Watu

Sendmailを使用すると、次のようなものを/etc/mail/sendmail.mcに追加できます。

_define(`LUSER_RELAY',`error:550 User unknown')
define(`MAIL_HUB',`esmtp:[email protected]')
_

(LUSER_RELAY)の後に不明なローカルユーザーへの電子メールを拒否し、username @ gmail.com(MAIL_HUB)の残りのローカル電子メールアドレスにメッセージを送信する必要があります。これは、エイリアスの展開と〜/ .forwardファイルの処理後に適用されます。

警告:

  • このメソッドは、宛先の電子メールなどによる拒否をうまく処理しません。アンチスパム手順によって引き起こされます。
  • しないでくださいFEATURE(stickyhost)でレシピを使用します
  • 私は主にカスタムR行ベースのソリューションの代替としてそれを投稿します。
0
AnFi

手始めに、サーバーにpostfixまたはsendmailをインストールする必要がありますが、これはお尻の痛みです。いったんPostfixを取得して実行すると、Postfixでメールをリレーすることは簡単なプロセスです。

http://www.howtoforge.com/how-to-relay-email-on-a-postfix-server

私は実際にあなたが必要としていることを正確に実行しているpostfix/dovecotサーバーを実行しています。

0
user970638