訪問控制列表


  1. 創建ACL

    命令語法如下:

Router(config)# access-list access-list-number { permit | deny } protocol { source source-wildcard  destination  destination-wildcard } [ operator  operan ]

    下面是命令參數的詳細說明:

  • access-list-number訪問控制列表表號,對於擴展ACL來說,是100-199的一個數字。

  • permit|deny如果滿足測試條件,則允許|拒絕該通信流量。

  • protocol用來指定協議類型,如IP、TCP、UDP、ICMP等。

  • source、destination:源和目的,分別用來標識源地址和目的地址

  • source-wildcard、destination-wildcard:反碼,source-wildcard是源反碼,與源地址向對應;destination-wildcard是目的反碼,與目的地址對應。

  • operator operanlt(小於)、gt(大於)、eq(等於)或neq(不等於)一個端口號。

例1 允許網絡192.168.1.0/24訪問網絡192.168.2.0/24的IP流量通過,而拒絕其他任何流量,ACL命令如下所示:

Router(config)#access-list 101 permit ip 192.168.2.0/24  0.0.0.255 192.168.2.0  0.0.0.255

Router(config)#access-list 101 deny ip any any

   例2 拒絕網絡192.168.1.0/24訪問FTP服務器192.168.2.2/24的IP流量通過,而允許其他任何流量,ACL命令如下所述:

Router(config)#access-list 101 deny tcp 192.168.1.0 0.0.0.255  host 192.168.2.2  eq  21

Router(config)#access-list 101 permit  ip  any any

   例3禁止網絡192.168.1.0/24中的主機ping通服務器192.168.2.2/24,而允許其他任何流量,ACL命令如下所述:

Router(config)#access-list 101 deny  icmp192.168.1.0  0.0.0.255  host 192.168.2.2  echo

Router(config)#access-list 101 permit  ip  any any

   刪除已建立的擴展ACL命令語法與標準ACL一樣,如下所示:

Router(config)#no access-list  access-list-number

    擴展ACL與標準ACL一樣,也不能刪除單條ACL語句,只能刪除整個ACL。

  1. 將ACL應用於接口

與標準ACL一樣,只有將ACL應用於接口,ACL纔會生效。

命令語法與標準ACL一樣,如下所示:

Router(config-if)#ip access-group access-list-number {in | out}

   要在接口上取消ACL的應用,可以使用如下命令:

Router(config-if)#no ip access-group access-list-number {in | out}

  • 擴展ACL的配置實例

實驗要求:

  • 拓撲圖如上所示,現允許主機PC1訪問Web服務器的WWW服務,而禁止主機PC1訪問Web服務器的其他任何服務。

  • 允許主機PC1訪問網絡192.168.2.0/24。

配置步驟:

  1. 配置全網互通。

  2. 分析在哪個接口應用擴展ACL

  • 應用在入站接口還是出站接口

    與標準ACL一樣,應該儘量把訪問控制列表應用到入站接口

  • 應用在哪臺路由器上

由於擴展ACL可以根據源IP地址、目的IP地址、指定協議、端口等過濾數據包,因此最好應用到路由器R1的入站接口。如果應用在路由器R2或R3的入站接口上,會導致所經過的路由器佔用不必要的資源。也就是說,應該把擴展ACL應用在離源地址最近的路由器上。

  1. 配置擴展ACL並應用到接口上。

    命令如下:

  1. 查看並驗證配置

  • 使用show access-list命令查看ACL配置。

  • 驗證配置

  • 在PC1上可以訪問Web服務器的WWW服務,但不能ping通Web服務器

  • 在PC1上可以ping通網絡192.168.2.0/24中的任一臺主機

  • 命令訪問控制列表的配置

  1. 創建ACL

    命令語法如下:

Router(config)#ip access-list {standard | extended} access-list-name

   參數access-list-name可以使用一個由字母、數字組合的字符串

   如果是標準命令ACL,命令語法如下所述:

Router(config-std-nacl)#[Sequence-Number] {permit | deny} source [source-wildcard]

   如果是擴展命名ACL,命令語法如下所述:

