最近、「ironfist-droplet」というタイトルのサーバーに私のウェブサイト(ironfi.st)のSMTPメールサーバーを設定しています。 WP-SMTP-MAILプラグインを使用しています。 Apache2サーバーをセットアップし、すべてを正しく構成しました。使用方法:echo "Subject: sendmail test" | sendmail -v [email protected]
およびメールはサーバーから私のものに完全に送信されます。ただし、WP-MAIL-SMTPプラグインを使用してテストメールを送信すると、送信されません。
これにより、/etc/hosts
のhostsファイルに問題がある可能性があると思いました。以下は、hostsファイルに入力したものです。
127.0.0.1 localhost localhost.localdomain 192.168.1.10 ironfist-droplet ironfist-droplet.ironfi.st ironfi.st
以下は私のメールログファイルです:
Feb 17 10:59:18 ironfist-droplet sendmail[3223]: v1HFxI2U003223: from=root, size=196, class=0, nrcpts=1, msgid=<201702171559.v1HFxI2U003223@ironfist-droplet>, relay=root@localhost
Feb 17 10:59:18 ironfist-droplet sm-mta[3225]: v1HFxIYv003225: from=<root@ironfist-droplet>, size=455, class=0, nrcpts=1, msgid=<201702171559.v1HFxI2U003223@ironfist-droplet>, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]
Feb 17 10:59:18 ironfist-droplet sendmail[3223]: v1HFxI2U003223: to=root, ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30196, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (v1HFxIYv003225 Message accepted for delivery)
Feb 17 10:59:18 ironfist-droplet sm-mta[3226]: v1HFxIYv003225: to=<root@ironfist-droplet>, ctladdr=<root@ironfist-droplet> (0/0), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30682, dsn=2.0.0, stat=Sent
Feb 17 11:04:35 ironfist-droplet sendmail[3261]: v1HG4ZrO003261: from=root, size=196, class=0, nrcpts=1, msgid=<201702171604.v1HG4ZrO003261@ironfist-droplet>, relay=root@localhost
Feb 17 11:04:35 ironfist-droplet sm-mta[3263]: v1HG4ZWL003263: from=<root@ironfist-droplet>, size=455, class=0, nrcpts=1, msgid=<201702171604.v1HG4ZrO003261@ironfist-droplet>, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]
Feb 17 11:04:35 ironfist-droplet sendmail[3261]: v1HG4ZrO003261: to=root, ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30196, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (v1HG4ZWL003263 Message accepted for delivery)
Feb 17 11:04:35 ironfist-droplet sm-mta[3264]: v1HG4ZWL003263: to=<root@ironfist-droplet>, ctladdr=<root@ironfist-droplet> (0/0), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30682, dsn=2.0.0, stat=Sent
Feb 17 11:04:48 ironfist-droplet sendmail[3269]: v1HG4mAm003269: from=root, size=196, class=0, nrcpts=1, msgid=<201702171604.v1HG4mAm003269@ironfist-droplet>, relay=root@localhost
Feb 17 11:04:48 ironfist-droplet sm-mta[3271]: v1HG4muh003271: from=<root@ironfist-droplet>, size=455, class=0, nrcpts=1, msgid=<201702171604.v1HG4mAm003269@ironfist-droplet>, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]
Feb 17 11:04:48 ironfist-droplet sendmail[3269]: v1HG4mAm003269: to=root, ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30196, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (v1HG4muh003271 Message accepted for delivery)
Feb 17 11:04:48 ironfist-droplet sm-mta[3272]: v1HG4muh003271: to=<root@ironfist-droplet>, ctladdr=<root@ironfist-droplet> (0/0), delay=00:00:00, xdelay=00:00:00, mailer=local, pri=30682, dsn=2.0.0, stat=Sent
Feb 18 09:39:26 ironfist-droplet sendmail[9396]: v1IEdQfV009396: from=root, size=14, class=0, nrcpts=2, msgid=<[email protected]>, relay=root@localhost
Feb 18 09:39:26 ironfist-droplet sm-mta[9397]: v1IEdQrA009397: from=<[email protected]>, size=305, class=0, nrcpts=2, msgid=<[email protected]>, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]
Feb 18 09:39:26 ironfist-droplet sm-mta[9397]: STARTTLS=client, relay=gmail-smtp-in.l.google.com., version=TLSv1/SSLv3, verify=FAIL, cipher=ECDHE-RSA-AES128-GCM-SHA256, bits=128/128
Feb 18 09:39:27 ironfist-droplet sm-mta[9397]: v1IEdQrA009397: to=<[email protected]>, delay=00:00:01, xdelay=00:00:01, mailer=esmtp, pri=60305, relay=gmail-smtp-in.l.google.com. [173.194.204.26], dsn=2.0.0, stat=Sent (OK 1487428767 a63si3981733qkb.149 - gsmtp)
Feb 18 09:43:27 ironfist-droplet sm-mta[9397]: v1IEdQrA009397: to=<[email protected]>, delay=00:04:01, xdelay=00:04:00, mailer=esmtp, pri=60305, relay=ironfist-droplet.ironfi.st. [192.168.1.10], dsn=4.0.0, stat=Deferred: Connection timed out with ironfist-droplet.ironfi.st.
Feb 18 09:43:27 ironfist-droplet sendmail[9396]: v1IEdQfV009396: to=Example,[email protected], ctladdr=root (0/0), delay=00:04:01, xdelay=00:04:01, mailer=relay, pri=60014, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (v1IEdQrA009397 Message accepted for delivery)
Feb 18 09:55:23 ironfist-droplet sm-mta[9426]: v1IEdQrA009397: to=<[email protected]>, delay=00:15:57, xdelay=00:04:15, mailer=esmtp, pri=150305, relay=ironfist-droplet.ironfi.st. [192.168.1.10], dsn=4.0.0, stat=Deferred: Connection timed out with ironfist-droplet.ironfi.st.
ご覧のとおり、これはironfist-droplet.ironfi.st
に接続しようとしています。これは、私が/etc/hosts
に入力したものであり、タイムアウトします。
以下は私のメールエラーログの添付です:
Jan 24 23:21:47 ironfist-droplet sendmail[2417]: My unqualified Host name (ironfist-droplet) unknown; sleeping for retry
Jan 24 23:22:47 ironfist-droplet sendmail[2417]: unable to qualify my own domain name (ironfist-droplet) -- using short name
Jan 24 23:22:47 ironfist-droplet sm-mta[2486]: My unqualified Host name (ironfist-droplet) unknown; sleeping for retry
Jan 24 23:22:50 ironfist-droplet sm-msp-queue[2491]: My unqualified Host name (ironfist-droplet) unknown; sleeping for retry
Jan 24 23:23:47 ironfist-droplet sm-mta[2486]: unable to qualify my own domain name (ironfist-droplet) -- using short name
Jan 24 23:23:50 ironfist-droplet sm-msp-queue[2491]: unable to qualify my own domain name (ironfist-droplet) -- using short name
上記のように、ironfist-dropletでホスト名とドメイン名を修飾するのに問題があります。私はこれに非常に慣れていないので、SMTPサーバーをセットアップするタスクを自分自身に挑戦して経験を積む方法として採用しました。私はこのすべてに非常に新しいです。ただし、この証拠に基づいて、情報をhostsファイルに書き込む方法に問題があると結論づけました。しかし、私が肯定的な情報は2つあります。
hostname -f
はironfist-dropletを返すため、ホスト名はironfist-dropletであり、2行目のプライベートIPはhostname -i
returns 192.168.1.10として正しいです。私はオンラインで見ましたが、私のホストファイルと比較するために誰かのホストファイルの適切な比較を見つけることができませんでした。
Hostsファイルへの入力方法にエラーが見られた場合、または問題の解決策が見られた場合は、遠慮なくお知らせください。すべての助けに感謝します。
完全なhostsファイル:
# Your system has configured 'manage_etc_hosts' as True.
# As a result, if you wish for changes to this file to persist
# then you will need to either
# a.) make changes to the master file in /etc/cloud/templates/hosts.tmpl
# b.) change or remove the value of 'manage_etc_hosts' in
# /etc/cloud/cloud.cfg or cloud-config from user-data
127.0.0.1 localhost localhost.localdomain
192.168.1.10 ironfist-droplet ironfist-droplet.ironfi.st ironfi.st
# The following lines are desirable for IPv6 capable hosts
::1 ip6-localhost ip6-loopback
fe00::0 ip6-localnet
ff00::0 ip6-mcastprefix
ff02::1 ip6-allnodes
ff02::2 ip6-allrouters
ff02::3 ip6-allhosts
ドメイン名情報:
Version 8.14.4
Compiled with: DNSMAP LDAPMAP LDAP_REFERRALS LOG MAP_REGEX MATCHGECOS
MILTER MIME7TO8 MIME8TO7 NAMED_BIND NETINET NETINET6 NETUNIX
NEWDB NIS NISPLUS PIPELINING SASLv2 SCANF SOCKETMAP STARTTLS
TCPWRAPPERS USERDB USE_LDAP_INIT XDEBUG
============ SYSTEM IDENTITY (after readcf) ============
(short domain name) $w = ironfist-droplet
(canonical domain name) $j = ironfist-droplet.ironfi.st
(subdomain name) $m = ironfi.st
(node name) $k = ironfist-droplet
========================================================
通常、完全修飾ホスト名は/etc/hosts
の最初にリストする必要があります。
192.0.2.0 foo.example.org foo bar
また、システムのホスト名も完全に修飾されている必要があります。 Sendmail(および、おそらくそれが通信するほとんどすべてのリモートMTA)は、完全修飾ドメイン名がどこにでも設定されるまで、非常に不幸になります。例えば。私のデスクトップ(および私のMTA)は次のようになります。
# sendmail -bt -d0.1 </dev/null
Version 8.15.2
Compiled with: DNSMAP IPV6_FULL LOG MAP_REGEX MATCHGECOS MILTER
MIME7TO8 MIME8TO7 NAMED_BIND NETINET NETINET6 NETUNIX NEWDB NIS
PIPELINING SCANF SOCKETMAP STARTTLS USERDB XDEBUG
============ SYSTEM IDENTITY (after readcf) ============
(short domain name) $w = foo
(canonical domain name) $j = foo.example.edu
(subdomain name) $m = example.edu
(node name) $k = foo.example.edu
========================================================
ADDRESS TEST MODE (ruleset 3 NOT automatically invoked)
Enter <ruleset> <address>
> #
# cat /etc/myname
foo.example.edu
#
ただし、この(OpenBSD、ホスト名のmyname
ファイルで示されている)システムはDNSを使用しますが、notホストファイルです。理想的な構成はDNSを使用することです。それが不可能な場合は、hostname
と/etc/hosts
を正しく取得してください(特に$j
、$m
、および$k
の値]上記の出力では)、それが不可能な場合は、設定できるルールセット値があります。