一個(gè)電子郵件地址可以分為二個(gè)部份,第一個(gè)部份是使用者名稱,第二個(gè)部份是主機(jī)名稱。以
john@yahoo.com 為例,yahoo.com 就是主機(jī)名稱,而 john 為使用者名稱。
假設(shè) Alex 使用的信箱是 alex@gmail.com,則當(dāng) Alex 要寄信給 john@yahoo.com 時(shí),會(huì)經(jīng)過下列步驟:
首先 Alex 從個(gè)人計(jì)算機(jī)中寫好一封信,送到他所屬的 gmail.com 的主機(jī)中。
gmail.com 會(huì)先將信件存在自己的機(jī)器上的暫存區(qū)。
gmail.com 會(huì)檢查信件目的地,并查找 yahoo.com 的 IP 地址。
接著經(jīng)由因特網(wǎng)將信件送到 yahoo.com 的主機(jī)。
yahoo.com 的主機(jī)收到信后,發(fā)現(xiàn)是給自己機(jī)器中的使用者,所以將信件存放到使用者的新件匣中。
當(dāng) John 有空時(shí),從家里打開計(jì)算機(jī),并主動(dòng)去 yahoo.com 檢查是否有新的信件,當(dāng)發(fā)現(xiàn)有新的信,則下載到自己的計(jì)算機(jī)中。
過程如下圖所示:

如果 alex@gmail.com 要寄信給 john@gmail.com,因?yàn)榧男耪吆褪招耪呤褂猛粋€(gè)郵件服務(wù)器,所以在上述步驟二中,gmail.com 的主機(jī)發(fā)現(xiàn)收信者是自己機(jī)器的使用者,則會(huì)將該信件存放在使用者的新件匣中。
從寄信到收信的流程中,每一個(gè)網(wǎng)絡(luò)上的組件都扮演著不同的角色
Mail User Agent (MUA):郵件使用者代理人,這是使用者用來寫信、收信的程序。例如,我們常用的 Outlook Exporess、Thunderbird 等。它的作用在于提供使用者一個(gè)好用的收發(fā)信件接口,并將信傳到自己的郵件服務(wù)器。
Mail Transfer Agent (MTA):郵件轉(zhuǎn)送代理人,是一個(gè)負(fù)責(zé)轉(zhuǎn)送信件的服務(wù)器。UNIX 中使用的 Sendmail、Postfix 就是 MTA 軟件。它的作用在于收到 MTU 寄來的信后,根據(jù)信件地址,將信件轉(zhuǎn)送到目的地。在目的地中,也有另一臺(tái) MTA 會(huì)負(fù)責(zé)接收信件。有時(shí)候信件并不會(huì)一次就從使用者的計(jì)算機(jī)傳送到目的地的主機(jī),而是會(huì)經(jīng)由許多 MTA 轉(zhuǎn)送到目的地的主機(jī)。這種 MTA 接收非自己的信件,并轉(zhuǎn)送到別臺(tái) MTA 的動(dòng)作就叫作「Relay」。
Mail Delivery Agent (MDA):郵件遞送代理人,負(fù)責(zé)將要給本地使用者的郵件分配到使用者的信箱中。在 UNIX 中,MDA 通常是 mail 這支程序。
當(dāng)我們?cè)诩男艜r(shí),所使用的是 SMTP (Simple Mail Transfer Protocol) 通訊協(xié)議,在一臺(tái)郵件服務(wù)器上,必須要先安裝郵件服器軟件,以接收 SMTP 協(xié)議所寄來的信件。MTA 和 MTA 之間傳送信件時(shí)也是使用 SMTP 協(xié)定。而收信時(shí),使用的是 POP3 (Post Office Protocol) 或是 IMAP (Internet Message Access Protocol) 協(xié)定。如下圖:

一般常用的 SMTP 軟件為 UNIX 內(nèi)附的 Sendmail、Qmail、或 Postfix。而收信時(shí)所使用的 POP3 及 IMAP 軟件 UNIX 并未內(nèi)建,因此我們必須自行安裝。然而做為一臺(tái) Mail Server,我們要設(shè)定的是最少要做到可以正常使用 POP3 及 SMTP 來讓使用者收發(fā)信。另外,我們也可以使用 Web 接口的郵件收發(fā)軟件,Web 接口的郵件收發(fā)軟件可以讓使用者不必使用 Outlook 等軟件即可經(jīng)由任何操作系統(tǒng)的瀏覽器輕松收發(fā)信件。
傳統(tǒng)上,SMTP 在接受使用者寄信時(shí),并不須經(jīng)過身份認(rèn)證,任何人都可以使用你的主機(jī)來制造垃圾信。因此 UNIX 內(nèi)建的 Sendmail 是不接受 SMTP 寄信的。而一般的 ISP 業(yè)者大多是以控制聯(lián)機(jī)來源的方式,禁止非允許網(wǎng)域的使用者 RELAY。但如果我們以控制聯(lián)機(jī)來源的方式,便無法在其它非允許的IP地址使用SMTP,這對(duì)于想要任何地方都可以發(fā)信的人十分不分便。因此,我們必須讓使用者透過 UNIX 使用 SMTP 身份認(rèn)證的功能來寄信,讓要使用諸如 Outlook 以 SMTP 寄信的使用者必須先通過本機(jī)的身份認(rèn)證。
在開始架設(shè)郵件服務(wù)器之前,您必須先設(shè)定好 DNS。由于傳送信件時(shí),必須查找目的地主機(jī)的 IP。如果您的主機(jī)沒有合法的 DNS 設(shè)定,信件將無法正確送達(dá)。另外,您的服務(wù)器 IP 也必須設(shè)好反解,IP 名稱必須和您的主機(jī)名稱對(duì)映,如果反解不正常,有的服務(wù)器可能會(huì)拒收您所送出的信件。
?