最 近,單位有一個新的項(xiàng)目啟動,需要內(nèi)部電腦訪問外部某單位一臺服務(wù)器的IIS(IP地址為10.155.215.70)應(yīng)用,端口號為5060。網(wǎng)絡(luò)邏輯結(jié)構(gòu)如圖1所示,內(nèi)網(wǎng)電腦→核心交換機(jī)→IPS設(shè)備→Juniper防火墻→外部IIS服務(wù)器。

圖1 簡式邏輯結(jié)構(gòu)圖
我們通過以下幾個步驟,將內(nèi)網(wǎng)與外部地址10.155.215.70連通。
1.在核心交換機(jī)上做了路由策略:ip routestatic 10.155.215.70 32 192.168. 100.251
2.在Juniper防火墻上開通路由允許通過策略以及NAT策略。
3.ISP設(shè)備為透明模式。
上述步驟設(shè)置完畢后做測試。首先Ping命令測試,內(nèi)網(wǎng)某臺電腦Ping外部服務(wù)器10.155.215.70,結(jié)果如圖2所示,能Ping通。接著做 telnet測 試,telnet 10.155.215.70 5060,結(jié)果也是能通的。
但是,在通過瀏覽器訪問http://10.155.215.70:5060時(shí),一直顯示無法訪問,后來嘗試訪問該外部服務(wù)器的其他端口,比 如http://10.155.215.70:5070,http://10.155.215.70:5080等 均 能 正常訪問,此時(shí)怎么也想不明白,是什么原因?qū)е聼o法訪問http://10.155.215.70:5060這網(wǎng)址。
經(jīng)重新商討,最終決定采取排除法一步步找原因。
在內(nèi)網(wǎng)中搭建一臺IIS服務(wù)器,新建Web站點(diǎn)頁面并設(shè)置5060端口,之后通過內(nèi)網(wǎng)某臺PC電腦訪問此Web頁面,測試結(jié)果能正常訪問,證明內(nèi)網(wǎng)環(huán)境沒有問題。

圖2 Ping測試

圖3 ALG設(shè)置
將IPS電源直接切斷(基于二層回退和掉電保護(hù)的機(jī)制),再從內(nèi)網(wǎng)PC訪問http://10.155.215.70:5060地址,測試結(jié)果依然顯示無法訪問成功,證明IPS設(shè)備沒有阻攔此端口設(shè)置。
將連接到Juniper防火墻的線路直接連到筆記本電腦上,設(shè)置好相應(yīng)的IP地址后,再訪問http://10.155.215.70:5060地址,測試結(jié)果顯示訪問成功,證明外部環(huán)境設(shè)置沒有問題。
經(jīng)過以上幾步測試后,最終將問題確定在Juniper防火墻上。經(jīng)過專業(yè)人士細(xì)心診斷,發(fā)現(xiàn)Juniper防 火 墻 有 一 個“ALG”(Application Level Gateway,應(yīng)用級網(wǎng)關(guān))功能菜單,里面有一項(xiàng)SIP(Session Initiation Protocol,會話初始協(xié)議)選項(xiàng),它所占用的端口正好是5060端口,將它改成未勾選后保存應(yīng)用(如圖 3),內(nèi)網(wǎng)電腦訪問http://10.155.215.70:5060 地址,測試結(jié)果顯示訪問成功,證明就是這個Juniper防火墻的設(shè)置問題,導(dǎo)致內(nèi)網(wǎng)電腦一直無法訪問外部服務(wù)器Web站點(diǎn)的5060端口地址,但是Telnet 等方式都是能正常通的,這就讓人很容易產(chǎn)生錯覺。
防火墻是一把“雙刃劍”,在給予內(nèi)部網(wǎng)強(qiáng)大安全的同時(shí),也會對出口的訪問做很多限制。就這次事件而言,Web站點(diǎn)使用的5060端口就是一個常用端口,而Juniper防火墻的應(yīng)用級網(wǎng)關(guān)功能默認(rèn)是不允許此端口當(dāng)普通端口使用,故而發(fā)生了這種應(yīng)用層面的錯誤。