sendmail でテストメールを送信する方法

sendmail でテストメールを送信する方法

/etc/hosts に FQDN を設定しました:

127.0.0.1 hostname.domain hostname
127.0.0.1 localhost
  • しかし、実行するとhostnameFQDN が返されます。何か問題がありますか?

その後実行:sendmailconfig

これをテストに使用しました が、正常に送信できません...次のようにハングします:echo "Subject: hello" | sendmail -v [email protected] < mail.txt

root@debianxx:~# echo "Subject: hello" | sendmail -v [email protected] < email.txt 
[email protected]... Connecting to [127.0.0.1] via relay...
220 debianxx.online ESMTP Sendmail 8.15.2/8.15.2/Debian-22; Sat, 19 Nov 2022 07:53:11 GMT; (No UCE/UBE) logging access from: localhost(OK)-localhost [127.0.0.1]
>>> EHLO debianxx.online
250-debianxx.online Hello localhost [127.0.0.1], pleased to meet you
250-ENHANCEDSTATUSCODES
250-PIPELINING
250-EXPN
250-VERB
250-8BITMIME
250-SIZE
250-DSN
250-ETRN
250-AUTH DIGEST-MD5 CRAM-MD5
250-DELIVERBY
250 HELP
>>> VERB
250 2.0.0 Verbose mode
>>> MAIL From:<[email protected]> SIZE=47 [email protected]
250 2.1.0 <[email protected]>... Sender ok
>>> RCPT To:<[email protected]>
>>> DATA
250 2.1.5 <[email protected]>... Recipient ok
354 Enter mail, end with "." on a line by itself
>>> .

何を入力しても「.」プロンプトで停止します。

  • ps: 開いているポートはすでに で確認済みですnc -l 25

sendmail ログを編集します:

Nov 19 12:21:14 simplysocial sendmail[7718]: alias database /etc/mail/aliases rebuilt by root
Nov 19 12:21:14 simplysocial sendmail[7718]: /etc/mail/aliases: 0 aliases, longest 0 bytes, 0 bytes total
Nov 19 12:21:14 simplysocial sm-mta[7784]: starting daemon (8.15.2): SMTP+queueing@00:10:00
Nov 19 12:21:29 simplysocial sendmail[8460]: alias database /etc/mail/aliases rebuilt by root
Nov 19 12:21:29 simplysocial sendmail[8460]: /etc/mail/aliases: 0 aliases, longest 0 bytes, 0 bytes total
Nov 19 12:21:31 simplysocial sm-mta[7784]: restarting /usr/sbin/sendmail-mta due to signal
Nov 19 12:21:31 simplysocial sm-mta[8510]: starting daemon (8.15.2): SMTP+queueing@00:10:00
Nov 19 12:21:52 simplysocial sendmail[8544]: 2AJCLq0k008544: from=root, size=47, class=0, nrcpts=1, msgid=<[email protected]>, relay=root@localhost
Nov 19 12:21:52 simplysocial sm-mta[8545]: 2AJCLqu9008545: from=<[email protected]>, size=335, class=0, nrcpts=1, msgid=<[email protected]>, proto=ESMTP, daemon=MTA-v4, relay=localhost [127.0.0.1]
Nov 19 12:21:52 simplysocial sendmail[8544]: 2AJCLq0k008544: [email protected], ctladdr=root (0/0), delay=00:00:00, xdelay=00:00:00, mailer=relay, pri=30047, relay=[127.0.0.1] [127.0.0.1], dsn=2.0.0, stat=Sent (2AJCLqu9008545 Message accepted for delivery)

答え1

FQDN を設定しました/etc/hostsが、ホスト名を実行すると FQDN が返されます。何か問題がありますか?

いいえ。

  1. システムのホスト名の概念は、 に設定されているかどうかとは無関係です/etc/hosts
    システムのホスト名はカーネルの調整可能パラメータ(たとえばsysctl kernel.hostname または を参照cat /proc/sys/kernel/hostname)であり、通常はディストリビューション固有の方法で起動時に設定されます(systemdベースのホストでは、通常、次のようにシステムホスト名を構成します)。hostnamectlhostname some.name) であり、ホスト名はコマンドまたはsysctl kernel.hostname=some.namehostnamectl set-hostname some.name などの類似のコマンドを使用して実行時に変更できます
    。方法に応じて、変更は永続的になるか、次回の再起動時にホスト名が元に戻ります。

  2. 慣習はあるものの、今日ではホスト名がsome.name短い単一ラベルhostnameか FQDN の どちらかである必要があるという実際の(技術的な)要件は一般的にありませんhostname.example.com.。どちらも許可されています。例を参照してください。ホスト名の設定: FQDN または短縮名?

  3. FQDN をホスト名として設定すると、hostnameコマンドとhostname --fqdnコマンドの両方が FQDN を返します。


注目すべきは、sendmail コマンドはユーザー インターフェイス ルーチンとして意図されたものではなく、コマンド ラインからメールを送信するためのより優れたユーティリティが存在します。たとえば、 classicmailコマンドやなどです。mailx

sendmail はシステム ログにエラー メッセージを記録していますか?

出力はConnecting to [127.0.0.1] via relay.、sendmail をリレー (sendmail の専門用語では「スマート ホスト」) で構成したことを示しています。

そのリレーに到達できますか?

関連情報