使用Docker搭建poste,自建郵件服務(wù)器
自建郵件服務(wù)可以不受發(fā)件量限制,批量發(fā)件成本更低,但部署相對(duì)復(fù)雜,而且容易進(jìn)垃圾箱。不過(guò)現(xiàn)在越來(lái)越多的服務(wù)商已經(jīng)開(kāi)發(fā)好了產(chǎn)品,支持一鍵部署等方式,極大降低了部署和使用難度。這次給各位小伙伴安利一款開(kāi)源郵件服務(wù)poste.

![使用Docker搭建poste,自建郵件服務(wù)器的圖2]()
關(guān)于poste
poste是一款開(kāi)源郵件服務(wù)軟件,可以很方便的搭建:SMTP + IMAP + POP3 + 反垃圾郵件 + 防病毒 + Web 管理 + Web 電子郵件,支持以下特性。
SPF、DKIM、DMARC、SRS 的原生實(shí)現(xiàn),帶有簡(jiǎn)單的向?qū)?/p>
用于檢測(cè)木馬、病毒、惡意軟件的防病毒引擎 ( ClamAV )
內(nèi)置垃圾郵件過(guò)濾器( RSPAMD )
HTTPS 上的Webmail 客戶端(Roundcube)
通過(guò)Sieve 腳本進(jìn)行電子郵件重定向、自動(dòng)回復(fù)和其他過(guò)濾(電子郵件所有者管理,每個(gè)操作都可以編寫腳本)
用于限制郵箱空間或電子郵件數(shù)量的配額
系統(tǒng)管理員、域管理員、電子郵件所有者具有不同權(quán)限的Web 管理。
內(nèi)置Microsoft 產(chǎn)品的自動(dòng)發(fā)現(xiàn)功能,Thunderbird...
幫助正確設(shè)置域和郵件服務(wù)器的診斷
SMTP - 端口 25、465 (TLS)、587
POP3 - 端口 110、995 (TLS)
IMAP - 端口 143、993 (TLS)
SSL TLS無(wú)處不在!沒(méi)有個(gè)人數(shù)據(jù)、電子郵件、登錄信息通過(guò)互聯(lián)網(wǎng)未加密。
默認(rèn)情況下,所有密碼都存儲(chǔ)為加鹽SHA512哈希(5000 輪)。攻擊者將很難破解您的密碼。
整個(gè)郵件服務(wù)器容器由 Docker 與其他應(yīng)用程序隔離。
![使用Docker搭建poste,自建郵件服務(wù)器的圖4]()
準(zhǔn)備工作
一臺(tái)VPS,有獨(dú)立IP
支持25端口及郵件發(fā)送
建議內(nèi)存2Gb以上
干凈的IP,沒(méi)有被墻,沒(méi)有被標(biāo)記為垃圾IP
提前安裝好Docker
關(guān)于Docker安裝可參考這篇文章《Linux安裝Docker與Docker常用命令》,如果您使用的CentOS 7系統(tǒng),也可以直接使用xiaoz提供的Docker一鍵安裝腳本。
#CentOS一鍵安裝Dockerwget https://raw.githubusercontent.com/helloxz/shell/master/install_docker.sh && bash install_docker.sh
![使用Docker搭建poste,自建郵件服務(wù)器的圖6]()
Docker部署poste
Docker部署poste,幾乎不會(huì)影響你服務(wù)器上現(xiàn)有的服務(wù),復(fù)制下面的命令執(zhí)行:
docker run -d \-p 880:80 -p 8443:443 -p 25:25 -p 110:110 -p 143:143 -p 465:465 -p 587:587 -p 993:993 -p 995:995 -p 4190:4190 \-e TZ=Asia/Shanghai \-v /data/mail-data:/data \--name "mailserver" \-h "mail.your-domain.com" \--restart=always \-t analogic/poste.io
參數(shù)含義如下:
880/8443是WEB訪問(wèn)端口,為了避免和本地已有WEB服務(wù)(nginx等)沖突,所以這里使用的880/8443作為WEB端口TZ=Asia/Shanghai:設(shè)置容器為上海時(shí)區(qū)/data/mail-data:本地?cái)?shù)據(jù)目錄,根據(jù)實(shí)際情況修改為服務(wù)器目錄mail.xxx.com:改成你自己的域名--restart=always:容器異常時(shí)自動(dòng)拉起
如果部署遇到25端口被占用,可通過(guò)netstat -apn|grep 25查看是否是postfix導(dǎo)致,CentOS 7可卸載postfix:
#卸載postfixyum -y remove postfix
部署后訪問(wèn)https://IP:8443/根據(jù)提示完成初始化設(shè)置。
![使用Docker搭建poste,自建郵件服務(wù)器的圖8]()
DNS設(shè)置
前往DNS服務(wù)商處,按照如下要求設(shè)置域名解析,否則郵件服務(wù)無(wú)法正常使用,其中:
your-domain.com:為你自己的域名1.2.3.4:為你的郵件服務(wù)器IP
| 主機(jī)名 | 記錄類型 | 記錄值 |
|---|---|---|
| mail.your-domain.com | A | 1.2.3.4 |
| smtp.your-domain.com | CNAME | mail.your-domain.com |
| pop.your-domain.com | CNAME | mail.your-domain.com |
| imap.your-domain.com | CNAME | mail.your-domain.com |
| your-domain.com | MX | mail.your-domain.com |
| your-domain.com | txt | v=spf1 mx ~all |
設(shè)置DKIM驗(yàn)證
在poste后臺(tái) - Virtual domains - 點(diǎn)擊對(duì)應(yīng)域名 - DKIM key - 創(chuàng)建key,并按照要求設(shè)置txt記錄解析。

