web-dev-qa-db-ja.com

Exim4のSMTPとしてのセットアップを完了し、ほとんどの受信トレイに到達できるようにします(正しい構成)

過去数日間、Exim4をセットアップして、Webアプリケーションから送信されたすべてのメールを処理しようとしました。

動作しているようですが、EHLOで送信されるホスト名をハードコードする方法がわかりません。 (/etc/hostnameを設定したくない)

構成で言及されている変数MAIN_HARDCODE_PRIMARY_HOSTNAMEを見つけましたが、設定する方法が見つかりませんでした。この変数はホスト名を設定する最も簡単な方法ですか、それとももっと良い方法がありますか?

以下は完全なinstall/configです。何か不足していますか?

Exim version 4.92Debian Buster 10

インストール

apt-get install exim4-daemon-light

Exim4を構成する

dpkg-reconfigure exim4-config

Type:           internet site
FQDN:           smtp.mydomain.com
SMTP listener:      (empty)
Mail destinations:  (empty)
Domain relay:       (empty)
Machine relay:      (empty)
DNS queries minimal:    No
Delivery method:    Maildir
Split conf files:   No

TLSを有効にして証明書を生成する

printf "MAIN_TLS_ENABLE = true\n" >> /etc/exim4/exim4.conf.localmacros
/usr/share/doc/exim4-base/examples/exim-gencert

リバースDNSをチェック(IP-> smtp.mydomain.com)

https://mxtoolbox.com/ReverseLookup.aspx

IPv6を入手する

ip -6 addr | grep inet6 | awk -F '[ \t]+|/' '{print $3}' | grep -v ^::1 | grep -v ^fe80

/ etc/hosts

[ipv4]  smtp.mydomain.com
[ipv6]  smtp.mydomain.com

「/etc/exim4/exim4.conf.template」のコメントを外します

# plain_server:
# driver = plaintext
# public_name = PLAIN
# server_condition = "${if crypteq{$3}{${extract{1}{:}{${lookup{$2}lsearch{CON$
# server_set_id = $2
# server_prompts = :
# .ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS
# server_advertise_condition = ${if eq{$tls_cipher}{}{}{*}}
# .endif

user/pass-> '/ etc/exim4/passwd'を追加します

/usr/share/doc/exim4-base/examples/exim-adduser

DKIM/SPF

サーバーにDKIMキーを設定し、DNSにDKIM/SPFを設定しましたが、どちらも機能します

4
clarkk

REMOTE_SMTP_HELO_DATA = whatever.you.want/etc/exim4/exim4.conf.localmacrosに設定します。 4.69-10以降、Debianパッケージでサポートされています。 /usr/share/doc/exim4/changelog.Debian.gzから:

  • REMOTE_SMTP_HELO_DATAマクロを直接設定することにより、発信SMTPのhelo/ehloを設定できるようにします。以前は、これはREMOTE_SMTP_HELO_FROM_DNSのヘルパーマクロとして使用されるだけでした。 REMOTE_SMTP_HELO_FROM_DNSは、手動のREMOTE_SMTP_HELO_DATAデータ設定を上書きします。締め切り: #51411

このマクロは、Debian構成テンプレートでhelo_dataSMTPトランスポートオプション を設定するために使用されます。

1
Ferenc Wágner