溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

ASA防火墻外部web應(yīng)用端口與默認(rèn)審查協(xié)議相沖突的解決方法

發(fā)布時(shí)間:2020-09-09 22:11:00 來(lái)源:網(wǎng)絡(luò) 閱讀:710 作者:碧云天 欄目:安全技術(shù)

.概述:

   今天QQ收到一位朋友的求助,如下環(huán)境,查看了ASA的配置,策略是全通,居然無(wú)法訪問(wèn),也感到困惑。

ASA防火墻外部web應(yīng)用端口與默認(rèn)審查協(xié)議相沖突的解決方法

   如是用GNS3搭建環(huán)境測(cè)試,在防火墻兩側(cè)進(jìn)行抓包,發(fā)現(xiàn)TCP三次握手正常,但是位于防火墻內(nèi)側(cè)客戶端發(fā)出的http get包卻被防火墻丟棄了,用google 輸入關(guān)鍵字:ASA tcp 2000搜到如下鏈接:

http://blog.csdn.net/yangcage/article/details/1787558

http://www.petenetlive.com/KB/Article/0000027.htm

   終于明白:是因?yàn)?/span>ASA把訪問(wèn)外部http tcp 2000端口的流量當(dāng)成了skinny協(xié)議的流量,而實(shí)際是http流量,因?yàn)閮煞N協(xié)議流量的數(shù)據(jù)結(jié)構(gòu)肯定不相同,所有當(dāng)TCP三次握手完成后,后面的http應(yīng)用的包被丟棄。如是進(jìn)一步測(cè)試,測(cè)試分三種情況:

第一種是外部web應(yīng)用的端口不在默認(rèn)審查之列,比如TCP 8080;

第二種是外部web應(yīng)用的端口在審查之列,但是實(shí)際應(yīng)用卻沒(méi)有這種流量,比如TCP 2000;

第三種是外部web應(yīng)用的端口在審查之列,而默認(rèn)審查的協(xié)議又需要開(kāi)啟的情況

二.測(cè)試拓?fù)洌?/span>

ASA防火墻外部web應(yīng)用端口與默認(rèn)審查協(xié)議相沖突的解決方法


三.基本配置:

A.PC1:

IP:10.1.1.8/24,GW:10.1.1.1

B.ASA842防火墻:

interface GigabitEthernet0
nameif Inside
security-level 100
ip address 10.1.1.1 255.255.255.0
no shut
interface GigabitEthernet1
nameif Outside
security-level 0
ip address 202.100.1.1 255.255.255.0
no shut

object network Inside-net
subnet 10.1.1.0 255.255.255.0

nat (Inside,Outside) dynamic interface

C.WebServer:

單網(wǎng)卡設(shè)置兩個(gè)IP:202.100.1.100/24,202.100.1.101/24

上面運(yùn)行IIS。

四.測(cè)試步驟:

A.外部web應(yīng)用的端口不在默認(rèn)審查之列,比如8080

這種情況不需要防火墻做額外配置,按照防火墻默認(rèn)的訪問(wèn)規(guī)則,inside的PC1就可以直接通過(guò)http://202.100.1.100:8080訪問(wèn)outside的WebServer服務(wù)器。

B.外部web應(yīng)用的端口在默認(rèn)審查之列,但是實(shí)際應(yīng)用卻沒(méi)有這種流量

比如外部web端口為2000,只需將默認(rèn)的TCP 2000skinny協(xié)議審查取消:

policy-map global_policy

class inspection_default

no inspect skinny

這樣Inside的PC1既可以通過(guò)http://202.100.1.100:2000訪問(wèn)Outside的WebServer服務(wù)器,也可以通過(guò)http://202.100.1.101:2000訪問(wèn)Outside的WebServer服務(wù)器。

C.外部web應(yīng)用的端口在默認(rèn)審查之列,實(shí)際應(yīng)用也有這種流量

比如外部web端口為TCP 2000,而實(shí)際情況TCP 2000 skinny協(xié)議流量也有,因此不能簡(jiǎn)單把默認(rèn)的skinny審查干掉完事,

①如下方法不可行

access-list tcp2000web permit tcp  any host 202.100.1.101 eq 2000
class-map tcp2000web_traffic
 match access-list tcp2000web
class-map skinny_traffic
match port tcp eq 2000
policy-map global_policy
class inspection_default
  no inspect skinny
class tcp2000web-traffic
 inspect http
class skinny-traffic
 inspect skinny

-----------------------------------

ciscoasa# show service-policy
Global policy:
 Service-policy: global_policy
   Class-map: inspection_default
     Inspect: dns preset_dns_map, packet 0, drop 0, reset-drop 0
     .................省略部分.......
   Class-map: web2000
     Inspect: http, packet 4, drop 0, reset-drop 0
   Class-map: global_skinny
     Inspect: skinny , packet 4, drop 1, reset-drop 0
              tcp-proxy: bytes in buffer 0, bytes dropped 0
貌似同一條policy-map的前后class-map的執(zhí)行關(guān)系,有點(diǎn)像接口和全局的policy-map的執(zhí)行關(guān)系,如果審查通過(guò),會(huì)被后面的執(zhí)行:我訪問(wèn)的是http包,前面的Class-map: web2000審查通過(guò)了,但是后面的Class-map: global_skinny干掉了。

②如下方法可以:

access-list skinny extended deny tcp any host 202.100.1.100 eq 2000
access-list skinny extended permit tcp any any eq 2000
class-map skinny_traffic
match access-list skinny
policy-map global_policy
classinspection_default
 no inspect skinny
class skinny_traffic
 inspect skinny

這時(shí)Inside的PC1就可以通過(guò)http://202.100.1.100:2000訪問(wèn)Outside的WebServer服務(wù)器,但是不能通過(guò)http://202.100.1.101:2000(因?yàn)檎J(rèn)證這個(gè)是skinny流量)

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI