Outlook通过RPC或RPC over HTTPS访问Exchane邮箱:Exchange2003系列之四
生活随笔
收集整理的這篇文章主要介紹了
Outlook通过RPC或RPC over HTTPS访问Exchane邮箱:Exchange2003系列之四
小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.
Outlook通過RPC/RPC Over HTTPS訪問Exchange郵箱
我們?nèi)绾蔚弥?/span>Outlook的連接狀態(tài)呢?Outlook和Exchange服務(wù)器是用RPC連接還是RPC Over HTTPS呢,這個(gè)問題很簡單。按住Ctrl鍵,右鍵單擊屏幕右下角的Outlook圖標(biāo),如下圖所示,選擇“連接狀態(tài)”
看看連接狀態(tài)到底是什么樣,如下圖所示,現(xiàn)在Outlook和exchange服務(wù)器是靠RPC連接的。
接下來選擇CA服務(wù)器類型,由于我們部署的是域中的第一臺(tái)證書服務(wù)器,因此選擇了“企業(yè)根”類型,由于和Active Directory的集成,企業(yè)根比獨(dú)立根更方便。
注意:CA服務(wù)器安裝完成后,Berlin和Istanbul最好使用 Gpupdate/force來刷新一下組策略,確保Florence已經(jīng)成為了被信任的證書頒發(fā)機(jī)構(gòu)。
選擇“立即將證書請求發(fā)送到聯(lián)機(jī)證書頒發(fā)機(jī)構(gòu)”,這是創(chuàng)建企業(yè)根CA的好處,在線申請很方便
單位及部門信息也不重要,描述性的,隨意填寫
接下來填寫證書中的地理信息參數(shù),SSL端口(用默認(rèn)值443,不要改),選擇證書頒發(fā)機(jī)構(gòu),完成申請后默認(rèn)網(wǎng)站會(huì)立即收到頒發(fā)的證書。查看一下證書,如下圖所示。至此,Exchange服務(wù)器證書申請完成。
F? 配置客戶機(jī)上的Outlook 最后,我們應(yīng)該來更改Outlook配置了,我們要讓Outlook把RPC包封裝成HTTP格式。在Istanbul上,打開控制面板-郵件-電子郵件賬號(hào),如下圖所示,選擇“查看或更改現(xiàn)有電子郵件賬戶”
不用更改現(xiàn)有的參數(shù),選擇“其他設(shè)置”
Exchange代理服務(wù)器處填寫Exchange服務(wù)器的完全合格域名berlin.exchtest.com,這個(gè)名稱和我們申請證書的公用名稱以及配置Exchange服務(wù)器注冊表時(shí)填寫的RPC服務(wù)器名應(yīng)該完全一樣。選擇無論是在快速網(wǎng)絡(luò)還是在低速網(wǎng)絡(luò),Outlook都優(yōu)先使用HTTP傳送數(shù)據(jù),如果不能使用HTTP進(jìn)行傳輸再嘗試使用RPC。身份驗(yàn)證方式從NTLM更改為基本身份驗(yàn)證,和RPC虛擬目錄的驗(yàn)證方式一致。
更改完Outlook的設(shè)置后,啟動(dòng)Outlook,出現(xiàn)身份驗(yàn)證窗口,輸入用戶名和口令,登錄進(jìn)入郵箱
查看Outlook的連接狀態(tài),如下圖所示,連接使用的是HTTPS,實(shí)驗(yàn)成功!
?
我們在前面的文章中已經(jīng)介紹了Exchange郵箱的創(chuàng)建和配置,現(xiàn)在我們來看看如何訪問Exchange郵箱。訪問郵箱我們可以通過以下方式 A? 用Outlook作客戶端軟件? 通過RPC/RPC Over HTTPS訪問 B? 用IE作客戶端軟件?? 通過HTTP/HTTPS訪問 C? 用Outlook Express作客戶端軟件? 通過SMTP/POP3訪問 D? 用Outlook Express作客戶端軟件? 通過IMAP訪問 E? 通過EXIFS訪問?
從性能和安全考慮,用戶傾向于采用Outlook和IE訪問郵箱,這兩種方式無論是性能還是安全與其他方式相比明顯占優(yōu)。Outlook和IE再進(jìn)行對比,顯然號(hào)稱Exchange最佳客戶端軟件的Outlook還是更勝一籌。下面我們就來看看如何用Outlook通過RPC/RPC Over HTTPS訪問Exchange郵箱。?
在完成具體實(shí)現(xiàn)方法之前,我們要先了解一下RPC協(xié)議的特點(diǎn),然后才能明白為什么很多防火墻管理員對RPC很頭疼?為什么RPC數(shù)據(jù)包需要封裝成HTTP格式??
RPC是遠(yuǎn)端過程調(diào)用的縮寫,RPC協(xié)議特點(diǎn)很鮮明。普通的基于Winsock的網(wǎng)絡(luò)服務(wù)大多有自己的固定端口,比如FTP守護(hù)21,HTTP守護(hù)80,但基于RPC實(shí)現(xiàn)的服務(wù)卻可以守護(hù)隨機(jī)端口。隨機(jī)端口?!有沒有搞錯(cuò)!客戶端程序怎么知道每次隨機(jī)產(chǎn)生的監(jiān)聽端口是多少?客戶端該如何連接服務(wù)器呢。為了解決這些問題,RPC設(shè)計(jì)成這樣的工作方式。首先,每個(gè)基于RPC的服務(wù)都有一個(gè)UUID,UUID是一組128位長的數(shù)字,被用來區(qū)分RPC服務(wù)。UUID的定義是國際標(biāo)準(zhǔn),跨操作系統(tǒng)。例如Exchange信息存儲(chǔ)服務(wù)的UUID是A4F1DB00-CA47-B31F-00DD010662DA。每次這些基于RPC的服務(wù)啟動(dòng)時(shí)都會(huì)選擇一個(gè)高端端口進(jìn)行監(jiān)聽,這個(gè)端口可以是隨機(jī)的,然后這些服務(wù)會(huì)把自己的UUID以及自己這次監(jiān)聽的端口存儲(chǔ)在終點(diǎn)映射器(End Point Mapper 簡稱EPM)的一個(gè)表中 ,EPM是專門為RPC設(shè)計(jì)的一個(gè)服務(wù),端口是135,EPM記錄了本機(jī)有多少個(gè)基于RPC的服務(wù)以及這些服務(wù)監(jiān)聽的高端端口各是多少。 現(xiàn)在假設(shè)有一個(gè)客戶機(jī)要訪問服務(wù)器上的Exchange信息存儲(chǔ)服務(wù),客戶機(jī)首先要連接服務(wù)器的135端口,向EPM發(fā)起一個(gè)查詢請求,查詢請求中描述了自己所請求服務(wù)的UUID,此例應(yīng)是A4F1DB00-CA47-B31F-00DD010662DA,然后請EPM告知這個(gè)服務(wù)對應(yīng)的端口是多少。EPM查詢后告訴客戶機(jī),你所請求的這個(gè)服務(wù)在6001端口監(jiān)聽。客戶機(jī)接到這個(gè)答案后,接下來就會(huì)去連接6001端口,和Exchange信息存儲(chǔ)服務(wù)勝利會(huì)師了! 聽了上面的描述,大家就明白了為什么很多防火墻管理員對RPC很頭疼,就因?yàn)?/span>RPC的動(dòng)態(tài)端口!普通防火墻工作在網(wǎng)絡(luò)層,傳輸層的居多,基本上只開放幾個(gè)固定端口,用來保障網(wǎng)絡(luò)安全。但如果防火墻后面有RPC服務(wù),就麻煩了,為了保證RPC服務(wù)能被順利訪問,管理員有可能要被迫開放1024以上的所有高端端口!但如果開放得這么多,那防火墻也就成篩子了…..所以這個(gè)問題直到應(yīng)用層防火墻問世以后才得以較好解決,例如ISA就作得不錯(cuò),以后我們會(huì)給大家介紹,這里就不多說了。 電信部門對RPC服務(wù)也比較敏感,前兩年的沖擊波,震蕩波等病毒,就是利用了RPC的一些漏洞在互聯(lián)網(wǎng)上大肆傳播,危害巨大。電信部門聞風(fēng)喪膽,唯恐避之不及,干脆采用一刀切的手段,有些運(yùn)營商把訪問135端口的數(shù)據(jù)包直接丟棄,來它個(gè)難言之隱,一丟了之。這下運(yùn)營商省事了,工程師們費(fèi)事了。所有有時(shí)候Exchange服務(wù)器在內(nèi)網(wǎng)用RPC訪問很正常,一放到公網(wǎng)用RPC訪問就很容易出問題。罪魁禍?zhǔn)灼鋵?shí)是后臺(tái)的運(yùn)營商,所以工程師們?yōu)榱藨?yīng)付電信的封鎖,想出了給RPC包化化妝,封裝給HTTP包這樣的主意。這也是為什么今天我們要嘗試用RPC/RPC Over HTTPS來訪問郵箱的原因。?
介紹一下今天的實(shí)驗(yàn)環(huán)境,如下圖所示,由三臺(tái)虛擬機(jī)構(gòu)成,Florence是exchtest.com的域控制器,CA服務(wù)器,Berlin是Exchange+SP2,Istanbul是域內(nèi)的工作站,安裝了Outlook2003,用來作訪問郵箱的客戶機(jī)。三臺(tái)計(jì)算機(jī)的操作系統(tǒng)都安裝了Win2003中文企業(yè)版,DNS服務(wù)器是我的物理主機(jī)192.168.2.24。?
?
一? Outlook通過RPC訪問Exchange郵箱?
這個(gè)操作很easy,只要在客戶機(jī)上為Outlook創(chuàng)建一個(gè)正確的配置文件并注意權(quán)限問題就可以了,以訪問管理員郵箱為例,具體如下 A?? 在Isatnbul上以exchtest\administrator登錄,保證登錄用戶有訪問郵箱的權(quán)限?
B? 為Outlook創(chuàng)建配置文件,啟動(dòng)Outlook,彈出Outlook配置向?qū)?#xff0c;點(diǎn)擊下一步?
Outlook詢問是否將Outlook Express的郵件賬號(hào)升級(jí)過來,選擇“不升級(jí)”,下一步?
Outlook詢問是否要配置一個(gè)郵箱賬號(hào),當(dāng)然選“是“,下一步?
Outlook詢問后臺(tái)郵件服務(wù)器的類型,選擇“Microsoft Exchange Server”,下一步?
??
?
接下來我們填寫了Exchange服務(wù)器的完全合格域名 berlin.exchtest.com,要訪問的郵箱是administrator,不使用緩存Exchange模式,完成配置后登錄進(jìn)入administrator的郵箱。?
我們?nèi)绾蔚弥?/span>Outlook的連接狀態(tài)呢?Outlook和Exchange服務(wù)器是用RPC連接還是RPC Over HTTPS呢,這個(gè)問題很簡單。按住Ctrl鍵,右鍵單擊屏幕右下角的Outlook圖標(biāo),如下圖所示,選擇“連接狀態(tài)”
看看連接狀態(tài)到底是什么樣,如下圖所示,現(xiàn)在Outlook和exchange服務(wù)器是靠RPC連接的。
?
提示:如果Outlook的配置文件有誤,導(dǎo)致無法進(jìn)入郵箱,可利用控制面板-郵件-顯示配置文件,刪除當(dāng)前的配置文件。然后重新啟動(dòng)Outlook,Outlook會(huì)提示你創(chuàng)建新的配置文件。?
二? Outlook通過RPC Over? HTTPS訪問郵箱 這種郵箱訪問方式意味著要將Outlook發(fā)出的RPC數(shù)據(jù)包封裝成HTTP格式,然后用SSL進(jìn)行加密,服務(wù)器收到加密數(shù)據(jù)后,先對數(shù)據(jù)進(jìn)行解密,再將HTTP包還原成RPC格式。要達(dá)到這個(gè)目標(biāo),需要以下步驟: A? Exchange服務(wù)器安裝“HTTP代理上的RPC” B? 對“HTTP代理上的RPC進(jìn)行配置” C? 創(chuàng)建CA服務(wù)器 D? Exchange服務(wù)器申請證書 E? 配置IIS的身份驗(yàn)證方式 F? 配置客戶機(jī)上的Outlook?
我們從第一步開始 A? Exchange服務(wù)器安裝“HTTP代理上的RPC” 這是最基本的一步,目的是讓Exchange服務(wù)器有能力對封裝在HTTP包內(nèi)的RPC數(shù)據(jù)包進(jìn)行解封裝,將其還原為RPC數(shù)據(jù)包。我們在Exchange服務(wù)器上,打開控制面板-添加或刪除程序-添加/刪除Windows組件,找到網(wǎng)絡(luò)服務(wù)組件,點(diǎn)擊詳細(xì)信息,選擇安裝“HTTP代理上的RPC”,如下圖所示?
安裝了“HTTP代理上的RPC”后,在IIS的默認(rèn)web站點(diǎn)中多出一個(gè)虛擬目錄RPC,如下圖所示,RPC虛擬目錄中有一個(gè)Rpcproxy.dll的動(dòng)態(tài)鏈接庫。客戶機(jī)將RPC包封裝為HTTP格式,然后加密后發(fā)送到服務(wù)器的RPC虛擬目錄下(這個(gè)虛擬目錄的名稱是約定好的,不能改變),對HTTP包進(jìn)行解封裝的工作主要Rpcproxy.dll來完成。?
B? 對“HTTP代理上的RPC” 進(jìn)行配置 “HTTP代理上的RPC”需要進(jìn)行什么配置呢,主要是RPC端口。“HTTP代理上的RPC”可以將封裝在HTTP包內(nèi)的RPC數(shù)據(jù)解封裝出來,但對HTTP包內(nèi)的RPC數(shù)據(jù)包有端口限制,默認(rèn)情況下,只允許RPC數(shù)據(jù)包的端口范圍在100-5000。那Exchange服務(wù)器使用的RPC服務(wù)端口在不在這個(gè)范圍內(nèi)呢?很遺憾,不在。Exchange服務(wù)器使用的RPC服務(wù)使用的常用端口有6001,6002,6004等,都超出了100-5000的范圍,所以我們要對“HTTP代理上的RPC”進(jìn)行配置,讓它將RPC端口擴(kuò)大一些,在本例中,我們將其更改為100-7000。 我們可以通過注冊表,也可以通過win2003 Resource? kit中的Rpccfg.exe進(jìn)行修改,我們演示一下如何用注冊表進(jìn)行修改,在Exchange服務(wù)器上運(yùn)行Regedit.exe,定位到[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Rpc\RpcProxy\ValidPorts],如下圖所示:將鍵值從原來的 BERLIN:100-5000修改為BERLIN.EXCHTEST.COM:100-7000。100-7000大家都理解了,計(jì)算機(jī)名為什么也要修改呢,這個(gè)參數(shù)取決于客戶機(jī)訪問服務(wù)器時(shí)用哪種方式描述服務(wù)器,是用NETBIOS名稱例如[url]HTTP://Berlin[/url],還是完全合格域名例如[url]HTTP://Berlin.Exchtest.com[/url],再或者干脆用IP地址。考慮到訪問者有可能來源于廣域網(wǎng)上,我們決定用完全合格域名來表示。 提醒一下,一旦決定客戶機(jī)訪問服務(wù)器是用完全合格域名的方式,那接下來Exchange服務(wù)器申請證書時(shí),證書名稱也要用完全合格域名。?
順便介紹一下,我們怎么知道自己機(jī)器上的RPC服務(wù)使用了哪些端口呢?微軟的Resource Kit工具集中提供了一個(gè)Rpcdump.exe的工具,我們把它拷貝到Exchange服務(wù)器上,執(zhí)行 Rpcdump /v /i,在輸出的結(jié)果中可以看到本機(jī)注冊的RPC服務(wù)的UUID以及端口號(hào),如下圖所示:?
C? 創(chuàng)建CA服務(wù)器 RPC Over HTTPS意味著RPC包被封裝成HTTP格式后,還要利用SSL進(jìn)行加密處理,這樣就需要web服務(wù)器提供證書,web服務(wù)器的證書從何而來?CA服務(wù)器,所以我們需要在域內(nèi)部署CA服務(wù)器。在我們的實(shí)驗(yàn)環(huán)境中,我們使用Florence承擔(dān)這個(gè)角色,在Florence上,先確認(rèn)IIS組件已經(jīng)安裝,然后打開控制面板-添加或刪除程序-添加/刪除Windows組件,勾選“證書服務(wù)”,Windows彈出窗口警告一旦安裝證書服務(wù),計(jì)算機(jī)名以及計(jì)算機(jī)角色都不能再進(jìn)行更改。如下圖所示:接下來選擇CA服務(wù)器類型,由于我們部署的是域中的第一臺(tái)證書服務(wù)器,因此選擇了“企業(yè)根”類型,由于和Active Directory的集成,企業(yè)根比獨(dú)立根更方便。
?
接下來輸入CA的公用名稱,在此我們輸入 ITETCA,下一步后需要配置證書數(shù)據(jù)庫的路徑,使用默認(rèn)設(shè)置,完成CA服務(wù)器的安裝。注意:CA服務(wù)器安裝完成后,Berlin和Istanbul最好使用 Gpupdate/force來刷新一下組策略,確保Florence已經(jīng)成為了被信任的證書頒發(fā)機(jī)構(gòu)。
?
D? Exchange服務(wù)器申請證書 域內(nèi)有了CA服務(wù)器,Exchange服務(wù)器就可以申請證書了,打開管理工具中的Internet信息服務(wù)(IIS)管理器,右鍵點(diǎn)擊默認(rèn)網(wǎng)站,選擇屬性-目錄安全性,如下圖所示。點(diǎn)擊服務(wù)器證書?
?
選擇新建證書,準(zhǔn)備進(jìn)行證書申請選擇“立即將證書請求發(fā)送到聯(lián)機(jī)證書頒發(fā)機(jī)構(gòu)”,這是創(chuàng)建企業(yè)根CA的好處,在線申請很方便
?
?
輸入證書名稱以及密鑰長度,使用默認(rèn)設(shè)置就可以了單位及部門信息也不重要,描述性的,隨意填寫
?
?
證書公用名稱,這是關(guān)鍵,要用完全合格域名,和剛才修改注冊表時(shí)所規(guī)定的計(jì)算機(jī)名要保持一致,客戶機(jī)訪問Exchange服務(wù)器時(shí)也要使用這個(gè)計(jì)算機(jī)名。如果客戶機(jī)訪問服務(wù)器使用的格式是 [url]Https://berlin[/url],客戶機(jī)會(huì)被提示證書的名稱和訪問的站點(diǎn)不一致。接下來填寫證書中的地理信息參數(shù),SSL端口(用默認(rèn)值443,不要改),選擇證書頒發(fā)機(jī)構(gòu),完成申請后默認(rèn)網(wǎng)站會(huì)立即收到頒發(fā)的證書。查看一下證書,如下圖所示。至此,Exchange服務(wù)器證書申請完成。
?
E? 配置IIS的身份驗(yàn)證方式 接下來選擇IIS的身份驗(yàn)證方式,客戶機(jī)的Outlook把RPC封裝成HTTP后,經(jīng)過SSL加密后傳到Exchange服務(wù)器默認(rèn)網(wǎng)站的RPC虛擬目錄,由于Outlook的訪問目標(biāo)是郵箱,因此RPC虛擬目錄默認(rèn)采用的匿名驗(yàn)證方式是肯定不行的。那我們選擇哪種驗(yàn)證方式呢?建議最好選擇“基本”驗(yàn)證方式,畢竟基本驗(yàn)證是工業(yè)標(biāo)準(zhǔn),不用考慮兼容性問題。那有人要問了,基本驗(yàn)證是采用明文方式傳輸數(shù)據(jù),就不怕安全性方面有問題嗎?不用擔(dān)心,基本驗(yàn)證不能保護(hù)數(shù)據(jù)安全,但SSL可以,別忘了RPC封裝成HTTP后還要用SSL加密! 打開管理工具-Internet信息服務(wù)(IIS)管理器-默認(rèn)網(wǎng)站-RPC-屬性-目錄安全性,如下圖,在身份驗(yàn)證和訪問控制上選擇“編輯”?
去掉“啟用匿名訪問”和“集成Windows驗(yàn)證”,勾選“基本身份驗(yàn)證,”確定結(jié)束?
F? 配置客戶機(jī)上的Outlook 最后,我們應(yīng)該來更改Outlook配置了,我們要讓Outlook把RPC包封裝成HTTP格式。在Istanbul上,打開控制面板-郵件-電子郵件賬號(hào),如下圖所示,選擇“查看或更改現(xiàn)有電子郵件賬戶”
?
這是我們剛剛在Outlook中創(chuàng)建的電子郵件賬號(hào),選擇“更改”不用更改現(xiàn)有的參數(shù),選擇“其他設(shè)置”
?
?
選擇“連接”標(biāo)簽,勾選“使用HTTP連接到我的Exchange郵箱”,點(diǎn)擊“Exchange代理服務(wù)器設(shè)置”Exchange代理服務(wù)器處填寫Exchange服務(wù)器的完全合格域名berlin.exchtest.com,這個(gè)名稱和我們申請證書的公用名稱以及配置Exchange服務(wù)器注冊表時(shí)填寫的RPC服務(wù)器名應(yīng)該完全一樣。選擇無論是在快速網(wǎng)絡(luò)還是在低速網(wǎng)絡(luò),Outlook都優(yōu)先使用HTTP傳送數(shù)據(jù),如果不能使用HTTP進(jìn)行傳輸再嘗試使用RPC。身份驗(yàn)證方式從NTLM更改為基本身份驗(yàn)證,和RPC虛擬目錄的驗(yàn)證方式一致。
更改完Outlook的設(shè)置后,啟動(dòng)Outlook,出現(xiàn)身份驗(yàn)證窗口,輸入用戶名和口令,登錄進(jìn)入郵箱
查看Outlook的連接狀態(tài),如下圖所示,連接使用的是HTTPS,實(shí)驗(yàn)成功!
總結(jié)
以上是生活随笔為你收集整理的Outlook通过RPC或RPC over HTTPS访问Exchane邮箱:Exchange2003系列之四的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: Feature Schema中Modul
- 下一篇: 【C#食谱】【杭帮菜】菜单2:写一个TC