在Linux中安裝配置Postfix來搭建郵件發(fā)送服務(wù)

在創(chuàng)建網(wǎng)站應(yīng)用時,在用戶進(jìn)行某些操作時需要發(fā)郵件給用戶是一種必不可少的操作。云服務(wù)雖然是一個不錯的選擇。但如果體量太小,或是受到某些條件限制時,自建服務(wù)也許是一個更好的選擇。下面嘗試在 CentOS 7 中搭建發(fā)送郵件的功能。
安裝 Postfix
postfix是Wietse Venema在IBM的GPL協(xié)議之下開發(fā)的MTA(郵件傳輸)軟件。postfix是Wietse Venema想要為使用最廣泛的sendmail提供替代品的一個嘗試。在Internet世界中,大部分的電子郵件都是通過sendmail來投遞的,大約有100萬用戶使用sendmail,每天投遞上億封郵件。這真是一個讓人吃驚的數(shù)字。Postfix試圖更快、更容易管理、更安全,同時還與sendmail保持足夠的兼容性。
(為什么用postfix:
1. postfix是免費(fèi)的:
postfix想要作用的范圍是廣大的Internet用戶,試圖影響大多數(shù)的Internet上的電子郵件系統(tǒng),因此它是免費(fèi)的。
2. 更快:
postfix在性能上大約比sendmail快三倍。一部運(yùn)行postfix的臺式PC每天可以收發(fā)上百萬封郵件。
3. 兼容性好:
postfix是sendmail兼容的,從而使sendmail用戶可以很方便地遷移到postfix。Postfix支持/var[/spool]/mail、/etc/aliases、 NIS、和 ~/.forward 文件。
4. 更健壯:
postfix被設(shè)計(jì)成在重負(fù)荷之下仍然可以正常工作。當(dāng)系統(tǒng)運(yùn)行超出了可用的內(nèi)存或磁盤空間時,postfix會自動減少運(yùn)行進(jìn)程的數(shù)目。當(dāng)處理的郵件數(shù)目增長時,postfix運(yùn)行的進(jìn)程不會跟著增加。
5. 更靈活:
postfix是由超過一打的小程序組成的,每個程序完成特定的功能。你可以通過配置文件設(shè)置每個程序的運(yùn)行參數(shù)。
6. 安全性
postfix具有多層防御結(jié)構(gòu),可以有效地抵御惡意入侵者。如大多數(shù)的postfix程序可以運(yùn)行在較低的權(quán)限之下,不可以通過網(wǎng)絡(luò)訪問安全性相關(guān)的本地投遞程序等等。 )
Postfix 現(xiàn)在幾乎已經(jīng)是 MTA (Mail Transfer Agent) 的標(biāo)配了。但在它之前 Sendmail 是標(biāo)配。所以在一些老舊的系統(tǒng)版本中,安裝 Postfix 時需要先刪除 Sendmail。如果系統(tǒng)已經(jīng)安裝了 Postfix,可以略過此步。
使用下面的命令查看系統(tǒng)使用的 MTA 情況:
alternatives --display mta
刪除 Sendmail
sudo yum remove sendmail
安裝 Postfix
sudo yum install postfix
設(shè)置 Postfix 為 MTA
sudo alternatives --set mta /usr/sbin/sendmail.postfix
配置 Postfix
編輯 /etc/postfix/main.cf 文件中如下配置:
myhostname = mail.dyniao.com # 主機(jī)名稱
mydomain = dyniao.com # 郵件服務(wù)器的主域名
myorigin = $mydomain # 發(fā)送郵件中顯示的域名
inet_protocols = ipv4 # 支持的網(wǎng)絡(luò)協(xié)議
以上配置只是我在測試時能運(yùn)行的最小配置,請勿使用于正式場合或生產(chǎn)環(huán)境。
啟動 Postfix:
sudo service postfix start
讓 Postfix 支持開機(jī)啟動:
sudo systemctl enable postfix.service
域名配置
完成上面的步驟,已經(jīng)可以往任意郵箱發(fā)送郵件了。但通常情況下只能在對方的垃圾箱中找到。要避免這種情況,還需要對主機(jī)進(jìn)行域名解析的配置,使對方接收郵件的服務(wù)器信任收到的郵件。步驟如下:
添加一個 A 記錄,設(shè)置郵箱用的域名,如: mail.zzxworld.com,指向主機(jī) ip。
添加一個 MX 記錄,指向第一步中添加的郵箱域名。
添加一個 TXT 記錄,記錄值為:
v=spf1 a mx ~all
上面的記錄值表示使用 SPF (Sender Policy Framework) 來防止別人偽造郵件。
等域名解析生效后,就可以正常的從主機(jī)發(fā)送郵件了。
相關(guān)文章
Fedora Linux 42 穩(wěn)定版發(fā)布: 帶來大量新功能和軟件更新
Fedora 42昨日發(fā)布,這是 Red Hat 贊助開發(fā)的杰出前沿 Linux 發(fā)行版的最新版,包含大量新功能和軟件更新,使其成為 2025 年上半年發(fā)布的一款出色的 Linux 操作系統(tǒng)之一,內(nèi)2025-04-16如何在Linux查看硬盤信息? 查看Linux硬盤大小類型和硬件信息的5種方法
使用Linux系統(tǒng)的過程中,查看和了解硬盤信息是非常重要的工作,尤其是對于系統(tǒng)管理員而言,那么在Linux系統(tǒng)中如何查看硬盤信息?以下是具體內(nèi)容介紹2025-03-12如何在 Linux 中查看 CPU 詳細(xì)信息? 3招輕松查看CPU型號、核心數(shù)和溫度
在日常運(yùn)維工作中,獲取 CPU 信息是系統(tǒng)運(yùn)維管理員常見的工作內(nèi)容,無論是為了性能調(diào)優(yōu)、硬件升級還是僅僅滿足好奇心2025-03-11什么是 Arch Linux? 獨(dú)樹一幟的Arch Linux發(fā)行版分析
Arch Linux是為簡化,優(yōu)化,現(xiàn)代化,實(shí)用主義,用戶中心和多功能性而創(chuàng)建Linux發(fā)行版,究竟是什么讓 Arch 與眾不同?下面我們就來簡要解讀2025-02-19如何在Linux環(huán)境下制作 Win11裝機(jī)U盤?
一直用的linux辦公,想要將筆記本電腦從 Linux 系統(tǒng)切換回 Windows 11,我們可以制作一個win11裝機(jī)u盤,詳細(xì)如下2025-02-17Rsnapshot怎么用? 基于Rsync的強(qiáng)大Linux備份工具使用指南
Rsnapshot 不僅可以備份本地文件,還能通過 SSH 備份遠(yuǎn)程文件,接下來詳細(xì)介紹如何安裝、配置和使用 Rsnapshot,包括創(chuàng)建每小時、每天、每周和每月的本地備份,以及如何進(jìn)2025-02-06Linux Kernel 6.13發(fā)布:附更新內(nèi)容及新特性解讀
Linux 內(nèi)核 6.13 正式發(fā)布,新版本引入了惰性搶占支持,簡化內(nèi)核搶占邏輯,通過減少與調(diào)度器相關(guān)的調(diào)用次數(shù),讓內(nèi)核在運(yùn)行時表現(xiàn)更優(yōu),從而提高效率2025-01-23五大特性引領(lǐng)創(chuàng)新! 深度操作系統(tǒng) deepin 25 Preview預(yù)覽版發(fā)布
今日,深度操作系統(tǒng)正式推出deepin 25 Preview版本,該版本集成了五大核心特性:磐石系統(tǒng)、全新DDE、Treeland窗口合成器、AI For OS以及Distrobox子系統(tǒng)2025-01-18Linux Mint Xia 22.1重磅發(fā)布: 重要更新一覽
Beta 版 Linux Mint“Xia” 22.1 發(fā)布,新版本基于 Ubuntu 24.04,內(nèi)核版本為 Linux 6.8,這次更新帶來了諸多優(yōu)化和改進(jìn),進(jìn)一步鞏固了 Mint 在 Linux 桌面操作系統(tǒng)領(lǐng)域的2025-01-16LinuxMint怎么安裝? Linux Mint22下載安裝圖文教程
Linux Mint22發(fā)布以后,有很多新功能,很多朋友想要下載并安裝,該怎么操作呢?下面我們就來看看詳細(xì)安裝指南2025-01-16