仮想サーバーでメールが機能しません

ドイツのホスティングプロバイダー Hosteurope の仮想サーバーを使用しています。仮想サーバーには MTA Postfix はインストールされていません。インストールは非常に簡単でした。./launcher bootstrap app と ./launcher start app を実行すると、アプリが起動します。

次に ./discourse-doctor を実行すると、以下のメッセージが表示されます。

メールテスト用のメールアドレスを入力してください(スキップするには ‘n’)[test@example.com]:
test@example.com 宛てにメールを送信中…
wpxxx.mailout.server-he.de:25 を使用して test@example.com 宛てに送信をテスト中。
SMTP サーバーへの接続に成功しました。
test@example.com 宛てに送信中…
SMTP サーバーでメールが受け入れられました。

メッセージが届かない場合は、スパムフォルダを確認するか、http://www.mail-tester.com/ などのサービスを使って再度テストしてください。

メッセージが配信されない場合でも、Discourse に問題があるわけではありません。

配信に失敗した理由を確認するために、SMTP サーバーのログを確認してください。
置き換え中: SMTP_PASSWORD
置き換え中: LETSENCRYPT_ACCOUNT_EMAIL
置き換え中: DEVELOPER_EMAILS
置き換え中: DISCOURSE_DB_PASSWORD

以下は app.yml の一部です。

  DISCOURSE_SMTP_ADDRESS: wpxxx.mailout.server-he.de
  DISCOURSE_SMTP_PORT: 25
  #DISCOURSE_SMTP_USER_NAME:
  #DISCOURSE_SMTP_PASSWORD:
  #DISCOURSE_SMTP_ENABLE_START_TLS: true  # (オプション、デフォルトは true)
  #DISCOURSE_SMTP_AUTHENTICATION: login

スパムフォルダを確認しましたか?

mail-tester への送信を試みましたか?

はい、mail-tester にメールを送信しました。SMTP サーバーはメールを受諾しましたが、受信者に配信されていないようです。

==================== メールテスト ====================
確実なテストを行うには、http://www.mail-tester.com/ からアドレスを取得してください。
または、自分自身にテストメッセージを送信してください。
メールテスト用のアドレスを入力してください(スキップするには 'n')[]: test-2v7z63ww6@srv1.mail-tester.com
test-2v7z63ww6@srv1.mail-tester.com へメールを送信中...
test-2v7z63ww6@srv1.mail-tester.com への送信を wp10750459.mailout.server-he.de:25 を使用してテスト中。
SMTP サーバーへの接続に成功しました。
test-2v7z63ww6@srv1.mail-tester.com へ送信中...
メールが SMTP サーバーによって受諾されました。

メッセージが届かない場合は、スパムフォルダーを確認するか、
http://www.mail-tester.com/ などのサービスを使用して再度テストしてください。

メッセージが配信されない場合、それは Discourse の問題ではありません。

メッセージの配信に失敗した理由を確認するには、SMTP サーバーのログを確認してください。
置換中: SMTP_PASSWORD
置換中: LETSENCRYPT_ACCOUNT_EMAIL
置換中: DEVELOPER_EMAILS
置換中: DISCOURSE_DB_PASSWORD
置換中: Sending mail to

==================== 完了! ====================

そのようです。メールサーバーのログを確認する必要があります。メールサーバー側ではメッセージは受け入れられたものの、配信されませんでした。

問題は、仮想サーバーにメールサーバーをインストールする必要があるかどうかです。私は仮想サーバーにメールサーバーは不要だと思います。プロバイダーの SMTP サーバーを使いたいのです。ポートが閉じられています。どのメールサーバーをインストールすべきでしょうか?

telnet 178.77.102.5 25
Trying 178.77.102.5...
telnet: Unable to connect to remote host: Connection refused

nmap -PN -p 25,110,143,465,587,993,995 178.77.102.5

Starting Nmap 7.01 ( https://nmap.org  ) at 2021-01-07 16:45 CET
Nmap scan report for lvps178-77-102-5.dedicated.hosteurope.de (178.77.102.5)
Host is up (0.0058s latency).
PORT      STATE   SERVICE
25/tcp   closed smtp
110/tcp closed pop3
143/tcp closed imap
465/tcp closed smtps
587/tcp closed submission
993/tcp closed imaps
995/tcp closed pop3s

Nmap done: 1 IP address (1 host up) scanned in 0.23 seconds

[root@lvps178-77-102-5 ~]# yum list installed | grep mail
Repository base is listed more than once in the configuration
Repository updates is listed more than once in the configuration
Repository extras is listed more than once in the configuration
Repository centosplus is listed more than once in the configuration
fetchmail.x86_64                               6.3.24-7.el7                     installed
mailcap.noarch                                  2.1.41-2.el7                     installed
mailx.x86_64                                     12.5-19.el7                      installed
procmail.x86_64                                 3.22-36.el7_4.1                installed
sendmail.x86_64                                 8.14.7-6.el7                     installed
sendmail-cf.noarch                            8.14.7-6.el7                     installed
sendmail-doc.noarch                           8.14.7-6.el7                     installed
[root@lvps178-77-102-5 ~]#
[root@lvps178-77-102-5 ~]# ss -tanup
Netid State         Recv-Q Send-Q                                              Local Address:Port                                                                     Peer Address:Port
tcp    LISTEN       0         128                                                                     *:22                                                                                        *:*                            users:((\"sshd\",pid=396,fd=3))
tcp    LISTEN       0         128                                                                     *:3000                                                                                     *:*                            users:((\"docker-proxy\",pid=841,fd=4))
tcp    LISTEN       0         128                                                                     *:443                                                                                       *:*                            users:((\"docker-proxy\",pid=783,fd=4))
tcp    LISTEN       0         128                                                                     *:2045                                                                                     *:*                            users:((\"docker-proxy\",pid=3321,fd=4))
tcp    LISTEN       0         128                                                                     *:80                                                                                        *:*                            users:((\"docker-proxy\",pid=851,fd=4))
tcp    LISTEN       0         128                                                                     *:81                                                                                        *:*                            users:((\"docker-proxy\",pid=829,fd=4))
tcp    ESTAB         0         0                                                       178.77.102.5:22                                                                     185.243.70.181:39124                      users:((\"sshd\",pid=16868,fd=3))
tcp    LISTEN       0         128                                                                [::]:22                                                                                    [::]:*                            users:((\"sshd\",pid=396,fd=4))

メールサーバーのインストールと実行方法については、他の情報源をご参照ください。これはここでサポートされている範囲を超えています。

お使いのメールサーバーは wp10750459.mailout.server-he.de のようです。つまり、受信したメールを受け取っているが配信していないのはこのサーバーです。その理由を知るには、そちらのログを確認する必要があります。

簡単な解決策としては、Mailgun や同様のサービスを利用することです。