ASA ACL
阿新 • • 發佈:2017-07-22
name 是你 tran -i net 我們 訪問控制 group 占用
1.最基本的一點。
ASA上的ACL用的不是反向掩碼,而是普通的掩碼;路由器上的ACL則用反向掩碼
e.g. ASA ACL: access-list test permit ip 192.168.1.0 255.255.255.0 192.168.2.0 255.255.255.0
Router ACL: access-list 102 permit ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
另外,編輯此貼時剛發現的一點,防火墻上的ACL直接支持用字母命名,而路由器上同樣的書寫格式只能用數字,不能用
字母命名,除非換一種書寫格式才行。
e.g. ip access-list extended test permit ip 192.168.1.0 0.0.0.255 192.168.2.0 0.0.0.255
2.默認的訪問控制。
路由器上的端口如果沒有設置ACL,所有端口都是permit ip any any的,路由的宗旨是使不同網段進行通迅;防火墻上的端
口如果未設置ACL,至少部分端口以及部分方向的通迅是被阻止的,防火墻的宗旨是安全,安全就要阻止通迅。
防火墻的端口要啟用需要三個條件,一是設置nameif, 二是設置security-level,三是設置ip addr, 當然還要no shut.
int e0/0
nameif intranet
security-level 100
ip addr 192.168.1.100
在端口未關聯ACL的情況下,防火墻默認的訪問控制規則為:
從高安全級別端口發起的到低安全級別端口的訪問都允許
從低安全級別端口發起的到高健全級別端口的訪問都阻止
相同安全級別的端口之間也不能互訪,除非設置了same-security-traffic permit inter-interface
3. 防火墻的狀態表。
防火墻是有狀態的包過濾設備,它通過各種狀態表(state table)以及訪問策略來驗證進入其端口的數據包的合
法性和正確性。對於已經建立的連接,已經在狀態表中有記錄,就不需要再使用ACL進行檢查了。
端口上應用的ACL是用來確定哪些新的連接允許進入狀態表,只要進入狀態表,ACL就管不著了,
路由器不會象防火墻那樣,在狀態表中記下每個連接的特征(src addr/port dst addr/port .etc.)自動允許
由目標地址返回源地址的數據包,路由器是無狀態的,必須在每個端口上明確的設置允許所需要的數據流。
4。編輯ACL
防火墻有ASDM圖形化界面的配置工具,可以方便的對ACL進行復制,移動,插入,刪除,和修改。CLI界面也可
以對ACL進行編輯,e.g. 插入ACE,已有存在的ACL
access-list test line 1 extended permit ip 192.168.1.0 255.255.255.0 any
access-list test line 2 extended deny ip 192.168.2.0 255.255.255.0 any
現在要插入一條ACE到line 1 和line 2之間,鍵入下面命令行
access-list test line 2 extended permit ip 192.168.2.0 255.255.255.0 192.168.1.0 255.255.255.0
原來的line 2就被擠到後面,成了line 3。
access-list test line 1 extended permit ip 192.168.1.0 255.255.255.0 any
access-list test line 2 extended permit ip 192.168.2.0 255.255.255.0 192.168.1.0 255.255.255.0
access-list test line 3 extended deny ip 192.168.2.0 255.255.255.0 any
路由器編輯ACL時建議使用 ip access-list { standard | extended } 的語法,進入ACL編輯模
式,
R3(config)#ip access-list extended test
R3(config-ext-nacl)#permit ip 192.168.1.0 0.0.0.255 any /***默認序號 10
R3(config-ext-nacl)#deny ip 192.168.2.0 0.0.0.255 any /***默認序號 20
R3(config-ext-nacl)#15 permit ip 192.168.2.0 0.0.0.255 192.168.1.0 0.0.0.255 /***插入到10和20之
間
R3(config)#do sh access-list
Extended IP access list test
10 permit ip 192.168.1.0 0.0.0.255 any
15 permit ip 192.168.2.0 0.0.0.255 192.168.1.0 0.0.0.255
20 deny ip 192.168.2.0 0.0.0.255 any
R3(config)#ip access-list resequence test 10 10 /***重新編排序號,從10開始,遞
增10
R3(config)#do sh access-list
Extended IP access list test
10 permit ip 192.168.1.0 0.0.0.255 any
20 permit ip 192.168.2.0 0.0.0.255 192.168.1.0 0.0.0.255
30 deny ip 192.168.2.0 0.0.0.255 any
R3(config)#
5。防火墻中有對象組(Object Group)用於簡化ACL的配置管理,路由器沒有相關概念
Object Group允許把任意多個,可設置同一訪問策略的,IP地址,IP協議及端口號組成一組,共享一條ACE,還
可以重復使用。大大減少了必須的ACE數量,簡化了ACL配置;同時,修改Object Group中的成員後,與之相關
聯的ACL會自動更新,這樣也簡化了ACL的維護工作。
e.g.
ciscoasa(config)# object-group network OFFICE-AREA
ciscoasa(config-network)# network-object 192.168.1.0 255.255.255.0
ciscoasa(config-network)# network-object 192.168.10.0 255.255.255.0
ciscoasa(config-network)# network-object 172.20.0.0 255.255.0.0
ciscoasa(config-network)# exit
ciscoasa(config)# object-group service TO-DMZ tcp
ciscoasa(config-service)# port-object eq http
ciscoasa(config-service)# port-object eq smtp
ciscoasa(config-service)# port-object eq https
ciscoasa(config-service)# port-object eq ftp
ciscoasa(config-service)#exit
ciscoasa(config)#access-list INSIDE-IN extended permit tcp object-group OFFICE-AREA gt 1024
172.16.1.0 255.255.255.0 object-group TO-DMZ
路由器ACL in和out的對比 in和out是相對的,比如: A(s0)—–(s0)B(s1)——–(s1)C 假設你現在想拒絕A訪問C,並且假設要求你是在B上面做ACL(當然C上也可以),我們把這個拓撲換成一個例子: B的s0口是前門,s1口是後門,整個B是你家客廳,前門外連的是A,客廳後門連接的是你家金庫(C) 現在要拒絕小偷從A進來,那麽你在你家客廳做個設置,就有2種辦法: 1.在你家客廳(B)前門(B的s0)安個鐵門(ACL),不讓小偷進來(in),這樣可以達到目的 2.在你家客廳後門安個鐵門(B的s1),小偷雖然進到你家客廳,但是仍然不能從後門出去(out)到達你家金庫(C) 雖然這2種辦法(in/out)都可以達到功效,但是從性能角度上來說還是有區別的,實際上最好的辦法,就是選辦法1,就像雖然小偷沒進到金庫,至 少進到你家客廳(B),把你客廳的地毯給搞臟了(B要消耗些額外的不必要的處理) 假設你要把鐵門(ACL)安在C,那時候應該用in還是out呢? 這個問題留給你自己回答了,呵呵 相對於路由器的,穿過路由器的是out 即將進入的是in 標準acl靠近目標地址 ,擴展acl,要靠近源 實際上in和out的應用是很靈活的 註意:應該把標準訪問控制列表應用在離目的地最近的路由器上。 註意:擴展訪問控制列表應該應用在離源地址最近的路由器上,用在其他路由器上會占用不必要的資源。
ASA ACL