R·ex / Zeng


音遊狗、安全狗、攻城獅、業餘設計師、段子手、苦學日語的少年。

搭建付費的 MXroute 並瞭解郵件相關的域名記錄

本文並非為匿名人士所編寫,第三方服務一般都會有審查機制,因此無法保證敏感資料的安全。

背景

之前我的域名郵箱 [email protected] 一直用的是國內的某個服務,最近覺得國內服務的限制比較多,於是打算將其遷移到國外服務。必要的要求有:

  1. 不暴露自己伺服器的真實 IP
  2. 價格不要特別貴
  3. 不會被常見郵箱識別為垃圾郵件
  4. 介面儘量美觀,需要支援 IMAP(或 POP3) 和 SMTP
  5. 其它條件類似時,SaaS >= PaaS >= IaaS

問了幾個人,自己也搜了一圈,對比下來發現 MXroute 算是比較優秀的了,於是就去註冊了個賬號開始折騰。

MXroute 其實是一個付費的 cPanel 的服務(似乎不能退款,如果介意的話請慎買),伺服器也是與別人共享的,但我只需要用這個郵箱來接收別人的郵件,然後直接轉發到其它郵箱做備份,cPanel 對於我來說已經夠用了。此外,MXroute 好像還有一小時傳送的次數限制(似乎是幾百封),因此不適合用作自動發信的平臺。

搭建 MXroute

購買服務

在這個 促銷頁面 上,我們可以看到黑五的促銷活動(有時效性,不保證你現在看到的內容是否還是這些),我選擇的是 BF2018 5GB,價格是 $5/Year,然後按照提示一步步操作,小手一抖點一下付款,最後點進已購買的產品,將其啟用就可以了。

促銷頁面

填寫自己的域名

已購買的產品

配置郵箱

啟用之後進入產品詳情,是這樣的一個頁面:

產品詳情

先別管別的,先透過最下面的“Quick Create Email Account”給自己新增一個真實的郵箱賬戶。例如我要給我家小寶貝設立一個賬戶的話,第一個空就填 carina,這樣她就可以用 [email protected] 和設定的密碼來登入啦!

左邊的“登入 Webmail”可以登入進郵箱,以後也可以透過 https://mail.mxlogin.com/ 直接進入郵箱的登入介面,當然你也可以進入“Quick Shortcuts”→“Email Accounts”→“Connect Devices”→“Setup Mail Client”頁面,裡面有客戶端的相關配置,例如 IMAP 和 SMTP 資訊。

要注意,預設情況下郵箱只有 256 MB 的空間,如果要擴容,請點選“Quick Shortcuts”→“Email Accounts”→“Disk and Quota”,將配額調整為“無限制”。當然,這裡只是說在我們的服務中,郵箱是沒有限制容量的;既然我們只買了 5 GB 的服務,那麼實際的最大容量也只有 5 GB 啦。

這個郵箱的功能還是很全的,收發郵件、轉發和過濾規則都沒問題,介面也比較好看,甚至還可以從其它郵箱匯入資料。不過我用它匯入的時候發現 5 GB 不太夠用,因為我以前有過很多帶附件的郵件(好像還有人給我發影片?),因此提示匯入失敗。

郵箱介面

配置域名記錄

雖然這郵箱和 cPanel 還有其它好玩的,但基礎的東西已經做完了,現在需要配置域名記錄了。我的域名解析用的是 CloudFlare(可以參考我之前的文章:《CloudFlare,DNS,以及 Nginx 的多域名配置》,文章的背景有點過期,因為自從 OpenShift 開始收費之後我就遷移到了 Vultr 上面),於是就登上去準備修改。

之前的文章中提到過域名記錄有好多種,今天重點關注的是 MX 和 TXT。

MX 記錄

MX 是用於電子郵件系統發郵件時,根據收信人的地址字尾來定位郵件伺服器的。SMTP 會根據 MX 記錄的值來決定郵件的路由過程。

看到剛才產品詳情頁上面的“DNS Information”,可以發現這麼兩行:

Primary MX: friday.mxlogin.com
Secondary MX: friday-relay.mxlogin.com

這是兩個不同的郵件伺服器,第一個優先順序要高一些。因此在 CloudFlare 中,可以這樣設定:

MX 的配置

你也可以為子域名設定記錄,例如可以設定一個 [email protected]

TXT 記錄(SPF 與 DKIM)

還是剛才那個框,MX 下面就有這麼一行:

SPF Record: "v=spf1 include:mxlogin.com -all"

SPF 的作用跟 MX 相反,它向收信者表明:只有從這些 IP 或域名發過來的郵件是合法的。可以看出,它是用來反垃圾郵件的,發件人將無法偽造域名。在 CloudFlare 中,只需要為域名新增一條 v=spf1 include:mxlogin.com -all 的 TXT 記錄即可。

DKIM 則是另一種反垃圾郵件的思路:配置了 DKIM 的郵件系統,會在發件時給郵件增加一個數字簽名,當對方的郵箱收到電子郵件後,會將簽名與合法的網際網路地址資料庫中的記錄進行比較。只有加密資訊與資料庫中記錄匹配的電子郵件,才能夠進入收信者的收件箱。此外它還有數字簽名的另一個用途:可以檢查郵件的完整性,避免駭客等未授權者的修改。設定 MXroute 的 DKIM 記錄比較繁瑣,首先需要先進入 cPanel,找到“DKIM (Advanced)”,點選啟用,然後你會發現介面上有這麼一行(三個點表示省略了若干字元):

default._domainkey    14400    IN    TXT    "v=DKIM1; k=rsa; p=MII...Irm" qSc...QAB;

意思是讓你為 default._domainkey.rexskz.info(當然,你可能是給子域名例如 default._domainkey.bot.rexskz.info)設定一條 TXT 記錄,內容是最後那一列去掉了一開始的 "、中間的 " ,並將最後的 \ 去掉,大概是 v=DKIM1; k=rsa; p=MII...IrmqSc...QAB; 這樣。全部配置完的效果如下圖:

TXT 的配置

檢驗配置是否成功

發一封郵件去檢驗總覺得不太靠譜,畢竟有的郵箱可能還不支援 SPF 和 DKIM,因此才有了專門的網站:DKIM, SPF, SpamAssassin Email Validator。點進去之後,你會看到介面中有個隨機生成的郵箱(例如 20KdwCTg1v2KY[email protected]),你需要用你剛配置好的郵箱給它發一封任意內容的郵件,然後點選“View Results”,如果沒有結果可能是因為郵件還在傳送中,直接重新整理(瀏覽器會問你是否重複提交表單,點選“是”)直到有結果就好了。正常的結果應該是這樣的(只需要注意紅框裡的字):

檢查透過

大功告成!


參考資料

Disqus 載入中……如未能載入,請將 disqus.com 和 disquscdn.com 加入白名單。

這是我們共同度過的

第 3887 天