共找到2條詞條名為POP3的結果 展開

POP3

網路協議

POP3,全名為“Post Office Protocol - Version 3”,即“郵局協議版本3”。是TCP/IP協議族中的一員,由RFC1939 定義。本協議主要用於支持使用客戶端遠程管理在伺服器上的電子郵件。提供了SSL加密的POP3協議被稱為POP3S。

POP 協議支持“離線”郵件處理。其具體過程是:郵件發送到伺服器上,電子郵件客戶端調用郵件客戶機程序以連接伺服器,並下載所有未閱讀的電子郵件。這種離線訪問模式是一種存儲轉發服務,將郵件從郵件伺服器端送到個人終端機器上,一般是PC機或 MAC。一旦郵件發送到 PC 機或MAC上,郵件伺服器上的郵件將會被刪除。但目前的POP3郵件伺服器大都可以“只下載郵件,伺服器端並不刪除”,也就是改進的POP3協議。

協議特性


POP3協議默認埠:110
POP3協議默認傳輸協議:TCP
POP3協議適用的構架結構:C/S
POP3協議的訪問模式:離線訪問
POP3協議示意如下圖所示。
POP3協議
POP3協議

原理


適用範圍

POP3
POP3
POP適用於C/S結構的離線模型的電子郵件協議,目前已發展到第三版,稱POP3。離線模型即不能在線操作,POP不支持對伺服器郵件進行擴展操作,此過程需要更高級的IMAP4協議來完成。支持POP協議使用ASCII碼來傳輸數據消息,這些數據消息可以是指令,也可以是應答。

POP協議

協議支持離線郵件處理,當郵件發送到伺服器后,電子郵件客戶端會調用郵件客戶端程序,下載所有未閱讀的電子郵件(這種離線訪問模式是一種存儲轉發服務).當郵件從郵件伺服器發送到個人計算機上,同時郵件伺服器會刪除該郵件(但是目前很多POP3伺服器都支持“下載郵件,伺服器並不刪除郵件”,也就是說在POP3中改進了POP協議).

命令響應

POP3客戶向POP3伺服器發送命令並等待響應,POP3命令採用命令行形式,用ASCII碼錶示。伺服器響應是由一個單獨的命令行組成或多個命令行組成,響應第一行以ASCII文本+OK或-ERR(OK指成功,-ERR指失敗)指出相應的操作狀態是成功還是失敗。

三種狀態

認證狀態,處理狀態和更新狀態。當客戶機與伺服器建立連接時,客戶機向伺服器發送自己身份(這裡指的是賬戶和密碼)並由伺服器成功確認,即客戶端由認可狀態轉入處理狀態,在完成列出未讀郵件等相應的操作后客戶端發出quit命令,退出處理狀態進入更新狀態,開始下載未閱讀過的郵件到計算機本地之後最後重返認證狀態確認身份后斷開與伺服器的連接。具體原理如下圖
等待連接身份確認quit命令
C——|認證|—————|處理|——————|更新|----S
|__________________________________|
重返認證狀態。

命令語句

目前大多數POP客戶端和服務端都是採用ASCII碼來明文發送用戶名和密碼,在認證狀態下服務端等待客戶端連接時,客戶端發出連接請求,並把由命令構成的user/pass用戶身份信息數據明文發送給服務端。
服務端確認客戶端身份以後,連接狀態由認證狀態轉入處理狀態,為了避免發送明文口令的安全問題,有一種新的更為安全的認證方法,命名為APOP,使用APOP,口令在傳輸之前就被加密,當客戶端與服務端第一次建立連接時,POP3伺服器向客戶端發送一個ASCII碼文本的問候,這個問候是由一串字元組成對每個客戶機是唯一的,內容一般都是當地時間之類的。然後客戶端把它的純文本口令附加到剛才接受的字元串之後,接著計算出新的字元串的MD5單出函數值的消息數據,最後客戶機把用戶名和MD5加密后的消息摘要作為APOP命令的參數一起發送到伺服器。但是目前大多數windows上的郵件客戶端不支持APOP協議。qpopper支持。

POP3命令碼

