メインのメールサーバーとは独立して(つまり、直接)メールを送信したいLinuxサーバーをセットアップしています。問題は、外部アドレスにメールを送信すると、メッセージ送信者アドレスのドメインが存在しないでバウンスすることです。 (メールは[email protected]として送信されます)
メール送信者のドメインを変更する適切な方法は何ですか?
Main.cf:
# SENDING MAIL
#
# The myorigin parameter specifies the domain that locally-posted
# mail appears to come from. The default is to append $myhostname,
# which is fine for small sites. If you run a domain with multiple
# machines, you should (1) change this to $mydomain and (2) set up
# a domain-wide alias database that aliases each user to
# [email protected].
#
# For the sake of consistency between sender and recipient addresses,
# myorigin also specifies the default domain name that is appended
# to recipient addresses that have no @domain part.
#
#myorigin = $mydomain
myorigin = $myhostname
これがデフォルトの設定です。 hostname
がdomain.localである場合、これが送信者ドメインとして表示されている理由です。
これは、送信を試みるときにサーバーが正しい名前を要求するため、DNS管理者が関与/賄賂/ブラックメールで支援する必要がある問題の1つです。 Mnayサーバーは、送信者がフォワードとリバースの両方を正しく解決しない場合、メールをバウンスします。
たとえば、サーバーがmail01.example.comであるとします。 $ myoriginがmail01.example.comとしてアドバタイズするように正しく構成されているサーバーがサーバーに接続すると、サーバーは接続元のIPアドレスのDNSルックアップを実行し、ルックアップが私を与えます。それが正しく解決しない場合は、おそらくスパムを送信しているだけなので、接続を切断します。
Postfix設定でドメイン名を修正する必要があります(domain.localは有効なドメイン名ではありません)。
/etc/postfix/main.cfを確認してください。これを指定する方法はいくつかあります。これが役立つ場合があります http://www.postfix.org/BASIC_CONFIGURATION_README.html#myorigin
一部の宛先サーバーは送信者アドレスが存在するかどうかを確認するため、スマートホストでpostfixを構成する必要があります。
ここでそれを行う方法: http://ubuntu.wordpress.com/2005/09/07/setting-a-smarthost-in-postfix/
私は同じ問題を抱えていました。この問題の原因は、「nameos.acme.com」のようなサブドメインからではなく、「acme.com」のようなmydomainからのメールのみを許可するrelayhostでした。
「myorigin」パラメータの値を次のように更新して、これを修正しました
myorigin = $mydomain
まず第一に、メールサーバーを正しくセットアップして、送信するすべてのメールがバウンスされないようにするために、選択したDNSプロバイダーで保持されているドメインのリソースレコードにアクセスする必要があります。私のものはGoogleです。
必要なすべてのリソースレコードから、表示しないdkimレコードを差し引いて説明します。
最初は実際のDNSレコードです。
2番目は、誰がDNS証明書を偽装できないようにDNS証明書を保持しているのかを示すCAAレコードです。
3つ目は、私のMXレコードです。これは、ドメインで使用しているメールサーバーを全員に通知します。アドレスの前の整数に基づいて、これらの設定を複数持つことができます。
4つ目は私のSPFレコードです。これは、私のドメインを検索するすべてのユーザーに、私のドメインへのメール送信を許可されているIPアドレスを通知します。複数のIPアドレスまたは複数のSPFレコードが存在する可能性があります。
5つ目は、SPFレコードのIPアドレスから送信されていないメール、またはMXレコードに含まれていないメールサーバーをメールで交換するように指示するDMARCレコードです。あなたはおそらくこれを作成し、拒否するのではなく何かを言うだけで済むかもしれませんが、それでもこれは正しい方法です。
6番目は、私のDKIMレコードです。これは、私のドメインから送信されるすべてのメールを認証するために使用されるrsaキーであり、特に正しくするのは面倒です。
以上をすべて行ったら、Originの設定を変更できます。Gmailで元のメッセージをクリックすると、3つのチェックすべてに合格するため、すべてのエクスチェンジでベルとホイッスルをオンにしてメールを受信できます。
ここにpostfixのそれほど基本的ではない、基本的な設定があります
http://www.postfix.org/BASIC_CONFIGURATION_README.html
これは、おそらく最終的に必要となるdkimサーバー用の、opendkimからのドキュメンテーション(別名、ドメインキー識別メール)です。
http://www.opendkim.org/docs.html
そして、MX SPFおよびDMARCレコードに関するいくつかのリンクがあります。メールエクスチェンジャー、送信者ポリシーフレームワーク、または
ドメインベースのメッセージ認証レポートと準拠。
https://en.m.wikipedia.org/wiki/DMARC
https://en.m.wikipedia.org/wiki/Sender_Policy_Framework
https://en.m.wikipedia.org/wiki/MX_record
これは、メールを公式にしてすべての人に受け入れてもらいたい場合に必要です。また、世界中のスパム/フィッシング/マルウェアを削減するための良い方法でもあります。
また、dkimにはキーが含まれていて、それに慣れていない公開レコードであるため、dkimを表示しなかった可能性もありますが、これは、他のDNSプロバイダーで保持しているリソースレコードでもあります。
上記の問題にも直面しました。myoriginの値を適切なドメイン名に更新した後、問題は解決しました。更新後、POSTFIXを再起動します。
myorigin= (EMAIL-DOMAIN).com
例:
myorigin=yahoo.com