使用 Postal 的免費 SMTP 服務器設置(分步指南)
已發表: 2020-04-15在本分步指南中,我將向您展示如何使用Postal (開源 SMTP 軟件)設置免費 SMTP 服務器,並將其連接到您的電子郵件營銷應用程序以發送無限電子郵件* 。
此外,如果您覺得有什麼不清楚的地方,您可以在下面找到一個視頻顯示設置。
構建 SMTP 服務器有多種方法,在本指南中,我將使用名為“ Postal ”的免費開源軟件構建 SMTP 服務器。
Postal 是一個功能齊全的開源郵件傳遞平台,用於收發電子郵件,並為您提供為您的業務構建完整郵件系統所需的所有工具和功能。
什麼是 SMTP 服務器?
我不喜歡像維基百科這樣的機器人定義,我喜歡讓事情變得簡單。 所以…
簡單地說, SMTP 就是允許您通過 Internet 發送電子郵件的東西。
SMTP 代表“簡單郵件傳輸協議” 。 這是您不必擔心的網絡概念。
只要知道SMTP是負責通過 Internet 傳遞電子郵件的技術事物。
讓我們把事情聯繫起來,這與電子郵件營銷有什麼關係?
我認為這很清楚,但以防萬一,正如我在我的技術電子郵件營銷指南中解釋的那樣,任何電子郵件營銷系統都由兩部分組成:
- 發件人: (SMTP 服務)這是技術部分。 它允許您通過 Internet 發送電子郵件。
- 管理應用程序,您可以在其中配置和管理您的電子郵件列表、營銷活動、監控和分析結果、管理您的發送服務器等等。
因此,我們將兩者連接在一起以獲得電子郵件營銷系統。
所以現在我認為這非常清楚,我們將學習如何構建任何電子郵件營銷系統的第一部分,即SMTP 服務器。
需要更多細節?
或許你就是像我一樣喜歡深入話題、深入了解一切的人,如果你是那個人,可以觀看以下 3 分鐘的視頻,了解更多關於 SMTP 服務器及其工作原理的信息:
發送無限制的電子郵件是什麼意思?
當我們說無限制的電子郵件時,這意味著我們可以從我們的服務器發送無限制的電子郵件,沒有公司或每月購買計劃的限制。
這是您自己的服務器,您可以發送盡可能多的服務器可以處理的資源。 因此,當您擁有更多( CPU 和 RAM )時,您可以發送更多電子郵件等等。
設置 SMTP 服務器,讓我們開始吧!
好的,讓我們開始真正的工作吧! 但在此之前,您需要知道需要什麼。
設置 SMTP 服務器的要求。
為了構建和設置 SMTP 服務器,您主要需要兩件事:
- 一個域名
- 開放 25 端口的 VPS 服務器。
1. 域名
當您發送電子郵件時,您將通過如下電子郵件地址發送:
[email protected]
所以就我而言,“H-educate.com”是我用來發送電子郵件的域名。 因此,當您從 SMTP 服務器發送電子郵件時,只需要有一個域名即可使用。
通常,這是您的網站域名,除非您使用冷電子郵件,否則最好獲取並使用另一個域以防它被列入黑名單,以確保您的主要業務域安全。
因此,如果您還沒有域名,請立即購買! 為了繼續安裝。
如何獲得域名? 只要你買一個! 而且每年花費大約 10 美元,所以沒什麼大不了的!
我們有很多域名註冊提供商,您可以從以下位置獲取域名:
- 天哪。
- 名不虛傳。
- 自由名。
- 以諾。
- 谷歌域名。
在課程中,我將使用Godaddy獲取我的域名,但您可以根據需要使用任何其他服務,所有服務都以相同的方式工作,如果您需要任何幫助,我會在這裡
如果您是初學者,您可以觀看這個 3 分鐘的視頻,了解如何從 Godaddy 域名註冊商獲取和購買域名。
有域名嗎? 偉大的! ️讓我們繼續。
2. 開放25端口的VPS服務器。
您需要的第二件事是 VPS 服務器。 用於安裝和設置 SMTP 的公共服務器。
什麼是 VPS 服務器?
如果您不知道什麼是 VPS 服務器,只需從 Web 託管或云服務公司購買的在雲中運行的計算機(服務器)即可。 它可以通過公共 IP 公開訪問。
VPS 可用於託管具有更高性能的網站,可用於在雲中 24/7 運行機器以執行您想要的任何任務。
注意:如果您有興趣學習如何在 VPS 服務器上託管自己的網站,您可以
無論如何,在我們的例子中,我們將使用 VPS 服務器來構建 SMTP 服務器。
25端口開放??
我提到VPS必須打開25端口,這是什麼意思?
我不想在交易技術方面打擾您,但簡而言之。 任何網絡服務或軟件都使用特定端口通過 Internet 或網絡進行通信。 例子:
- 使用 RDP 軟件遠程連接到另一台 Windows 機器通過端口3389工作。
- 我們計算機上的 MYSQL 等 SQL 數據庫系統通過端口3306工作。
- 遠程連接到 Linux 機器以使用 SSH 對其進行管理,使用端口22 。
- 當您上網和打開網站時,我們使用端口80 。 等等。
默認情況下,所有服務器和計算機都運行防火牆,它會阻止除您想要的端口之外的所有端口。 所以為了使用某個服務,我們需要在防火牆中打開那個端口。
您還必須知道,端口可以通過傳入和傳出兩種方式被阻止和打開,下圖將使事情更清楚:
我建議您觀看我的免費課程“面向數字營銷人員的 Amazon EC2”,您將在不到一個小時的時間內了解所有這些概念。
因此,在我們的例子中,我們正在構建一個 SMTP 服務器,並且SMTP 軟件或協議通過端口 25 進行通信。 所以我們需要打開 25 端口。
因此,當您獲得 VPS 服務器時,只需確保公司允許端口 25並且不要阻止它,因為有些公司這樣做是為了防止垃圾郵件發送者。
以下是一些默認允許端口 25 的公司的列表:
- 宿主風。
- 聯繫方式。
- 服務器間。
- OVH。
- 數字海洋*
- AWS(一些賬戶被封鎖)
*Digital Ocean 有時會屏蔽一些賬戶並限制 25 端口,但一般情況下它們允許所有端口。
還有其他公司嗎?? 是的,您可以聯繫任何您想要的公司的支持人員,詢問他們是否默認阻止任何端口。 如果沒有,那麼完美,您可以使用它。
隨意使用任何你想要的 VPS 公司,這取決於你!
您還可以通過下面的優惠券鏈接在 DigitalOcean 上註冊,以獲得免費的 100 美元來免費測試所有內容。
或者從 Contabo 開始,我認為它是您可以使用的最便宜的 VPS 服務,我有 2 台服務器配置了 Contabo。
選擇您的 VPS 公司後,只需創建一個具有以下規格的 VPS 服務器:
- Ubuntu 18 x64 作為您的操作系統
- 您可以從1 CPU/2 GB RAM開始(稍後調整大小)。
有你的VPS嗎? 偉大的! ️讓我們繼續。
VPS 服務器基本配置。
現在我們有了新的 Ubuntu VPS 服務器,讓我們為安裝做好準備。
使用像putty或bitvise這樣的 SSH 客戶端連接到您的服務器。
首先,檢查您的主機名:
主機名 -f
如果您沒有看到ANYTING.YOURDOMAIN.COM的形式,那麼您需要使用以下命令更改主機名:
sudo 主機名 host.domain.tld
主機是你想要的任何東西。 所以就我而言,本教程的示例域是xmailing.me ,命令如下所示:
sudo 主機名 postal.xmailing.me
映射您的域名。
現在我們有了我們的 VPS 服務器並設置了它的名稱。 轉到您的域提供商並將您的域映射到您的 VPS 服務器。 只需打開 DNS 管理區域並添加一個新的 A 記錄,如下所示:
主機:服務器點:您的服務器 IP 。
*server 就我而言,您可以選擇任何您想要的服務器名稱。
完畢? ️讓我們繼續。
設置免費 SMTP 服務器
VPS 已準備就緒,我們可以開始安裝過程。 所以為了在我們的 VPS 上設置 SMTP 服務器,我們需要安裝一個 SMTP 軟件。
安裝 Postal Free SMTP 軟件
先決條件
Postal 完全使用容器運行,這意味著要運行 Postal,您需要一些軟件來運行這些容器。 我們建議為此目的使用 Docker,但您可以使用任何您想要的軟件。
要安裝 docker,請運行以下命令。 (注意:每個命令都以 - 開頭)
-sudo apt-get 更新 -sudo apt-get 安裝\ 易於傳輸-https \ ca證書\ 捲曲\ gnupg\ lsb-發布 -curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /usr/share/keyrings/docker-archive-keyring.gpg -迴聲\ “deb [arch=amd64 簽名=/usr/share/keyrings/docker-archive-keyring.gpg] https://download.docker.com/linux/ubuntu \ $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null -sudo apt-get 更新 -sudo apt-get install docker-ce docker-ce-cli containerd.io -sudo curl -L "https://github.com/docker/compose/releases/download/1.29.2/docker-compose-$(uname -s)-$(uname -m)" -o /usr/local /bin/docker-compose -sudo chmod +x /usr/local/bin/docker-compose -docker-compose--版本
系統實用程序
在運行某些 Postal 命令之前,您需要安裝一些系統實用程序。
apt install git curl jq
Git 和安裝助手存儲庫
通過運行以下命令,確保您在服務器上安裝了 git。
-git clone https://postalserver.io/start/install /opt/postal/install -sudo ln -s /opt/postal/install/bin/postal /usr/bin/postal
瑪麗亞數據庫
假設您有 Docker,您可以使用此命令在容器中運行 MariaDB。 將這一切複製並粘貼到 Putty 中。
docker run -d \ --name postal-mariadb \ -p 127.0.0.1:3306:3306 \ --restart always \ -e MARIADB_DATABASE=postal \ -e MARIADB_ROOT_PASSWORD=postal \ mariadb
這將在 MariaDB 上安裝您的郵政數據庫。
兔MQ
RabbitMQ 負責在不同進程之間調度消息。 與 MariaDB 一樣,您可以通過多種方式安裝它。 對於本指南,我們將只運行一個 RabbitMQ 工作者。 將以下所有內容複製為一個命令並粘貼到膩子上。
docker run -d \ --name postal-rabbitmq \ -p 127.0.0.1:5672:5672 \ --restart always \ -e RABBITMQ_DEFAULT_USER=postal \ -e RABBITMQ_DEFAULT_PASS=postal \ -e RABBITMQ_DEFAULT_VHOST=postal \ rabbitmq:3.8
安裝
運行以下命令並將postal.yourdomain.com
替換為您要訪問 Postal Web 界面的實際主機名。 在繼續之前,請確保您已使用您的 DNS 提供商設置了此域。
postal bootstrap postal. YOURDOMAIN.COM
初始化數據庫
運行以下命令來創建架構,然後創建您的第一個管理員用戶。
postal initialize postal make-user
運行郵政
您現在已準備好運行 Postal。 您可以通過運行:
postal start
這將在您的機器上運行許多容器。 您可以使用postal status
來查看這些組件的詳細信息。
安裝 WEB 客戶端
您可以使用任何 Web 客戶端在您的 Web 上運行 postal,但在本指南中,我們將使用 Caddy。 使用以下命令使用 SSL 安裝它。
docker run -d \ --name postal-caddy \ --restart always \ --network host \ -v /opt/postal/config/Caddyfile:/etc/caddy/Caddyfile \ -v /opt/postal/caddy-data:/data \ caddy
一旦開始,Caddy 將為您的域頒發 SSL 證書,您將能夠立即訪問 Postal Web 界面並使用您在前面的步驟之一中創建的用戶登錄。
配置郵政 SMTP
現在,打開您的 Internet 瀏覽器,並導航到您的服務器 IP URL 或子域,如下所示:
https://YOUR_SERVR_ADDRESS
您會注意到 SSL 警告,如下圖所示,可以繼續:
然後將打開郵政登錄屏幕,輸入您在設置期間創建的電子郵件和密碼進行登錄。
現在,您在 Postal 中,單擊“添加組織”添加一個。
然後單擊 Build Mail Server 並輸入名稱,並將其設置為實時模式
很簡單。 ️
郵政域配置
現在,單擊域將您的域名添加到郵政
輸入您要用於發送電子郵件的域名,然後單擊創建域。
然後,郵政將向您顯示域頁面,其中包含您需要配置的記錄。
因此,您需要做的只是複制這些記錄並粘貼到您的 DNS 區域中。 然後您的服務器將準備好發送電子郵件! 但是SPF 和 DKIM是什麼?
Dkim(域密鑰識別郵件):
讓我們從 DKIM 開始,DKIM 記錄也是您的 DNS 中的一條文本記錄,它包含一個公共身份驗證密鑰。 此密鑰將使用在您的服務器中私下保存的私鑰進行驗證。
所有電子郵件都會被簽名,這將避免任何更改並保護您的電子郵件原創性,這對於您的服務器存檔高發送分數非常重要。
觀看此視頻了解更多信息:
為郵政設置 Dkim
Postal 的優點是 DKIM 已經配置好並生成了密鑰,您只需將 DKIM 記錄複製到您的 DNS 區域。
SPF(發件人策略框架):
SPF記錄是添加到您的域 DNS 區域的 TXT 記錄,允許您設置允許從您的域發送電子郵件的郵件服務器。
從未包含在SPF記錄中的服務器發送的郵件將被標記為垃圾郵件或被拒絕。
例如,您不能從自己的服務器發送電子郵件並將您的發送電子郵件設置為“ [email protected]”,您就不能使用 google 的域。 這表明您正在嘗試發送垃圾郵件。
同樣,您可以配置 SPF 並防止任何人使用您的域發送電子郵件,因此設置 SPF 對於使您的域受到其他郵件提供商的信任非常重要。
設置 SPF。 打開您的 DNS 區域並添加以下記錄:
v=spf1 一個 mx ip4:XXX.XXX.XXX.XXX -all
*替換為您的 VPS 服務器 IP。
現在只有您的服務器可以從您的域發送電子郵件。
如果你注意到了,Postal 會給你一個示例 SPF 來複製,它看起來像這樣:
v=spf1 一個 mx 包括: spf.postal.example.com ~all
這只是一個示例域,您需要在郵政配置文件中更改它以匹配您的域名。 如何?
編輯郵政配置文件。
要編輯郵政配置文件,我們需要使用文件管理器連接到我們的服務器以簡化操作。
因此,您可以使用免費的遠程文件管理器 WinSCP 來連接和編輯服務器上的文件。
打開WinSCP ,並使用根憑據連接到您的服務器。 並轉到: /opt/postal/config目錄。 然後打開postal.yml文件。
然後,右鍵單擊並編輯該文件。
如您所見,只需將示例域更改為您的域名即可。
之後需要重啟postal才能使配置生效。
所以在你的服務器上運行這個命令:
郵政重啟
刷新您的網頁,您現在必須看到 example.com 已被您的域替換,您可以簡單地將 SPF 記錄複製到您的 DNS 區域。
很不錯! ️
現在我們的服務器已經準備好進行測試了。
最後! 發送測試電子郵件
Postal具有測試發送電子郵件的內置功能,只需單擊Messages ,然後單擊Send Message即可測試免費 SMTP 服務器!
哇!
現在您可能想知道如何使用此 SMTP 作為中繼從任何電子郵件營銷應用程序發送電子郵件。
答案很簡單,就是在Postal中創建“憑據”來連接和驗證我們的免費 SMTP 服務器。
創建郵政憑證以中繼電子郵件
要創建憑據,只需單擊Credentials ,然後單擊Add new Credentials 。
對於類型,選擇SMTP 。
如果您想通過 API 連接到郵政或開發自己的與郵政一起使用的應用程序,您也可以選擇API 。 在此處閱讀有關 API 的更多信息。
輸入用戶(任何你想要的)
而Key ,就是密碼,可以保存為“自動生成”
就是這樣,您現在可以在任何電子郵件營銷應用程序中使用這些憑據。
中繼測試電子郵件
很簡單,轉到 SMTPER.NET 並輸入您的服務器詳細信息,如下所示:
- SMTP 主機:您的服務器 IP 或域。
- 端口: 25 或 2525
- 登錄:您在憑據中輸入的用戶。
- 密碼:用戶密碼。
因此,這些是您可以在任何電子郵件發件人應用程序中使用的憑據。
而已! 我希望一切都簡單明了。 我們完成了免費 SMTP 服務器的設置!
如果您有任何問題,您可以在 H-asnwers.com 上提出您的問題
如果您想獲得關於構建您自己的冷電子郵件外展系統的完整 Udemy 課程 - 郵政和 Mautic ,您現在可以註冊並享受特別的限時折扣。
另請參閱:PowerMTA 郵件服務器完整設置指南
在您發送之前!
恭喜! 您使用 Postal 設置您自己的免費 SMTP 服務器。 但在您開始發送電子郵件之前,您必須了解一些重要概念並遵循指導方針以獲得最佳遞送率並到達收件箱!
預熱您的 SMTP 服務器
當您使用新的 IP 地址構建新的 SMTP 服務器時,並且在開始發送電子郵件營銷活動之前,您必須預熱您的 IP 地址。
什麼是預熱 IP?
當您的 SMTP 有新的品牌 IP 地址時,此 IP 在 Internet 上將沒有聲譽,並且 ISP(互聯網服務提供商)不知道此 IP。
因此,IP 預熱是通過根據預定時間表逐漸增加使用您的 IP 地址發送的郵件量來建立您在 Internet 上的聲譽的做法。
下表顯示了預熱服務器的示例:
熱身日 | 要發送的電子郵件 |
1 | 20 |
2 | 50 |
3 | 100 |
4 | 300 |
5 | 500 |
6 | 700 |
7 | 900 |
8 | 1000 |
此表顯示了一個場景,如果您希望每天收到 1K 封具有良好聲譽的電子郵件。 有關詳細信息,請參閱我的預熱 SMTP 指南。
另外,你可以在這裡觀看我關於熱身的完整視頻:
rDNS(反向 DNS):
反向 DNS 稱為指針記錄,用於將您的 IP 指向您的域,它與常規 DNS A 記錄相反。
因此,當您調用 IP 時,您將獲得名稱。 它也是設置郵件服務器和提高發送分數和聲譽的重要因素。
在此處了解有關 rDNS 的更多信息:
DMARC(基於域的消息身份驗證、報告和一致性):
它是一種使用 (SPF) 和 (DKIM) 來確定電子郵件消息真實性的協議。
DMARC 使 Internet 服務提供商 (ISP) 能夠更輕鬆地防止惡意電子郵件行為,例如域欺騙以通過網絡釣魚獲取收件人的個人信息。
它允許電子郵件發件人指定如何處理未使用 SPF 或 DKIM 進行身份驗證的電子郵件。 發件人可以選擇將這些電子郵件發送到垃圾文件夾或讓它們一起阻止它們。
要了解 DMARC 對您的在線業務的重要性以及如何設置,請觀看此視頻:
MX 記錄
郵件交換 (MX)記錄是將電子郵件傳送到您的地址所必需的 DNS 記錄。
在簡單的 DNS 術語中,MX 記錄用於告訴全世界哪些郵件服務器接受您域的傳入郵件,以及發送到您域的電子郵件應該路由到哪裡。 如果您的 MX 記錄沒有指向正確的位置,您將不會收到電子郵件。
避免垃圾郵件因素
主要是我們有四個主要因素決定您的垃圾郵件得分:
- 知識產權聲譽
- SPF、DKIM、rDNS 和 DMARC。
- 郵件正文
- 電子郵件列表健康。
前兩個因素在上面已經解釋過了。 我們仍然有消息正文和電子郵件列表健康。
郵件正文
只是您的電子郵件的主題和內容。 它看起來像垃圾郵件嗎? 它有任何垃圾關鍵字和触發器嗎? 這決定了您的消息分數。
在創建主題行和消息正文時,請務必避免任何這些。
查看 Hubspot 上的這篇文章,了解有關垃圾郵件關鍵字的更多信息。
您可能還對這篇文章感興趣“如何在收件箱中登陸您的電子郵件? 終極指南!”
電子郵件列表健康
簡單地說,它由兩件事決定:
- 跳出率:您的列表中有多少電子郵件有效。
- 垃圾郵件陷阱:您的列表是否包含任何垃圾郵件陷阱?
在此視頻中了解有關垃圾郵件陷阱以及如何避免的更多信息:
並且始終確保在發送任何活動之前驗證您的電子郵件列表並清理它。 在這裡查看我的免費在線電子郵件驗證服務。
我想你也會有興趣觀看這個視頻:
跟進我的 Youtube 頻道,觀看有關電子郵件營銷、數字營銷和在線業務的每日精彩新視頻,以在線成長。
此外,加入我的電子郵件營銷時事通訊以獲取我僅與我的電子郵件訂閱者共享的獨家電子郵件營銷技巧。
可選(如果您使用 NGINX):使用免費 SSL 確保安全。
SSL 證書在 Web 服務器中用於加密服務器和客戶端之間的流量,為訪問您的應用程序的用戶提供額外的安全性。 Let's Encrypt提供了一種免費獲取和安裝可信證書的簡單方法。
使用 Putty SSH 客戶端連接到您的服務器。 讓我們開始吧!
第 1 步 — 安裝 Let's Encrypt 客戶端
Let's Encrypt 證書是通過在您的服務器上運行的客戶端軟件獲取的。 官方客戶端稱為Certbot 。
通過運行以下命令安裝 Certbot:
apt -y 安裝 certbot
Certbot現在可以使用了。 ️
第 2 步 — 獲取 SSL 證書
但是,在我們獲得 SSL 證書之前,我們需要停止 nginx 服務,因為它使用 certbot 將使用的端口 80。 所以讓我們通過運行以下命令暫時停止它:
sudo systemctl 停止 nginx
現在讓我們安裝證書,運行以下命令:
certbot certonly --standalone -d postal.xmailing.me
將“ postal.xmailing.me ”替換為您的域。
並按照嚮導。 然後 certbot 將為您的域頒發證書。
第 3 步 — 配置 SSL 證書
在我們獲得 SSL 證書後,我們需要在我們的服務器中對其進行配置。
讓我們再次啟動 nginx 服務:
sudo systemctl 啟動 nginx
現在,再次打開WinSCP以編輯我們服務器上的一些文件。
連接到您的服務器,然後轉到/etc/nginx/conf.d目錄。
在此文件夾中,創建一個新文件並將其命名為:“ postal.xmailing.me 。 配置“
將“ postal.xmailing.me ”替換為您的域。
然後,只需複制以下代碼並粘貼到文件中。
服務器 { 聽 [::]:80; 聽0.0.0.0:80; server_name postal.xmailing.me ; 返回 301 https://$host$request_uri; } 服務器 { 聽 [::]:443 ssl; 聽 0.0.0.0:443 ssl; 根 /opt/postal/public; server_name postal.xmailing.me ; ssl_certificate /etc/letsencrypt/live/ postal.xmailing.me /fullchain.pem; ssl_certificate_key /etc/letsencrypt/live/ postal.xmailing.me /privkey.pem; ssl_protocols TLSv1.2 TLSv1.1 TLSv1; ssl_prefer_server_ciphers 開啟; ssl_ciphers EECDH+ECDSA+AESGCM:EECDH+aRSA+AESGCM:EECDH+ECDSA+SHA512:EECDH+ECDSA+SHA384:EECDH+ECDSA+SHA256:ECDH+AESGCM:ECDH+AES256:DH+AESGCM:DH+AES256:RSA+AESGCM :!aNULL:!eNULL:!LOW:!RC4:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS; 地點 / { client_max_body_size 50M; try_files $uri $uri/index.html $uri.html @puma; } 位置 /app/assets { add_header 緩存控制 max-age=3600; } 位置@美洲獅{ proxy_set_header X-Real-IP $remote_addr; proxy_set_header 主機 $host; proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for; proxy_set_header X-Forwarded-Proto https; proxy_pass http://127.0.0.1:5000; } }
並保存文件。
最後一步是重新啟動並再次啟用 nginx。 只需運行以下命令:
systemctl 重啟 nginx
然後這個命令:
systemctl 啟用 nginx
太棒了,現在您可以測試您的安全郵政網站!
祝你好運!