web-dev-qa-db-ja.com

Gmailを使用して自分のドメインのメールアドレスを検証する

Gmailのウェブインターフェースを使用してメールを送信する機能が必要ですが、Gmailアドレスではなく自分のドメインから発信されているように見せます。これを行うために、Gmailは私のSMTPサーバーの情報(URL、アカウントなど)を要求し、実際に、自分のSMTPサーバー(postfix、私のホストでホストされている)を使用して上記のドメインから電子メールを送信できることを検証しますlinode)。

Gmailの応答は、「他のメールプロバイダーの応答が遅すぎます。しばらくしてからもう一度お試しいただくか、他のドメインの管理者に詳細をお問い合わせください。」です。 -彼らからそれ以上の詳細を得ることができません。

私はCentos7用にPostfix、Dovecot、MariaDBを Centos 7用のLinodeのチュートリアル に従ってセットアップし、ChuanJiによるチュートリアル「Customdomainemails with postfix and gmail」(つまり、Gmailを幸せにするために、smtpサーバーの名前を共通名として証明書にmail.tcs-usa.comを含めて、そこでのアドバイスに基づいて単一の.pemファイルを生成しました)。

SMTPサーバーとしてpostfixを使用してThunderbirdでメールを送信できます。また、ドメイン内の任意のアドレス宛ての受信メールをgmailアカウントに転送するようにpostfixを構成しています。これは完全にうまく機能します。また、mxtoolbox.comでSMTPサーバーを確認したところ、すべてが順番に検出されました。

以下に、接尾辞のログからの抜粋を含めます。私に飛び出すのは、11行目と12行目の「match_list_match:mail-yk0-f169.google.com:nomatch」だけです。

情報が多すぎる場合は、事前にすべての助けと謝罪に感謝しますが、私はすでに2日間これにいて、どこにも行きません。

アレックス

以下は/etc/postfix/main.cfのすべてのアクティブな行です:

command_directory = /usr/sbin

daemon_directory = /usr/libexec/postfix

data_directory = /var/lib/postfix

mail_owner = postfix

inet_interfaces = all

inet_protocols = all

mydestination = localhost, localhost.localdomain

alias_maps = hash:/etc/aliases

alias_database = hash:/etc/aliases

debug_peer_level = 2

#alexw- added google
debug_peer_list = google.com

debugger_command =
     PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
     ddd $daemon_directory/$process_name $process_id & sleep 5

sendmail_path = /usr/sbin/sendmail.postfix

newaliases_path = /usr/bin/newaliases.postfix

mailq_path = /usr/bin/mailq.postfix

setgid_group = postdrop

readme_directory = /usr/share/doc/postfix-2.10.1/README_FILES
myhostname = mail.tcs-usa.com
mydomain = tcs-usa.com
myorigin = tcs-usa.com
#mynetworks = 127.0.0.0/8
message_size_limit = 30720000
virtual_alias_domains = 
virtual_alias_maps = proxy:mysql:/etc/postfix/mysql-virtual_forwardings.cf, mysql:/etc/postfix/mysql-virtual_email2email.cf
virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql-virtual_domains.cf
virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql-virtual_mailboxes.cf
virtual_mailbox_base = /home/vmail
virtual_uid_maps = static:5000
virtual_gid_maps = static:5000
smtpd_sasl_type = dovecot
smtpd_sasl_path = private/auth
smtpd_sasl_auth_enable = yes
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
# alexw - removed permit_mynetworks from line below
smtpd_recipient_restrictions = permit_sasl_authenticated, reject_unauth_destination
smtpd_use_tls = yes
smtpd_tls_auth_only = yes
# The next 2 lines are the settings for using dovecot's ssl certificates:
# smtpd_tls_cert_file = /etc/pki/dovecot/certs/dovecot.pem
# smtpd_tls_key_file = /etc/pki/dovecot/private/dovecot.pem
# Replacing the above two lines with this one:
smtpd_tls_cert_file = /etc/postfix/tcs-usa.pem
virtual_create_maildirsize = yes
virtual_maildir_extended = yes
proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps
virtual_transport = dovecot
dovecot_destination_recipient_limit = 1

そして、ここにmaster.cfからのアクティブな行があります:

#
# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp      inet  n       -       n       -       -       smtpd
#smtp      inet  n       -       n       -       1       postscreen
#smtpd     pass  -       -       n       -       -       smtpd
#dnsblog   unix  -       -       n       -       0       dnsblog
#tlsproxy  unix  -       -       n       -       0       tlsproxy
submission inet n       -       n       -       -       smtpd
  -o syslog_name=postfix/submission
  -o smtpd_tls_security_level=encrypt
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_reject_unlisted_recipient=no
  -o smtpd_client_restrictions=$mua_client_restrictions
  -o smtpd_helo_restrictions=$mua_helo_restrictions
  -o smtpd_sender_restrictions=$mua_sender_restrictions
  -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING
  -o smtpd_relay_restrictions=permit_sasl_authenticated,reject
  -o smtpd_tls_cert_file=/etc/postfix/tcs-usa.pem
# alexw - added the line above (smtpd_tls_cert_file)
smtps     inet  n       -       n       -       -       smtpd
  -o syslog_name=postfix/smtps
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_reject_unlisted_recipient=no
  -o smtpd_client_restrictions=$mua_client_restrictions
  -o smtpd_helo_restrictions=$mua_helo_restrictions
  -o smtpd_sender_restrictions=$mua_sender_restrictions
  -o smtpd_recipient_restrictions=permit_sasl_authenticated,reject
  -o milter_macro_daemon_name=ORIGINATING