Router(config-std-nacl)#[Sequence-Number] { permit | deny }  protocol {source source-wildcard  destination destination-wildcard} [ operator operan ]

    無論是配置標準命名ACL語句還是配置擴展命名ACL語句,都有一個可選參數Sequence-Number。Sequence-Number參數表明了配置的ACL語句在命令ACL中所處的位置,默認情況下,第一條爲10,第二條爲20,依次類推。

    Sequence-Number可以很方便的將新添加的ACL語句插入到原有的ACL列表的指定位置,如果不選擇Sequence-Number,參數就會添加到ACL列表末尾並且序列號加10。

    例4 允許來自主機192.168.1.1/24的流量通過,而拒絕其他流量,標準命名ACL命令如下所述:

Router(config)# ip access-list standardcisco

Router(config-std-nacl)#permit host 192.168.1.1

Router(config-std-nacl)#deny any                                 

    使用show access-list命令查看ACL配置,結果如下所述:

Router# show access-list

Standard IP access-list cisco   //標準訪問控制列表cisco

    10permit 192.168.1.1       //配置的第1條ACL語句序列號爲10

    20 deny    any               //配置的第2條ACL語句序列號爲20  

    此時更改需求,除允許來自主機192.168.1.1/24的流量通過外,也允許來自主機192.168.2.1/24的流量通過,可以進行如下配置:

Router(config)# ip access-list standardcisco

Router(config-std-nacl)#15 permit host 192.168.2.1     //配置ACL語                                                  句序列號爲15

    再次查看配置的ACL,結果如下:

Router# show access-list

Standard IP access-list cisco  

    10permit 192.168.1.1      

15permit 192.168.2.1       //新配置的ACL語句,放到了ACL列表的指                                                  定位置

    20 deny    any                                             

注意:如果不指定序列號,則新添加的ACL被添加到列表的末尾。

例5 拒絕網絡192.168.1.0/24訪問FTP服務器192.168.2.2/24的流量通過,而允許其他任何流量,擴展命名ACL命令如下所述:

Router(config)# ip access-list extendedcisco

Router(config-ext-nacl)# deny tcp192.168.1.0 0.0.0.255 host 192.168.2.2 eq 21

Router(config-ext-nacl)#permit ip any any                        

   刪除已建立的命令ACL

   命令語法如下:

Router(config)#no ip access-list {standard | extended} access-list-name

    對命名ACL來說,可以刪除單條ACL語句,而不必刪除整個ACL。並且,ACL語句可以有選擇的插入到列表中的某個位置,使得ACL配置更加方便靈活。

    如果要刪除某一ACL語句,可以使用“no Sequence-Number”或“no ACL語句”兩種方式。例如,在例1中刪除“permit host 192.168.1.1”的語句命令如下:

Router(config)# ip access-list standardcisco

Router(config-std-nacl)# no 10

  

Router(config)# ip access-list standardcisco

Router(config-std-nacl)# no permit host 192.168.1.1

  1. 將ACL應用於接口

    創建命令ACL後,也必須將ACL應用於接口才會生效。

    命令語法如下:

Router(config-if)#ip access-group access-list-name {in | out}

   要在接口上取消命令ACL的應用,可以使用如下命令:

Router(config-if)#no ip access-group access-list-name {in | out}

  • 命名ACL配置實例

實驗要求:

一.公司新建了一臺服務器(IP地址:192.168.2.2),出於安全方面考慮要求如下:

  • 192.168.1.0/24網段中除192.168.1.1和192.168.1.3外的其餘地址都不能訪問服務器。

  • 其他公司網段都可以訪問服務器。

具體步驟:

  1. 拓撲圖如上所示,配置全網互通。

  2. 設備配置ACL如下:

  1. 使用show access-list命令查看配置的ACL信息,結果如下:

  1. 驗證配置。主機192.168.1.1和192.168.1.3能ping通服務器,主機192.168.1.2不能。

二.網絡運行一段時間後,由於公司人員調整,需要變更訪問服務器的ACL,要求如下:

  • 不允許主機192.168.1.1和192.168.1.3 訪問服務器

  • 允許主機192.168.1.2訪問服務器

具體步驟:

  1. ACL變更配置如下:

  1. 再次查看配置的ACL信息,結果如下:

  1. 驗證配置。主機192.168.1.1和192.168.1.3不能ping通服務器了,主機192.168.1.2可以ping通服務器。

注意:如果不指定序列號,則新添加的ACL被添加到列表的末尾。

  • 訪問控制列表的應用

公司內部網絡已經建成,拓撲圖如上所示。

