一前言
本來使用qq郵箱發(fā)送郵件,然后借助sendEmail來發(fā)送郵件告警,但是有每天的200封限制,很是不爽,于是想到來自己搭建郵件服務器來解決這個問題,關(guān)于使用sendEmail來借助qq郵箱來發(fā)送郵件詳見http://www.cnblogs.com/Dicky-Zhang/p/5982973.html,在做這個之前,在網(wǎng)上查找了很多資料,發(fā)現(xiàn)很是混亂,不成一體,拼拼湊湊,根本無法使用,所以記錄下來,方便后來人使用。
在做postfix之前,我成功搭建了iredmail,一個強大的開源系統(tǒng)。稍后會另外一篇文章來寫下過程,供大家參考。
說明下
關(guān)于阿里云做郵件系統(tǒng)的問題,阿里云對25端口做了限制,即使你做好了,在第三方服務器上可能都無法使用,在本機上我做好了,都無法使用。對于青云系統(tǒng),默認是沒有對外開放25端口,這里的對外開放不是服務器里面,你需要在后臺去開放25端口,不然你在外部服務器去連接這臺做好的服務器的時候會提示超時,對于國外的服務器我倒是沒測試,我認為應該不會做限制。好了,不多說了,開始正題
解釋幾個名詞
- MUA:用戶代理端,即用戶使用的寫信、收信客戶端軟件。比如:outlook、foxmail等客戶端軟件,乃至通過瀏覽器登錄郵箱并發(fā)送郵件的BS架構(gòu)網(wǎng)頁也算是MUA。
- MTA:郵件傳送端,即常說的郵件服務器,用于轉(zhuǎn)發(fā)、收取用戶郵件。本文之中的postfix實現(xiàn)的就是MTA,當然postfix也是一種特殊的MUA,不再深入介紹,本文之中僅把postfix當做MTA使用。
- MDA:郵件代理端,相當于MUA和MTA的中間人,可用于過濾垃圾郵件。
- POP:郵局協(xié)議,當前是第三版,也就是POP3,用于MUA連接服務器收取用戶郵件,通信端口110。
- IMAP:互聯(lián)網(wǎng)應用協(xié)議,功能與POP類似:也用于MUA連接服務器收取用戶郵件;功能較POP多,通信端口143。
- SMTP:簡單郵件傳送協(xié)議,MUA連接MTA或MTA連接MTA發(fā)送郵件使用此協(xié)議,通信端口25,啟用ssl/tls的情況下端口為465或587。
一般發(fā)郵件的步驟流程是:
1、MUA通過POP、IMAP或SMTP協(xié)議連接MTA(稱之為mta1);本文之中php通過phpmailer請求發(fā)送郵件的php腳本就扮演了MUA的角色,而postfix就是MTA;
2、MUA發(fā)送郵件給mta1(或者說MUA通過mta1發(fā)送郵件);本文中postfix就是這個mta1;