#628       inet  n       -       n       -       -       qmqpd
pickup    unix  n       -       n       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup
qmgr      unix  n       -       n       300     1       qmgr
#qmgr     unix  n       -       n       300     1       oqmgr
tlsmgr    unix  -       -       n       1000?   1       tlsmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
trace     unix  -       -       n       -       0       bounce
verify    unix  -       -       n       -       1       verify
flush     unix  n       -       n       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
proxywrite unix -       -       n       -       1       proxymap
smtp      unix  -       -       n       -       -       smtp
relay     unix  -       -       n       -       -       smtp
#       -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
retry     unix  -       -       n       -       -       error
discard   unix  -       -       n       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       n       -       1       anvil
scache    unix  -       -       n       -       1       scache
dovecot   unix  -       n       n       -       -       pipe
    flags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/deliver -f ${sender} -d ${recipient}

これは、私のSMTPサーバーを検証しようとしているGmailに関連するログの抜粋です。

Dec  6 01:20:12 ewr postfix/submission/smtpd[13344]: connect from mail-yk0-f169.google.com[209.85.160.169]
Dec  6 01:20:12 ewr postfix/submission/smtpd[13344]: smtp_stream_setup: maxtime=300 enable_deadline=0
Dec  6 01:20:12 ewr postfix/submission/smtpd[13344]: match_hostname: mail-yk0-f169.google.com ~? 127.0.0.0/8
Dec  6 01:20:12 ewr postfix/submission/smtpd[13344]: match_hostaddr: 209.85.160.169 ~? 127.0.0.0/8
Dec  6 01:20:12 ewr postfix/submission/smtpd[13344]: match_hostname: mail-yk0-f169.google.com ~? 45.79.184.0/24
Dec  6 01:20:12 ewr postfix/submission/smtpd[13344]: match_hostaddr: 209.85.160.169 ~? 45.79.184.0/24
Dec  6 01:20:12 ewr postfix/submission/smtpd[13344]: match_hostname: mail-yk0-f169.google.com ~? [::1]/128
Dec  6 01:20:12 ewr postfix/submission/smtpd[13344]: match_hostaddr: 209.85.160.169 ~? [::1]/128
Dec  6 01:20:12 ewr postfix/submission/smtpd[13344]: match_hostname: mail-yk0-f169.google.com ~? [fe80::]/64
Dec  6 01:20:12 ewr postfix/submission/smtpd[13344]: match_hostaddr: 209.85.160.169 ~? [fe80::]/64
Dec  6 01:20:12 ewr postfix/submission/smtpd[13344]: match_list_match: mail-yk0-f169.google.com: no match
Dec  6 01:20:12 ewr postfix/submission/smtpd[13344]: match_list_match: 209.85.160.169: no match
Dec  6 01:20:12 ewr postfix/submission/smtpd[13344]: auto_clnt_open: connected to private/anvil
Dec  6 01:20:12 ewr postfix/submission/smtpd[13344]: event_enable_read: fd 18
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: send attr request = connect
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: send attr ident = submission:209.85.160.169
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: vstream_fflush_some: fd 18 flush 49
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: vstream_buf_get_ready: fd 18 got 25
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: private/anvil: wanted attribute: status
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: input attribute name: status
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: input attribute value: 0
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: private/anvil: wanted attribute: count
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: input attribute name: count
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: input attribute value: 1
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: private/anvil: wanted attribute: rate
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: input attribute name: rate
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: input attribute value: 1
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: private/anvil: wanted attribute: (list terminator)
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: input attribute name: (end)
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: > mail-yk0-f169.google.com[209.85.160.169]: 220 mail.tcs-usa.com ESMTP Postfix
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: watchdog_pat: 0x56163ce15080
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: vstream_fflush_some: fd 17 flush 36
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: smtp_get: EOF
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: match_hostname: mail-yk0-f169.google.com ~? 127.0.0.0/8
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: match_hostaddr: 209.85.160.169 ~? 127.0.0.0/8
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: match_hostname: mail-yk0-f169.google.com ~? 45.79.184.0/24
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: match_hostaddr: 209.85.160.169 ~? 45.79.184.0/24
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: match_hostname: mail-yk0-f169.google.com ~? [::1]/128
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: match_hostaddr: 209.85.160.169 ~? [::1]/128
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: match_hostname: mail-yk0-f169.google.com ~? [fe80::]/64
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: match_hostaddr: 209.85.160.169 ~? [fe80::]/64
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: match_list_match: mail-yk0-f169.google.com: no match
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: match_list_match: 209.85.160.169: no match
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: send attr request = disconnect
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: send attr ident = submission:209.85.160.169
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: vstream_fflush_some: fd 18 flush 52
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: vstream_buf_get_ready: fd 18 got 10
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: private/anvil: wanted attribute: status
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: input attribute name: status
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: input attribute value: 0
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: private/anvil: wanted attribute: (list terminator)
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: input attribute name: (end)
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: lost connection after CONNECT from mail-yk0-f169.google.com[209.85.160.169]
Dec  6 01:20:13 ewr postfix/submission/smtpd[13344]: disconnect from mail-yk0-f169.google.com[209.85.160.169]
2
alex_223

約束どおり、解決策を見つけたので投稿します。サーバーの名前smtp.mydomain.comを使用する代わりに、サーバーのIPアドレスを使用するとすぐに問題が解決しました。 Googleは確認でき、GmailまたはGoogleがfrom:またはsender:フィールドに表示されることなく、Gmailアカウントからメールを送信できるようになりました。

おそらく、それは私のDNSレコードの設定方法に関連していますが、それが機能しているので、それを理解しようとするのは控えると思います。

http://bit.ly/1NTmSqz で解決策を見つけました

アレックス

0
alex_223