設(shè)置PTR反向解析
PTR記錄,是電子郵件系統(tǒng)中的郵件交換記錄的一種;另一種郵件交換記錄是A記錄(在IPv4協(xié)議中)或AAAA記錄(在IPv6協(xié)議中)。PTR記錄常被用于反向地址解析。——摘自百度百科
域名解析到IP被稱為正向解析,而IP指向到域名,則被稱為反向解析,反向解析需要在主機(jī)服務(wù)商處進(jìn)行操作,具體請(qǐng)咨詢主機(jī)服務(wù)商。
比如UltraVPS可以直接在后臺(tái)面板添加PTR反向解析,將IP指向到您的郵件服務(wù)器,如mail.your-domain.com

添加SPF/DKIM/PTR解析,可提高郵件可信度,從而降低郵件進(jìn)入垃圾箱的幾率,必不可少的關(guān)鍵步驟。
![使用Docker搭建poste,自建郵件服務(wù)器的圖12]()
設(shè)置TLS SSL
假如您的郵件域名為mail.your-domain.com,需要對(duì)這個(gè)域名申請(qǐng)SSL證書,可參考《使用acme.sh申請(qǐng)ZeroSSL泛域名證書,Let’s Encrypt替代品》或者在其它服務(wù)商申請(qǐng)SSL證書。
獲得SSL證書后,打開(kāi)poste后臺(tái) - System settings - TLS Certificate - 選擇證書文件進(jìn)行上傳,見(jiàn)截圖。

SSL提供商會(huì)自動(dòng)將中級(jí)證書合并到了證書文件(比如騰訊云),因此中級(jí)證書那個(gè)選項(xiàng)可以和證書一致,然后點(diǎn)保存,保存后需要重啟容器生效:docker restart mailserver
![使用Docker搭建poste,自建郵件服務(wù)器的圖15]()
登錄與管理
默認(rèn)是登錄webmail,可以在webmail發(fā)信、收信等操作。

如果需要登錄系統(tǒng)管理,可將地址修改為https://mail.your-domain.com:8443/admin/login

![使用Docker搭建poste,自建郵件服務(wù)器的圖19]()
郵件跑分測(cè)試
會(huì)檢測(cè)你郵件存在的問(wèn)題,并給出一定優(yōu)化建議。當(dāng)然這個(gè)工具得分并非絕對(duì)準(zhǔn)確,結(jié)果只供參考。

![使用Docker搭建poste,自建郵件服務(wù)器的圖22]()
個(gè)人建議
在準(zhǔn)備自建郵件服務(wù)之前,有一些注意事項(xiàng)需要知曉,以下是一些個(gè)人經(jīng)驗(yàn)總結(jié),希望有所幫助。
使用可信度較高的域名后綴,如
.com/.net/.org,盡量避免使用各種奇怪的小眾后綴使用英文字母的域名,盡量避免使用純數(shù)字域名
域名注冊(cè)時(shí)間越長(zhǎng)越好,最低注冊(cè)時(shí)間建議大于7天
使用一個(gè)干凈的IP,可通過(guò)查詢
IP支持PTR反向解析,需咨詢主機(jī)商
![使用Docker搭建poste,自建郵件服務(wù)器的圖24]()
最后
poste相比其它自建郵件服務(wù)已經(jīng)算比較簡(jiǎn)單的了,但步驟依然比較多。目前給其它小伙伴搭建的poste,測(cè)試過(guò)一天發(fā)送1w郵件完全沒(méi)有問(wèn)題,但如果長(zhǎng)期大量發(fā)送垃圾郵件,估計(jì)離拉黑也不遠(yuǎn)了,所以建議大家還是悠著點(diǎn)玩兒。
工程師必備
- 項(xiàng)目客服
- 培訓(xùn)客服
- 平臺(tái)客服
TOP




