命令描述
USER [username]處理用戶名
PASS [password]處理用戶密碼
APOP [Name,Digest]認可Digest是MD5消息摘要
STAT處理請求伺服器發回關於郵箱的統計資料,如郵件總數和總位元組數
UIDL [Msg#]處理返回郵件的唯一標識符,POP3會話的每個標識符都將是唯一的
LIST [Msg#]處理返回郵件數量和每個郵件的大小
RETR [Msg#]處理返回由參數標識的郵件的全部文本
DELE [Msg#]處理伺服器將由參數標識的郵件標記為刪除,由quit命令執行
RSET處理伺服器將重置所有標記為刪除的郵件,用於撤消DELE命令
TOP [Msg# n]處理伺服器將返回由參數標識的郵件前n行內容,n必須是正整數
NOOP處理伺服器返回一個肯定的響應
QUIT終止會話
a.客戶機希望結束這次會話
b.如果伺服器處於‘處理’狀態,那麼將進入‘更新’狀態以刪除任何標記為刪除的郵件
c.導致由處理狀態到更新狀態,又重返認可狀態的轉變
d.如果這個命令發出時伺服器處於‘認可’狀態,則結束會話,不進行‘更新’狀態。

等待

POP3協議在TCP/110埠上等待客戶連接請求。

監聽

若密碼為明文,我如何監聽?下面的命令在伺服器運行后在屏幕上顯示POP3連接及命令發送的過程:
#sniffit-a-A.-p110-b-s192.169.11.12
note:192.168.11.12是客戶機IP地址
你需要事先安裝sniffit這個埠監聽程序

中斷

考慮這種情況,若客戶在收取郵件時,假定為15封信等待接收,但由於線路問題,收到第10封時斷線了,為什麼下次收時仍然從第一封開始,也即為什麼前10封沒有被從伺服器上刪除掉?
任何郵件的刪除都必須在quit命令發出后對已標記為刪除的郵件執行刪除操作,由於中途斷線,仍處於處理狀態,沒有機會執行quit命令以進行狀態轉換。

鎖定

pop3 session is locked by another session,please wait 10 minutes then try again.
由於非正常操作引起POP3程序內部機制鎖住該次會話。

處理機制

Foxmail與OE(outlookexpress)的處理機制的不同。
a.假定伺服器上有三封郵件等待客戶機接收。用foxmail與OE的不同之處在於
foxmail每收一封標記刪除一封,而OE則等全部接收完后再全部標記為刪除最後執行quit命令。
FoxmailOE
-------------------------------
retr1retr1dele1retr2
retr2retr3
dele2dele1
retr3dele2
dele3dele3
quitquit
b.Foxmail的遠程郵件管理是非常優秀的管理工具,假定伺服器上有三封信,對第一封,我們不想接收
想從伺服器直接刪除;對第二封,想接收但不刪除,對第三封,這一次不想接收,分別標記后最後foxmail發出的命令是
dele1
retr2
quit
c.若沒有foxmail,正好有幾封很大的信堵住了,我不想接收,想直接刪除它,或者想查看這兩封是誰發的?
直接在windows的DOS窗口下用命令行操作,如:
#telnetmyispnet110
userusername
passpassword
list
dele3
dele5
quit
--

操作指南


伺服器允許符合POP3(PostOfficeProtocol,Version3郵件投遞協議,版本3)的郵件客戶端連接Imail伺服器。這些郵件客戶端軟體包括OutlookExpressOutlook,NetscapeMessenger或Communicator,Eudora,Pegasus,NuPOP,Z-Mail,FoxMail,TheBat,Kmail,和Unixmail 。
POP3 操作圖
POP3 操作圖
POP3客戶端通常採用“off-line”離線方式訪問郵件伺服器,會定時的訪問郵件伺服器,下載郵件到客戶的電腦上,然後和伺服器斷開。一般的,郵件被臨時的存儲在伺服器上,當客戶端下載這些郵件后,它們將被伺服器刪除,不再保留。對於那些總是在同一台電腦上閱讀郵件的用戶來說,這種方式是十分適合得。另外一種方式,稱為“online”在線方式,即郵件客戶端總是和伺服器保持連接。郵件被保持在伺服器上,客戶端不下載郵件到客戶機上,用戶可以在線的閱讀保留在伺服器上的郵件。那些經常使用不同電腦的用戶適合於這種方式。ImailPOP3服務可以作為Windows NT服務,完全隱藏的運行或者可以以有某些交互的方式運行。該服務將一直運行即使你登出系統。IMail同時提供另外一種訪問方式IMAP4(InternetMessageAccessProtocolVersion4).IMAP4服務同時提供“在線”和“離線”訪問方式。Logging On登入預設的,POP3服務利用系統賬號登入系統。你可以改變這種登入方式:
POP3
1、在控制面板,啟動Services小程序。
2、選擇IMailPOP3 Server服務然後點擊Startup。
3、(可選)選擇您希望的StartupType。
4、在LogOnAs中,選擇正確的登入帳號:IMailServerSystemAccount.如果您有郵件主機採用WindowsNT用戶資料庫作為Imail用戶資料庫,那麼你需要使用該賬號。AllowServicetoInteractwithDesktop.採用該賬號時,任何用戶登入系統時,桌面上都會有一個Imail的圖標。
ThisAccount.採用這種方式時,如果你的主機中沒有採用WindowsNT用戶資料庫的,你可以輸入你希望的用戶賬號;確認該賬號是一個主機管理員。如果您有郵件主機是利用外部資料庫的,確認該賬號可以訪問外部資料庫。
Configuringthe POP3 Server配置POP3伺服器如何配置pop3伺服器:
1、在IMailAdministrator中,在左邊的面板中選擇“localhost”。
2、選擇“Services”目錄然後點擊POP3.POP3面板出現。
3、輸入以下描述的選項以配置POP3服務。
4、單擊按鈕Apply保存設置。
5、停止服務,等待5-10秒然後重新啟動服務。當你單擊按鈕Stop/Start后,將自動保存設置的改變。

常見問題


1. POP3是什麼?有什麼作用?
答: POP3是Post Office Protocol - Version 3的縮寫,即郵局協議版本3,是一種用來從郵件伺服器上讀取郵件的協議,用於將郵件從POP伺服器傳送到用戶代理.
負責接收郵件的用戶代理稱為POP客戶,負責發送郵件的伺服器稱為POP伺服器.
2. 為什麼需要POP3?
答:通過POP3協議,收信人不需要參與到與郵件伺服器之間的郵件讀取過程,簡化了用戶操作. 收信人可以“離線”地進行郵件處理,很方便地接收,閱讀郵件.
3. 什麼是POP命令和應答?
答: POP客戶使用POP命令向POP伺服器發送請求,例如PASS命令傳送帳戶密碼,RETR命令請求傳送郵件內容等.
POP伺服器使用應答對此回應,“+OK”表示命令成功,"-ERR"表示命令失敗,後面是簡單的文字說明,例如"+OK Password required for Bob" 表示USER命令成功執行,需要客戶輸入密碼進行認證.
4. POP3協議有哪些狀態?
答: POP3有三種狀態: AUTHORIZATION(授權),TRANSACTION(處理),UPDATE(更新).
當TCP建立起來時,POP3進入"授權"狀態,客戶需要使用USER/PASS進行身份驗證. 通過驗證后,POP3進入"處理"狀態,客戶可以發送LIST,RETR等命令來查詢,獲取郵件. 當客戶在此狀態下發送"UPDATE"命令后,POP3進入"更新"狀態,伺服器處理完命令后又回到"授權"狀態.
5.伺服器收到客戶發送的DELE命令后,郵件是否立即從伺服器上刪除?
答:伺服器收到DELE命令后,僅僅將郵件標記為刪除,真正的刪除操作在更新狀態下執行. 如果還未進入到更新狀態,客戶可以發送RSET命令撤消以前的DELE命令.
6. POP3中用戶的密碼是明文傳送的,具有安全隱患,請問該怎麼辦?
答: POP3使用PASS命令傳送用戶的密碼,並以明文傳送,因此具有安全隱患.
現在,POP3提供另外一個命令APOP,可以安全傳輸用戶密碼,避免了安全隱患.