之前我用nodemailer通過163郵箱來發送郵件,不過沒過幾天就一直ETIMEDOUT,不知道什麼原因,想着還是自己搭一個來發郵件可能靠譜點(flag?)
安裝postfix
CentOS 7 自帶了postfix服務,在/etc/postfix 目錄下
沒有安裝的可以用yum安裝
爲域名添加DNS解析
需要添加三條記錄,A記錄、MX記錄、TXT記錄
配置postfix
我接觸postfix的時候貌似已經被人玩爛了,網上一搜幾年前的文章一大把。
有關域名解析、postfix配置跟使用telnet測試發送郵件,可以參照這篇文章,親測。
阿里雲CentOS Linux服務器上用postfix搭建郵件服務器
Nodemailer連接本機郵件服務器
配置好postfix後,就可以用自己的服務器發送郵件了。
smtp沒有通過ssl加密時的端口是25
所以之前定義的transport
var transport = nodemailer.createTransport('smtps://username%40163.com:[email protected]');
修改爲
var transport = nodemailer.createTransport('smtp://@127.0.0.1:25');
即可。
相應的,mailOptions裏面的from改成[email protected](你自己的域名,其實改成其他任意域名都可以成功發送)
一般會在辣雞郵件裏面找到你發的郵件
後續
可以爲自己的郵件服務器添加smtp認證跟ssl加密。
網上搜索sasl之類的。