在 Linux 終端傳送電子郵件


您可以使用名為“mail”的命令列工具在 Linux 終端傳送電子郵件。此工具通常預安裝在大多數 Linux 發行版中。要傳送電子郵件,您可以使用以下語法:

echo "message body" | mail -s "subject" recipient@email.com

您也可以使用 -a 選項並指定要附加檔案的路徑來包含附件。

echo "message body" | mail -s "subject" -a /path/to/attachment recipient@email.com

您也可以使用其他命令列郵件客戶端,例如 mutt、mailx 等。

電子郵件系統的架構

電子郵件系統由多個不同的元件組成,這些元件協同工作以傳送和接收郵件。電子郵件系統的主要元件包括:

郵件使用者代理 (MUA) − 這是使用者用來撰寫、傳送和接收電子郵件的軟體。示例包括 Microsoft Outlook、Apple Mail 和 Thunderbird。

郵件傳輸代理 (MTA) − MTA 負責將電子郵件從一臺伺服器傳輸到另一臺伺服器。MTA 的示例包括 Postfix、Exim 和 Sendmail。

郵件投遞代理 (MDA) − MDA 從 MTA 接收郵件,並將其投遞到本地伺服器上的相應郵箱。

郵箱− 這是郵件在伺服器上儲存的位置。郵箱有多種型別,包括 Maildir、mbox 和 IMAP。

簡單郵件傳輸協議 (SMTP) − 這是用於在伺服器之間傳送電子郵件的協議。

郵局協議 (POP) 和網際網路郵件訪問協議 (IMAP) − 這些是用於從伺服器檢索電子郵件的協議。

DNS − 域名系統用於將域名解析為 IP 地址,這對於路由電子郵件是必要的。

身份驗證和安全性 − 電子郵件系統還包括幾種身份驗證和安全方法,以確保只有授權使用者才能傳送和接收郵件,並且郵件在傳輸過程中受到保護,免受未經授權的訪問或修改。

這是電子郵件系統的基本架構,但如果添加了電子郵件加密和簽名,或者如果電子郵件客戶端和伺服器位於不同的位置和網路中,則複雜性可能會增加。

msmtp

msmtp 是一個用於傳送電子郵件的命令列郵件傳輸代理 (MTA)。它允許使用者透過命令列透過 SMTP(簡單郵件傳輸協議)伺服器傳送電子郵件,而不是使用傳統的電子郵件客戶端,如 Microsoft Outlook 或 Apple Mail。

msmtp 設計輕巧易用,可以用作 Linux 和 Unix 系統上內建“sendmail”命令的替代品。它通常與其他命令列工具(如 Mutt 和 OfflineIMAP)結合使用,以實現簡單高效的電子郵件工作流程。

msmtp 的主要功能之一是它能夠處理多個 SMTP 帳戶並透過配置檔案對其進行配置。這允許使用者在傳送電子郵件時輕鬆地在不同的帳戶之間切換。

msmtp 還支援各種安全功能,例如 SSL/TLS 加密、SMTP-AUTH 和 STARTTLS。它還允許您為連線到的每個 SMTP 伺服器指定不同的證書。

要使用 msmtp,您需要使用必要的 SMTP 伺服器和帳戶資訊對其進行配置,然後使用 msmtp 命令傳送電子郵件。

echo "message body" | msmtp -a default -t recipient@example.com

請注意,msmtp 不會接收電子郵件,它僅透過 SMTP 伺服器傳送電子郵件。Satish Kumar

mutt

Mutt 是一個基於命令列的 Unix 類系統電子郵件客戶端。它設計小巧易用,可以用作 Microsoft Outlook 或 Apple Mail 等其他電子郵件客戶端的替代品。

Mutt 支援各種功能,例如閱讀和傳送電子郵件、處理多個郵箱和支援各種郵箱格式。它還支援各種用於傳送和檢索電子郵件的協議,包括 SMTP、IMAP 和 POP3。

Mutt 的主要優點之一是其強大的鍵盤快捷鍵和命令語言,允許使用者快速瀏覽和管理他們的電子郵件。它還透過其配置檔案支援各種自定義選項,允許使用者根據自己的特定需求定製程式。

Mutt 還支援各種安全功能,例如 SSL/TLS 加密、PGP/GPG 加密和 S/MIME。

要使用 Mutt,您需要使用必要的帳戶資訊對其進行配置,然後使用 mutt 命令在終端中開啟電子郵件客戶端。

mutt

您也可以直接從命令列撰寫和傳送電子郵件。

mutt -s "subject" recipient@example.com < message.txt

Mutt 還可以與其他命令列工具結合使用,例如用於傳送電子郵件的 msmtp 和用於從遠端伺服器檢索電子郵件的 OfflineIMAP。

結論

總之,Linux 系統上有多種命令列工具可用於傳送和管理電子郵件,例如 mail、msmtp 和 mutt。這些工具各有其獨特的特性和功能,可根據使用者的具體需求在不同的情況下使用。

mail 命令是一個簡單的工具,可用於從命令列傳送電子郵件。msmtp 是一個輕量級的郵件傳輸代理,可用於透過 SMTP 伺服器傳送電子郵件,它通常與其他命令列工具(如 Mutt)結合使用。Mutt 是一個基於命令列的電子郵件客戶端,提供強大的導航、鍵盤快捷鍵和命令語言,並支援各種用於傳送和檢索電子郵件的協議。

所有這些工具都可以配置為支援各種安全功能,例如 SSL/TLS 加密、PGP/GPG 加密和 S/MIME。最終,選擇使用哪個工具取決於使用者的具體需求和偏好。

更新於:2023年1月25日

瀏覽量:1K+

啟動您的 職業生涯

完成課程獲得認證

開始學習
廣告