独自のDNSサーバーを持つ内部ネットワークがあります。インターネットにアクセス可能な一部のサーバーを除いて、このネットワークではインターネットアドレスは解決されません。
インターネットにアクセスできるサーバーの1つは、他のサーバーの中継ホストとして機能し、管理者に電子メール(レポート、ログ監視など)を送信できます。この中継サーバーにはインターネットで定義されている中継サーバーもありますが、関係はありません。 1つの奇妙な例外を除いて、これはかなりうまくいきます。
リレーホストを使用して、サーバーの1つにOracle Linux 8をインストールしました。通常は追加する必要があります。
define(`SMART_HOST', `relay_hostname')dnl
sendmail.mcに送信すると動作しません。リレーは使用できません。常に中継されますroot@localhost
。少なくともそのように書かれています/var/log/maillog
。私は[relay_hostname]
、relay:[relay_hostname]
forSMART_HOST
および他のいくつかの構成設定を試しました。
私がテストしたとき
mail -s test [email protected]
電子メールログレポートは次のとおりです。
Aug 31 09:44:14 hostname sendmail[694964]: 17V9iE4L694964: [email protected], size=15, class=0, nrcpts=1, msgid=<[email protected]>, relay=root@localhost
Aug 31 09:44:14 hostname sendmail[694964]: 17V9iE4L694964: [email protected], delay=00:00:00, mailer=relay, pri=30015, dsn=4.4.3, stat=queued
この場合、メッセージはキューに入れられません。
私も以下を使ってメールを送ろうとしました。
(echo subject: test; echo) | /usr/lib/sendmail -Am -v [email protected] [email protected]
このコマンドで私は答えを得ました
internet-domain.com: Name server timeout
[email protected]... Transient parse error -- message queued for future delivery
[email protected]... queued
この場合、ログは実際には同じです。
Aug 31 11:42:43 hostname sendmail[698071]: 17VBghos698071: [email protected], size=15, class=0, nrcpts=1, msgid=<[email protected]>, relay=root@localhost
Aug 31 11:42:43 hostname sendmail[698071]: 17VBghos698071: [email protected], delay=00:00:00, mailer=relay, pri=30015, dsn=4.4.3, stat=queued
メッセージは sendmail コマンドを介してキューに追加されますが、永遠に残ります。
Internet-domain.com を確認できません。正解です。問題は、internet-domain.comを確認できず、この場合、sendmailがSMART_HOSTを使用しないことです。受信者の未確認ドメインに対してsendmailに常にSMART_HOSTを使用させるにはどうすればよいですか?無効な宛先アドレスを持つメッセージを拒否することはリピータの役割である必要があります。
CentOS 8 に同じ sendmail が設定されており、リレー経由で電子メールを送信できます。違いは、CentOS 8がインターネットドメインを確認できることです。
直す。インターネットドメインにメールを送信すると、sendmailはlocalhostをリレーとして使用するため、上記のようにどこにもメールを移動できません。
内部DNSを介して内部で確認できるドメインに送信すると、SMART_HOSTで定義された中継サーバーに送信されます。中継サーバーがこれを中継します。ただし、これは有効なインターネットドメインではなく、電子メールアカウントは存在しません。その結果、アドレスが誤って指定されたメッセージを配信できず、配信できないメッセージが添付されたレポートが届きました。
別のアップデート。追加したら
FEATURE(nocanonify)dnl
さんに/etc/mail/sendmail.mc
いくつかのメールが届きました。有効なインターネットメールで送信してもまだ通過できません。ただし、mailコマンドでテストしているのと同じアドレスをroot
指すエイリアスがあります。/etc/aliases
にメッセージを送信すると、root
エイリアスがメッセージをリダイレクトするため、メッセージが渡されます。この場合、インターネットEメールはsendmailを難読化せず、スマートホストがリレーに使用されます。このサーバーのルート管理メールのみが必要なため、これで十分ですが、問題はまだ完全に解決されていません。
/etc/エイリアス:
# Person who should get root's mail
root: [email protected]
ベストアンサー1
しばらく前にCentOS 5で使用したことを覚えているソリューションを見つけました。しかし、最後に使用した以来、状況が大きく変わったと確信しているので、私にとってはそれほど重要ではないようです。私はそれが異なって行動したと確信していますが、解決策は同じです。
回避策は、次の行を追加(コメント解除)することです/etc/mail/submit.mc
。
define(`confDIRECT_SUBMISSION_MODIFIERS',`C')dnl
質問に記載されている次の/etc/mail/sendmail.mc
行も試みの1つとして含める必要があると思います。
FEATURE(nocanonify)dnl