Outlook通過RPC/RPC Over HTTPS訪問Exchange郵箱

上一篇博文介紹了一些郵箱的簡單配置,這篇我們介紹OutlookRPC/RPC Over HTTPS訪問Exchange郵箱
 
我們先看一下有哪些方式可以訪問Exchange
①Outlook作爲客戶端軟件,通過RPC/RPC Over HTTPS訪問
②IE瀏覽器作爲客戶端軟件,通過HTTP/HTTPS
Outlook Express作客戶端軟件  通過SMTP/POP3訪問
Outlook Express作客戶端軟件  通過IMAP訪問
⑤通過EXIFS訪問
 
Outlook是訪問Exchange郵箱的最佳客戶端軟件,在性能和安全方面Outlook明顯佔有優勢(都是微軟自家人嘛)

 

我們要先了解一下RPC協議,RPC是遠端過程調用的縮寫,普通的網絡服務大多有自己的固定端口,比如http在80端口,ftp在21端口,RPC實現的服務卻是隨機端口。RPC工作方式首先,每個基於RPC的服務都有一個UUIDUUID是一組128位長的數字,被用來區分RPC服務。Exchange服務的UUIDA4F1DB00-CA47-B31F-00DD010662DAEPM(終點映射器End Point Mapper 簡稱EPM是專門爲RPC設計的一個服務,端口是135。客戶機首先要連接服務器的135端口,向EPM發起一個查詢請求,查詢請求中描述了自己所請求服務的UUID然後請EPM告知這個服務對應的端口是多少。EPM查詢後告訴客戶機,你所請求的這個服務在哪個端口監聽。客戶機接到這個答案後,接下來就會去連接這個端口,和服務器連接了!
 
因爲RPC服務的端口是隨機的,存在危險性,所以我們在內網使用RPC訪問Exchang服務很正常一旦放到公網,RPC訪問就會出現問題,這是因爲網絡運營商一旦遇到訪問135端口的數據包就會馬上丟棄。爲了應付運營商的封鎖,超強的工程師就想到了,把RPC封裝成HTTP包,所以這就是我們要用RPC/RPC Over HTTPS來訪問郵箱的原因。
 
實驗環境如下圖所示,China是DNS,Beijing是域控制器和CA服務器,HK是Exchange服務器,London和NewYork都安裝了Outlook 2003作爲訪問郵箱的客戶機
一  Outlook通過RPC訪問Exchange郵箱
用Administrator登錄到London,打開Outlook,因爲Administrator已經創建了配置文件,所以我們直接進入Outlook。我們要查看Outlook和Exchange服務器是靠RPC連接還是通過RPC Over HTTPS連接的,按住Ctrl鍵,右鍵單擊屏幕右下角的Outlook圖標,如下圖所示,選擇“連接狀態”(只有按住Crtl鍵才能看到連接狀態)
如下圖所示,Outlook和Exchange服務器是通過RPC連接的。
 
二  Outlook通過RPC Over HTTPS訪問郵箱
 
通過RPC Over HTTP訪問郵箱,就要把RPC封裝成HTTP格式,然後再用SSL進行加密,Exchange服務器收到數據後,先對數據進行解密,然多把HTTP數據包解封裝成RPC格式。首相我們要完成以下步驟才能實現訪問。
 ①在Exchange服務器上安裝“HTTP上的代理RPC”並且 對“HTTP代理上的RPC”進行配置
 ②創建CA服務器
 ③Exchange服務器申請證書
 ④配置IIS的身份驗證方式
 ⑤配置客戶機上的Outlook
 

 ①在Exchange服務器上安裝“HTTP上的代理RPC”並且 對“HTTP代理上的RPC進行配置”
 
登錄到Exchange服務器上,打開控制面板-添加或刪除程序-添加/刪除Windows組件,打開網絡服務組件,安裝裏面的“HTTP上的代理RPC”如下圖所示
安裝完成後打開Internet信息服務器(IIS)管理器,在“網站”中就會多一個RPC目錄。打開RPC目錄,裏面有一個Rpcproxy.dll的動態鏈接庫,客戶機送來的HTTP數據包就是靠他來解封裝的。
接下來我們對“HTTP代理上的RPC”進行配置
這裏我們主要配置RPC的端口號,因爲他對HTTP包裏的RPC數據包有端口限制。默認情況下,RPC數據包的端口在100-5000之間,然而不巧的是Exchange服務器使用RPC服務端口是,6001,6002....等,不在100-5000這個範圍內。我們通過修改註冊表把端口範圍調到100-7000這個範圍,這樣就OK了。
在Exchange服務器上運行Regedit,打開註冊表編輯器,找到[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc\RpcProxy\ValidPorts]
把原來的鍵值HK:100-5000改爲HK.ITET.COM:100-7000,向大家解釋一下爲什麼把HK改成了完全合格域名,因爲修改這個參數取決於客戶機使用什麼方式訪問服務器,用NETBIOS,還是用完全合格域名,我們考慮到可能有外網用戶訪問服務器,所以我們還是改爲使用較多的完全合格域名,如下圖所示
 
創建CA服務器
RPC包被封裝成HTTP格式後,要通過SSL進行加密處理,這樣我們選用web服務器提供證書,所以我們要在itet.com域內創建一個CA服務器。我們在Beijing上安裝CA服務器,一定要確認安裝了“Internet信息服務器(IIS)管理器”這個組件,然後打開控制面板-添加或刪除程序-添加/刪除Windows組件裏添加“證書服務”安裝時會有一個提示框,單擊是繼續就可以了,提示內容大概就是不能修改計算機名什麼的。如下圖所示
接下來是選擇CA的類型,我們選擇“企業根”這是因爲我們部署的是第一臺CA服務器,如下圖所示
下面要填寫CA信息,按照默認設置完成CA安裝
特別提示,在HK,London,NewYork,刷新一下組策略,讓他們信任Beijing的CA的頒發機構
 
③Exchange服務器申請證書
 
itet.com域內有了CA服務器,Exchange就可以申請證書了,打開“Internet信息服務(IIS)管理器”右擊默認網站,選擇屬性-目錄安全性-服務器證書,如下圖所示
進入申請向導
新建證書
選擇“立即將證書請求發送到聯機證書頒發機構”
輸入證書名稱
填寫單位的相關信息
填寫站點公用名稱是其完全合格域名
這一部很重要,要和剛纔修改註冊表是填的計算機名保持一致,客戶機訪問Exchange服務器時也要用這個計算機名
下面的參數按照默認就可以了(端口好:443不要改),完成嚮導,EXchange服務器證書申請成功。查看證書如下圖所示
 
配置IIS的身份驗證方式
 
接下來配置IIS的身份驗證方式。Outlook把RPC封裝成HTTP格式,再進行SSL加密傳送到RPC虛擬目錄,由於RPC虛擬目錄採用的是匿名驗證方式,所以我們把它改成基本驗證方式,不用擔心他的安全性,因爲我們還要進行SSL加密!!
打開“Internet信息服務(IIS)管理器”默認網站-RPC-屬性-目錄安全性,點擊編輯,如下圖所示
關閉“匿名訪問”和“Windows集成驗證”打開“基本驗證”如下圖所示
 
配置客戶機上的Outlook
 
我們要讓Outlook把RPC封裝成HTTP格式,在London上打開控制面板-郵件-電子郵件賬號
選擇“查看或更改現有電子郵件賬戶”所下圖所示
在Outlook中創建好的賬號點擊“更改”
原參數不做修改,點擊“其他設置”在彈出的選項卡里選擇連接,點擊“使用HTTP連接到我的Exchange郵箱”如下圖所示
在鏈接到Exchange代理服務器裏填寫完全合格域名,要與在我們申請的證書的公用名和更改Exchange服務器註冊表填寫的RPC服務器名完全相同。無論是快速或低速網絡,Outlook都優先使用HTTP格式傳輸數據。將身份驗證改爲基本身份驗證和RPC虛擬目錄驗證方式一致,如下圖所示
 
完成Outlook的配置,我們以Administrator的身份登錄Outlook,這時候出現身份驗證,提示輸入用戶名和密碼(基本身份驗證)
進入郵箱後查看Outlook“連接狀態”(按住Ctrl點擊圖標)連接使用的是HTTPS,實驗成果!!!如下圖所示
 
這樣以來OutlookRPC/RPC Over HTTPS訪問Exchange郵箱就完成了,爽死我了,都幾點了2:45,歡迎大家參開,謝謝啦!
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章