公司內部網絡規劃如下:

  • 根據公司現有各部門主機數量和以後增加主機的情況,爲每個部門分配一個C類地址並且每個部門使用一個VLAN,便於管理。

  • 分配一個C類地址作爲設備的管理地址

    按照上述規劃配置設備,已經實現了網絡連通

    基於信息安全方面考慮,公司要求如下:

  • 限定不同的部門能夠訪問的服務器,例如:財務部只能訪問財務部服務器,生產部只能訪問生產部服務器。

  • 網絡管理員可以訪問所有服務器。

  • 網絡設備只允許網管區IP地址通過TELNET登錄,並配置設備用戶名爲benet,密碼爲123456。

  • 只有網絡管理員才能通過遠程桌面、TELNET、SSH等登錄方式管理服務器。

  • 要求所有部門之間不能互通,但都可以和網絡管理員互通。

  • 公司中有幾名信息安全員,公司要求信息安全員可以訪問服務器,但不能訪問Internet。

  • 外網只能訪問特定服務器的特定服務。

網絡規劃如下:

  • 公司全部使用192.168.0.0/16網段地址。

  • 配置設備的網管地址。其中SW3L爲192.168.0.1/24,SW1爲192.168.0.2/24,SW2爲192.168.0.3/24,R1爲1.1.1.1/32。

  • PC1爲網絡管理區主機,其IP地址爲192.168.2.2/24,網關爲192.168.2.1/24,屬於VLAN 2;PC2爲財務部主機,IP地址爲192.168.3.2/24,網關爲192.168.3.1/24,屬於VLAN 3;PC3爲信息安全員主機,IP地址爲192.168.4.2/24,網關爲192.168.4.1/24,屬於VLAN 4。

  • 在SW3L交換機VLAN 2接口的IP地址爲192.168.2.1/24,VLAN 3接口的IP地址爲192.168.3.1/24,VLAN4接口的IP地址爲192.168.4.1/24,VLAN 100接口的IP地址爲192.168.100.1/24。

  • 服務器IP地址爲192.168.100.2/24,網關地址爲192.168.100.1/24,屬於VLAN 100。

  • SW3L和R1的互聯地址爲10.0.0.0/30。

  • 配置R1路由器的Loopback接口地址的爲123.0.1.1/24,模擬外網地址。

    按照公司網絡規劃和要求配置設備。

具體配置:

  1. 配置設備,實現全網互通

    R1配置如下:

R1(config)#int f0/0

R1(config-if)#ip address 10.0.0.1  255.255.255.252

R1(config-if)#no sh

 

R1(config)#int loopback 0

R1(config-if)#ip address 123.0.1.1  255.255.255.0

 

R1(config)#ip route 192.168.0.0  255.255.0.0  10.0.0.2

 

R1(config)#int loopback 1

R1(config-if)#ip address 1.1.1.1  255.255.255.255               

   SW3L配置信息如下:

SW3L(config)#vlan 2

SW3L(config)#vlan 3

SW3L(config)#vlan 4

SW3L(config)#vlan 100

 

SW3L(config)#int f0/1

SW3L(config-if)#no switchport

SW3L(config-if)#ip address 10.0.0.2  255.255.255.252

 

SW3L(config)#iproute 0.0.0.0  0.0.0.0  10.0.0.1

 

SW3L(config)#int range int f0/13  -14

SW3L(config-if-range)#switchport trunk encapsulation dot1q

SW3L(config-if-range)#seitchport mode trunk

 

SW3L(config)#int vlan 2

SW3L(config-if)#ip address 192.168.2.1  255.255.255.0

SW3L(config-if)#no sh

 

SW3L(config)#int vlan 3

SW3L(config-if)#ip address 192.168.3.1  255.255.255.0

SW3L(config-if)#no sh

 

SW3L(config)#int vlan 4

SW3L(config-if)#ip address 192.168.4.1  255.255.255.0

SW3L(config-if)#no sh

 

SW3L(config)#int vlan 100

SW3L(config-if)#ip address 192.168.100.1  255.255.255.0

SW3L(config-if)#no sh

 

SW3L(config)#ip routing

 

SW3L(config)#int vlan 1

SW3L(config-if)#ip address 192.168.0.1 255.255.255.0

SW3L(config-if)#no sh                                       

   SW1配置信息如下:

SW1(config)#vlan 2

SW1(config)#vlan 3

SW1(config)#vlan 4

 

SW1(config)#int f0/14

SW1(config-if)#switchport mode trunk

 

