5分鐘教你搭建郵件伺服器的實用指南

努力的小雨發表於2024-04-29

今天我寫了一篇實用的文章,重點是教你如何免費搭建一個郵件伺服器,這個伺服器不僅可以用於傳送郵件,還可以供我的待辦機器人使用。一開始我試圖找一些免費的 API 介面來實現這個功能,但遺憾的是,並沒有找到合適的。對於程式設計師來說,能自己動手實現絕對是最好的選擇,幸運的是,我有一臺空閒的伺服器可以利用。如果你沒有自己的伺服器,可以考慮購買一些付費介面來實現這個功能。不過,如果你已經有伺服器或者想要搭建一個,不妨看看我的這篇文章,我保證你在5分鐘內就能成功搭建好郵件伺服器。

郵局搭建

在進行這個專案之前,確保你具備以下必備條件:一臺執行 Linux 作業系統的伺服器(不需要很高配置,只要能跑起來就可以)、安裝了寶塔皮膚、對 Linux 相關知識有一定了解、安裝了 Redis 資料庫、有一個域名以及相應的 SSL 證書。這些條件是確保專案順利進行所必需的。

伺服器環境

在這個專案中,我使用的是之前在騰訊雲購買的輕量應用伺服器,它自帶了寶塔皮膚。這臺伺服器也是我之前在搶購活動中薅羊毛時買的,是最便宜的入門級伺服器。

薅羊毛入口:https://curl.qcloud.com/lpw3SQC4

Redis安裝

在安裝寶塔郵局外掛之前,首先需要確保已經安裝了 Redis 服務,並且設定了相應的密碼。這個步驟是必需的,

image

安裝郵局

接下來,您可以開啟寶塔皮膚並進入寶塔應用商店,然後直接搜尋並安裝所需的郵局外掛。

image

安裝完成後,當您進入設定介面時,系統將提示您執行環境修復,該步驟涉及依賴環境的安裝。

image

然而,Rspamd的修復一直無法成功完成,因此需要您自行執行以下命令進行修復操作:

curl https://rspamd.com/rpm-stable/centos-7/rspamd.repo > /etc/yum.repos.d/rspamd.repo # For Centos-7
rpm --import https://rspamd.com/rpm-stable/gpg.key
yum update
yum install rspamd

順利安裝Rspamd。

域名及其證書

這項服務在各大雲廠商平臺均有提供,我選擇了直接在騰訊雲進行域名解析,並申請了SSL證書。

image

在成功申請證書後,接下來需要將證書下載到您的電腦上。稍後我們會用到這些證書。

image

域名解析

在進行進一步配置之前,請確保您已經正確設定了域名解析,將您的郵箱域名設定為A記錄,並建立一個二級域名,例如 "mail" 或其他您選擇的二級域名。

image

完成域名解析後,您只需將已解析的域名新增到郵局域名內即可。然後,按照教程逐步解析 MX、SPF、DKIM 和 DMARC 記錄。接著,轉到 SSL 部分,將您下載的證書複製貼上到相應位置即可。請耐心等待域名解析生效的時間。

image

image

新增郵箱使用者

在新增郵局使用者時,請確保密碼符合要求,即密碼的第一位必須是大寫字母,後跟小寫字母和數字的組合。另外,請注意郵箱地址不能包含大寫字母。此外,您可能需要查閱相關的 HTTP API 文件,以備後續使用。建議您提前下載這些文件。

image

到這裡基本上就配置完了。

外掛建立

接下來,我們將在外掛商店中,開始建立我們自己的外掛。在此過程中,首先要確立外掛的名稱和用途,確保清晰地描述外掛的功能和目的。這一步至關重要,因為外掛的名稱和用途將直接影響使用者對其的理解和使用方式。

image

IDE程式碼託管

當我們使用小雨郵局時,左側的工具列表讓我們能夠輕鬆地在郵局中新增多個外掛,每個外掛都可以獨立釋出。我們之前的做法是從下載好的HTTP API文件中複製程式碼到郵局中,這一過程非常簡單。最後,我們的Python程式碼可能需要使用request包,所以我們只需在左側的依賴包列表中下載所需的包即可。而右側的測試程式碼填寫部分也十分直觀易懂。

image

後設資料引數

在這一步,我們需要確保將所有可變引數都事先儲存到後設資料中。如果你需要外掛的輸出引數,那麼你也需要相應地進行維護。如果沒有必要使用這些引數,可以選擇不維護,但是請注意,在工作流或其他地方可能無法引用到外掛的結果。

image

看下效果

image

務必記住,無論你要傳送的內容是什麼,都需要進行內容擴充套件。不要簡單地寫一個簡短的短語,例如“test”,因為這樣的內容很可能會被其他郵箱系統歸類為垃圾郵件。

image

總結

透過親手動手實現,你不僅更深入地瞭解了郵件伺服器的工作原理,也鍛鍊了自己解決問題的能力。你還可以根據自己的需求對郵件外掛進行定製,使其更好地適應你的需求。

一旦完成外掛的搭建,它將不僅僅用於當前專案,還將被整合到我的小雨待辦機器人中,以進一步提升其功能和效用。


我是努力的小雨,一名 Java 服務端碼農,潛心研究著 AI 技術的奧秘。我熱愛技術交流與分享,對開源社群充滿熱情。身兼騰訊雲內容共創官、阿里雲專家博主、華為云云享專家等多重身份。

🚀 目前,我的探索重點在於 AI Agent 智慧體應用,我對其充滿好奇,並不斷探索著其潛力與可能性。如果你也對此領域充滿熱情,歡迎與我交流分享,讓我們共同探索未知的領域!

💡 我將不吝分享我在技術道路上的個人探索與經驗,希望能為你的學習與成長帶來一些啟發與幫助。

🌟 歡迎關注努力的小雨!🌟

相關文章