如何使用sendmail發送測試郵件

如何使用sendmail發送測試郵件

我已在 /etc/hosts 中設定 FQDN:

127.0.0.1 hostname.domain hostname
127.0.0.1 localhost
  • 但是如果我運行hostname它會返回 FQDN?這裡出了什麼問題嗎?

然後跑: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.hostnamecat /proc/sys/kernel/hostname),通常以特定於發行版的方式設定啟動時間(在基於 systemd 的主機上,您通常使用以下命令來設定係統主機名hostnamectl)且主機名稱可以在運行時使用hostname 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 命令並不是作為使用者介面例程,並且有更好的實用程式可以從命令列發送郵件。經典mail指令mailx為例。

sendmail 是否在系統日誌中記錄錯誤訊息?

輸出Connecting to [127.0.0.1] via relay.表示您已經使用中繼(sendmail 術語中的「智慧型主機」)配置了 sendmail。

可以到達該中繼嗎?

相關內容