SW1(config)#intf0/1

SW1(config-if)#switchport mode access

SW1(config-if)#switchport access vlan 2

 

SW1(config)#intf0/2

SW1(config-if)#switchport mode access

SW1(config-if)#switchport access vlan 3

 

SW1(config)#intf0/3

SW1(config-if)#switchport mode access

SW1(config-if)#switchport access vlan 4

 

SW1(config)#int vlan 1

SW1(config-if)#ip address 192.168.0.2 255.255.255.0

SW1(config-if)#no sh

 

SW1(config)#ip default-gateway 192.168.0.1                  

   SW2配置信息如下:

SW3(config)#vlan 100

SW3(config-vlan)#exit

 

SW3(config)#intf0/14

SW3(config-if)#switchportmode trunk

 

SW3(config)#int f0/1

SW3(config-if)#switchport mode access

SW3(config-if)#switchport access vlan 100

 

SW3(config)#intvlan 1

SW3(config-if)#ip address 192.168.0.3 255.255.255.0

SW3(config-if)#no sh

 

SW3(config)#ip default-gateway 192.168.0.1

  1. 配置ACL實現公司要求

配置實現網絡設備只允許網管去IP地址可以通過TELNET登錄,並配置設備用戶名爲benet,密碼爲123456,R1的配置如下:

R1(config)# access-list 1 permit192.168.2.0  0.0.0.255

R1(config)# username benet password 123456

 

R1(config)# line vty 0 4

R1(config-line)# login local

R1(config-line)# access-class 1 in

R1(config-line)# exit

    SW3L、SW1、SW2的配置與R1相同

公司其他要求的配置命令如下:

//ACL 100表示內網主機都可以訪問服務器,但是隻有網絡管理員才能通過TELNET、SSH和遠程桌面登錄服務器,外網只能訪問服務器的80端口

SW3L(config)#access-list 100 permit ip192.168.2.0 0.0.0.255 host 192.168.100.2

//上述一條ACL表示:允許網絡管理員網段192.168.2.0/24訪問服務器

SW3L(config)#access-list 100 deny tcp192.168.0.0  0.0.255.255 host192.168.100.2 eq telnet

SW3L(config)#access-list 100 deny tcp192.168.0.0  0.0.255.255 host192.168.100.2 eq 22

SW3L(config)#access-list 100 deny tcp192.168.0.0  0.0.255.255 host192.168.100.2 eq 3389

//上述四條ACL表示:除192.168.2.0/24網段外其他所有內網地址均不能通過TELNET、SSH和遠程桌面登錄服務器

SW3L(config)#access-list 100 permit ip192.168.0.0  0.0.255.255 host192.168.100.2

SW3L(config)#access-list 100 permit tcp anyhost 192.168.100.2 eq 80

//上述兩條ACL表示:允許內網主機訪問服務器,允許外網主機訪問服務器的80端口

SW3L(config)#access-list 100 deny ip anyany

 

SW3L(config)# int vlan 100

SW3L(config-if)# ipaccess-group 100 out

SW3L(config-if)# exit

 

//ACL101表示192.168.3.0/24網段主機可以訪問服務器,可以訪問網絡管理員網段,但不能訪問其他部門網段,也不能訪問外網

SW3L(config)#access-list 101 permit ip192.168.3.0 0.0.0.255 host 192.168.100.2

SW3L(config)#access-list 101 permit ip192.168.3.0 0.0.0.255  192.168.2.0  0.0.0.255

SW3L(config)#access-list 101 deny ip anyany

 

SW3L(config)# int vlan 3

SW3L(config-if)# ip access-group 101 in

SW3L(config-if)# exit

 

//ACL102表示192.168.4.0/24網段主機可以訪問服務器,可以訪問網絡管理員網段,但不能訪問其他部門網段,可以訪問外網(這裏用於測試目的)

SW3L(config)#access-list 102 permit ip192.168.4.0 0.0.0.255 host 192.168.100.2

SW3L(config)#access-list 102 permit ip192.168.4.0 0.0.0.255  192.168.2.0  0.0.0.255

SW3L(config)#access-list 102 deny ip192.168.4.0  0.0.0.255  192.168.0.0 0.0.255.255

SW3L(config)#access-list 102 permit ip anyany

 

SW3L(config)# int vlan 4

SW3L(config-if)# ip access-group 102 in

SW3L(config-if)# exit

 


發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章