Established擴展ACLweb
1、拓撲圖數據庫
2、地址表瀏覽器
Device安全 |
Interface服務器 |
IP address網絡 |
R1tcp |
F 0/0測試 |
172.16.63.1this |
|
F 0/1lua |
10.3.63.1 |
|
S 0/0/1 |
10.1.63.1 |
R2 |
S 0/0/1 |
10.1.63.2 |
|
S 0/0/0 |
10.2.63.2 |
R3 |
F 0/0 |
192.168.63.3 |
|
S 0/0/0 |
10.2.63.3 |
PC-1 |
NIC |
172.16.63.100 |
|
Default Gateway |
172.16.63.1 |
PC-2 |
NIC |
10.3.63.100 |
|
Default Gateway |
10.3.63.1 |
Server1 |
NIC |
192.168.63.100 |
|
Default Gateway |
192.168.63.3 |
3、靜態路由配置
配置擴展ACL前先把網絡作通,配置靜態路由。
R1(config)#ip route 172.16.63.0 255.255.255.0 10.1.63.2
R1(config)#ip route 10.2.63.0 255.255.255.0 10.1.63.2
R1(config)#ip route 192.168.63.0 255.255.255.0 10.1.63.2
R2(config)#ip route 172.16.63.0 255.255.255.0 10.1.63.1
R2(config)#ip route 10.3.63.0 255.255.255.0 10.1.63.1
R2(config)#ip route 192.168.63.0 255.255.255.0 10.2.63.3
R3(config)#ip route 10.1.63.0 255.255.255.0 10.2.63.2
R3(config)#ip route 172.16.63.0 255.255.255.0 10.2.63.2
R3(config)#ip route 10.3.63.0 255.255.255.0 10.2.63.2
R1#show ip route 查看路由表
試從PC-1 ping 到Server1
靜態路由配置完成,開始作擴展ACL實驗。
要求:
� 拒絕PC1 所在網段訪問Server 192.168.63.100 的Web 服務
� 拒絕PC2 所在網段訪問Server 192.168.63.100 的Ftp 服務
� 拒絕PC1 所在網段訪問Server 192.168.63.100 的SQL 服務
� 拒絕PC1 所在網段訪問路由器R3 的Telnet 服務
� 拒絕PC2 所在網段訪問路由器R2 的Web 服務
� 拒絕PC1 和PC2 所在網段ping Server 服務器
� 只容許路由器R3 以接口s0/1/0 爲源ping 路由器R2 的接口s0/1/1 地址,而不容許路
由器R2 以接口s0/1/1 爲源ping 路由器R3 的接口s0/1/0 地址,即單向ping.
4、實驗步驟:
(一)配置路由器
R1(config)#access-list 110 remark this is an example for extended acl
R1(config)#access-list 110 deny tcp 172.16.63.0 0.0.0.255 host 192.168.63.100 eq 80
R1(config)#access-list 110 deny tcp 10.3.63.0 0.0.0.255 host 192.168.63.100 eq 21
R1(config)#access-list 110 deny tcp 10.3.63.0 0.0.0.255 host 192.168.63.100 eq 20
R1(config)#access-list 110 deny tcp 172.16.63.0 0.0.0.255 host 192.168.63.100 eq 1433
R1(config)#access-list 110 deny tcp 172.16.63.0 0.0.0.255 host 10.2.63.3 eq 23
R1(config)#access-list 110 deny tcp 172.16.63.0 0.0.0.255 host 192.168.63.3 eq 23
R1(config)#access-list 110 deny tcp 10.3.63.0 0.0.0.255 host 10.1.63.2 eq 80
R1(config)#access-list 110 deny tcp 10.3.63.0 0.0.0.255 host 10.2.63.2 eq 80
R1(config)#access-list 110 deny icmp 172.16.63.0 0.0.0.255 host 192.168.63.100
R1(config)#access-list 110 deny icmp 10.3.63.0 0.0.0.255 host 192.168.63.100
R1(config)#access-list 110 permit ip any any
R1(config)#int s0/0/0
R1(config-if)#ip access-group 110 out
(二)配置路由器R3
R3(config)#access-list 120 deny icmp host 10.2.63.2 host 10.2.63.3 echo
R3(config)#access-list 120 permit ip any any
R3(config)#int s0/0/0
R3(config-if)#ip access-group 120 in
4、實驗調試
(一)路由器R1 上查看ACL110
R1#show ip access-lists 110
(二)路由器R3 和路由器R2 互相ping
(三)路由器R3 查看ACL 120
R3#show ip access-lists 120
(四)配置命令擴展ACL
R3(config)#ip access-list extended acl120
R3(config-ext-nacl)#deny icmp host 10.2.63.2 host 10.2.63.3 echo
R3(config-ext-nacl)#permit ip any any
R3(config-ext-nacl)#int s0/1/0
R3(config-if)#ip access-group acl120 in
R3#show ip access-lists
擴展ACL實驗配置完成,驗證成功
動態ACL
拓撲圖
R2和R3爲內網,R4爲外網,配置R1,默認容許全部telnet經過,由於要使用telnet作認證,而後只有當認證經過以後,ICMP才能夠經過。
這裏靜態路由配置與地址表自反ACL相同,參照上面配置作通路由便可開始該實驗配置。
1.配置Dynamic ACL
(1)配置默認不須要認證就能夠經過的數據,如telnet
R1(config)#access-list 100 permit tcp an an eq telnet
(2)配置認證以後才能經過的數據,如ICMP,絕對時間爲2分鐘。
R1(config)#access-list 100 dynamic ccie timeout 2 permit icmp any any
(3)應用ACL
R1(config)#int f0/0
R1(config-if)#ip access-group 100 in
2.測試訪問
(1)測試內網R3 telnet外網R4
從結果中看出,telnet不受限制。
(2)測試測試內網R3 ping外網R4
內網在沒有認證以前,ICMP是沒法經過的。
3.配置本地用戶數據庫
R1(config)#username ccie password cisco
4.配置全部人的用戶名具備訪問功能
R1(config)#line vty 0 181
R1(config-line)#login local
R1(config-line)#autocommand access-enable
5.內網R3作認證
當telnet路由器認證成功後,是會被關閉會話的。
6.測試內網到外網的ICMP通訊功能
認證經過以後,ICMP被放行。
7.查看ACL狀態
能夠看到動態容許的流量已放行。
基於時間的ACL
拓撲圖
前提:在R1路由器上須要提早配置好正確的時間
R1#clock set 20:00:00 apr 27 2019
本實驗靜態路由配置與地址表與第一個實驗自反ACL相同,參照上面配置作通路由。
1.配置time-range
R1(config)#time-range TELNET
R1(config-time-range)#periodic weekend 10:00 to 22:00
(定義的時間範圍爲週末的10:00 to 22:00)
2.配置ACL(配置R1在上面的時間範圍內拒絕R2到R4的telnet,其它流量所有經過。)
R1(config)#access-list 150 deny tcp host 10.1.63.2 any eq 23 time-range TELNET
R1(config)#access-list 150 permit ip any any
3.應用ACL
R1(config)#int f0/0
R1(config-if)#ip access-group 150 in
4.測試時間範圍內的流量狀況
(1)查看當前R1的時間
當前時間爲周六20:46,即在所配置的時間範圍內。
(2)測試R3向R4發起telnet會話
在規定的時間範圍內,R3向R4發起telnet會話是被拒絕的。
(3)測試除telnet外的其它流量
在規定的時間範圍內,除了telnet以外,其它流量不受限制。
(4)測試除R3以外的設備telnet狀況
能夠看到,除R3以外,其它設備telnet並不受限制。
5.測試時間範圍外的流量狀況
(1)更改當前R1的時間
更改時間爲周六23:00,即在所配置的時間範圍以外。
(2)測試R3向R4發起telnet會話
在時間範圍以外,所限制的流量被放開。
基於上下文的訪問控制
1、拓撲圖
2、地址表
Device |
Interface |
IP address |
R1 |
F 0/0 |
192.168.63.1 |
|
S 0/0/0 |
10.1.63.1 |
R2 |
S 0/0/0 |
10.1.63.2 |
|
S 0/0/1 |
10.2.63.2 |
R3 |
F 0/0 |
172.16.63.3 |
|
S 0/0/0 |
10.2.63.3 |
PC-A |
NIC |
192.168.63.4 |
|
Default Gateway |
192.168.63.1 |
PC-B |
NIC |
172.16.63.4 |
|
Default Gateway |
172.16.63.3 |
3、預配置:
在配置防火牆以前驗證設備間連通性,即先配置靜態路由
R1(config)#ip route 10.2.63.0 255.255.255.0 10.1.63.2
R1(config)#ip route 172.16.63.0 255.255.255.0 10.1.63.2
R2(config)#ip route 192.168.63.0 255.255.255.0 10.1.63.1
R2(config)#ip route 172.16.63.0 255.255.255.0 10.2.63.3
R3(config)#ip route 10.1.63.0 255.255.255.0 10.2.63.2
R3(config)#ip route 192.168.63.0 255.255.255.0 10.2.63.2
在R3啓用密碼
R3(config)#enable password a123
啓用console口密碼
R3(config)#line console 0
R3(config-line)#password b123
啓用vty行接入密碼
R3(config)#line vty 0 4
R3(config-line)#password c123
把S1、S2全部交換機接口都在Vlan1(S2配置相同)
S1(config)#int f 0/1
S1(config-if)# switchport access vlan 1
S1(config-if)# switchport trunk allowed vlan 1
S1(config)#int f 0/2
S1(config-if)# switchport access vlan 1
S1(config-if)# switchport trunk allowed vlan 1
預配置完成
驗證:在PC-B的命令提示符中ping PC-A服務器
在PC-B命令提示符中telnet路由R2的s0/0/1接口:地址時10.2.63.2.退出telnet階段
在PC-B開一個網頁瀏覽器登入PC-A來展現網頁。關掉PC-B的瀏覽器。
在PC-A的命令提示符ping PC-B
4、在R3配置一個命名IP ACl阻隔全部外網產生的流量
用ip access-list extended指令創造一個已命名的IP ACL
R3(config)#ip access-list extended out-in
R3(config-ext-nacl)# deny ip any any
R3(config-ext-nacl)# exit
在s0/0/0應用ACl
R3(config)#int s 0/0/0
R3(config-if)# ip access-group out-in in
確保進入s0/0/1接口的流量被阻隔
在PC-B命令提示符ping PC-A服務器。ICMP回送響應會被ACL阻隔
5、建立一個CBAC檢測規則
第一步 建立一個檢測規則來檢測ICMP,Telnet,和HTTP流量。
R3(config)# ip inspect name IN-OUT-IN icmp
R3(config)# ip inspect name IN-OUT-IN telnet
R3(config)# ip inspect name IN-OUT-IN http
第二步 開啓時間戳記記錄和CBAC審計跟蹤信息。
R3(config)# ip inspect audit-trail
R3(config)# service timestamps debug datetime msec
R3(config)# logging host 192.168.63.4
第三步 對在s0/0/0的出口流量用檢測規則。
R3(config-if)#int s0/0/0
R3(config-if)# ip inspect IN-OUT-IN out
第四步 驗證審計跟蹤信息正被syslog服務器記錄
在PC-B 成功ping、telnet訪問PC-A來檢測連通性,注意Telnet不了。
在PC-A ping 、Telnet PC-B來檢測連通性,這兩步都被阻隔掉
CBAC基於上下文的訪問控制配置完成。
基於區域策略的防火牆
1、拓撲圖
地址表與預配置和上一實驗(基於上下文的訪問控制)徹底一致,參照上面配置便可。
驗證基本網絡連通性
PC-A ping通PC-B
PC-B telnet到R3的s0/0/0接口
2、在R3建立區域防火牆
第一步 建立一個內部區域。
R3(config)# zone security IN-ZONE
第二步 建立外部區域
R3(config-sec-zone)# zone security OUT-ZONE
R3(config-sec-zone)# exit
定義一個流量級別和訪問列表
第一步 建立一個用來定義內部流量的ACL
R3(config)# access-list 101 permit ip 172.16.63.0 0.0.0.255 any
第二步 建立一個涉及內部流量ACL的class map
R3(config)# class-map type inspect match-all IN-NET-CLASS-MAP
R3(config-cmap)# match access-group 101
R3(config-cmap)# exit
指定防火牆策略
第一步 建立一個策略圖來肯定對匹配的流量幹啥。
R3(config)# policy-map type inspect IN-2-OUT-PMAP
第二步 定義一個檢測級別類型和參考策略圖。
R3(config-pmap)# class type inspect IN-NET-CLASS-MAP
第三步 定義檢測策略圖
Inspect這個指令調用基於上下文的訪問控制(其餘還有經過和丟棄)
R3(config-pmap-c)#inspect
應用防火牆策略
第一步 建立一對區域
R3(config)# zone-pair security IN-2-OUT-ZPAIR source IN-ZONE destination OUT-ZONE
第二步 定義策略圖來控制兩個區域的流量。
R3(config-sec-zone-pair)# service-policy type inspect IN-2-OUT-PMAP
R3(config-sec-zone-pair)# exit
第三步 把端口調用到合適的安全區域。
R3(config)# interface fa0/0
R3(config-if)# zone-member security IN-ZONE
R3(config-if)# exit
R3(config)# interface s0/0/0
R3(config-if)# zone-member security OUT-ZONE
R3(config-if)# exit
測試從IN-ZONE到OUT-ZONE的防火牆功能
第一步 PC-B ping PC-A服務器
第二步 從PC-B telnet到R2的s0/0/1口
PC-B打開網頁登到PC-A的服務器
測試外部區域到內部區域的防火牆功能,驗證配置ZPF以後外部沒法訪問內部。
第一步 PC-A ping PC-B(注意不能ping通)
第二步 R2 ping PC-B也不能ping通
基於區域策略的防火牆配置驗證完成。
自反ACL實驗配置
拓撲圖
R4爲外網,R2和R3爲內網。
地址表
先在R二、R3與R4上配置配置靜態路由
R2(config)#ip route 14.1.63.0 255.255.255.0 10.1.63.1
R3(config)#ip route 14.1.63.0 255.255.255.0 10.1.63.1
R4(config)#ip route 10.1.63.0 255.255.255.0 14.1.63.1
配置靜態路由完成,路由之間互通,便可作自反ACL
1.配置拒絕外網主動訪問內網(拒絕外網主動訪問內網,可是ICMP能夠不受限制)
(1)配置容許ICMP能夠不用標記就進入內網,其它的必須被標記才返回
R1(config)#ip access-list extended come
R1(config-ext-nacl)#permit icmp any any
R1(config-ext-nacl)#evaluate abc
(2)應用ACL
R1(config)#int f0/1
R1(config-if)#ip access-group come in
2.測試結果
(1)測試外網R4的ICMP訪問內網
能夠看到,ICMP是能夠任意訪問的
(2)測試外網R4 telnet內網
能夠看到,除ICMP以外,其它流量是不能進入內網的。
(3) 測試內網R3的ICMP訪問外網
能夠看到,內網發ICMP到外網,也正常返回了
(4) 測試內網R3發起telnet到外網
能夠看到,除ICMP以外,其它流量是不能經過的。
3.配置內網向外網發起的telnet被返回
(1)配置內網出去時,telnet被記錄爲abc,將會被容許返回
R1(config)#ip access-list extended goto
R1(config-ext-nacl)#permit tcp any any eq telnet reflect abc timeout 60
R1(config-ext-nacl)#permit ip any any
(2)應用ACL
R1(config)#int f0/1
R1(config-if)#ip access-group goto out
4.測試結果
(1)查看R3到外網的ICMP
ICMP屬正常
(3)查看內網向外網發起telnet
能夠看出,此時內網發向外網的telnet由於被標記爲abc,因此在回來時,存在缺口,能夠容許返回。
(4)查看ACL
能夠看到,有一條爲abc的ACL爲容許外網到內網的telnet,正是因爲內網發到外網的telnet被標記了,因此也自動產生了容許其返回的ACL,而且後面跟有剩餘時間。
做業總結:
自反ACL優缺點:自反訪問控制列表在第四層上分析數據流,是一個按需生成的控制列表,在沒有數據流的時候,也就是不須要的時候,會自動消失,是一種較自動化的數據控制方式,在必定程度上防止了IP地址欺騙攻擊,很是有效的保護了用戶的網絡免受黑客破壞,而且對TCP數據包最有效。對於UDP包,擴展訪問控制列表毫無辦法。
擴展ACL優缺點:標準ACL禁止或者容許的是某一主機,或者某一網段的所有數據流量,也就是隻對數據流量的來源進行控制。擴展ACL即檢查數據的來源地址也檢查數據的目的地址,還能檢查特定的協議類型和端口號,它能夠作到容許外來的web通訊,能夠去禁止外來的FTP和telnet等通訊,這點標準的ACL是作不到的。
本次做業總共須要作六個實驗,前三個實驗須要用GMS3模擬器來完成,配置指令比較簡單,只須要完成靜態路由的配置,作通網絡,便可完成實驗任務的配置。而擴展ACL與基於區域策略的防火牆的配置比較困難,在預設置時須要在PC端配上網關才能作通網絡。在配置區域策略防火牆的時候,須要咱們理解配置原理,例如須要配置Inspect命令來定義檢測策略圖,而且須要建立外部區域與內部區域,控制流量,需將端口調用到合適的安全區域,如zone-member security IN-ZONE。該實驗配置命令較多,配置時須要十分細心,只要一個命令配置錯誤,就會致使網絡不通,查錯就十分麻煩。配置過程當中經過請教同窗和查找資料,最後把實驗成功配通很是開心。