access-list 有關

Chapter9 Managing Traffic with Access Lists

  Introduction to Access Lists

  訪問列表(access list,ACL)的主要作用是過濾你不想要的數據包.設置ACL的一些規則:
  1.按順序的比較,先比較第一行,再比較第二行..直到最後1行
  2.從第一行起,直到找到1個符合條件的行;符合以後,其餘的行就不再繼續比較下去
  3.默認在每個ACL中最後1行爲隱含的拒絕(deny),如果之前沒找到1條許可(permit)語句,意味着包將被丟棄.所以每個ACL必須至少要有1行permit語句,除非你想想所有數據包丟棄

  2種主要的訪問列表:
  1.標準訪問列表(standard access lists):只使用源IP地址來做過濾決定 
  2.擴展訪問列表(extended access lists):它比較源IP地址和目標IP地址,層3的協議字段,層4端口號來做過濾決定

  利用ACL來過濾,必須把ACL應用到需要過濾的那個router的接口上,否則ACL是不會起到過濾作用的.而且你還要定義過濾的方向,比如是是想過濾從Internet到你企業網的數據包呢還是想過濾從企業網傳出到Internet的數據包呢?方向分爲下面2種:
  1.inbound ACL:先處理,再路由
  2.outbound ACL:先路由,再處理

  一些設置ACL的要點:
  1.每個接口,每個方向,每種協議,你只能設置1個ACL
  2.組織好你的ACL的順序,比如測試性的最好放在ACL的最頂部
  3.你不可能從ACL從除去1行,除去1行意味你將除去整個ACL,命名訪問列表(named access lists)例外(稍後介紹命名訪問列表)
  4.默認ACL結尾語句是deny any,所以你要記住的是在ACL裏至少要有1條permit語句
  5.記得創建了ACL後要把它應用在需要過濾的接口上
  6.ACL是用於過濾經過router的數據包,它並不會過濾router本身所產生的數據包
  7.儘可能的把IP標準ACL放置在離目標地址近的地方;儘可能的把IP擴展ACL放置在離源地址近的地方

  Standard Access Lists

  介紹ACL設置之前先介紹下通配符掩碼(wildcard masking).它是由0和255的4個8位位組組成的.0代表必須精確匹配,255代表隨意,比如:172.16.30.0 0.0.0.255,這個告訴router前3位的8位位組必須精確匹配,後1位8位位組的值可以爲任意值.如果你想指定172.16.8.0到172.16.15.0,則通配符掩碼爲0.0.7.255(15-8=7)

  配置IP標準ACL,在特權模式下使用access-lists [範圍數字] [permit/deny] [any/host]命令.範圍數字爲1到99和1300到1999;permit/deny分別爲允許和拒絕;any爲任何主機,host爲具體某個主機(需要跟上IP地址)或某1段

  我們來看1個設置IP標準ACL的實例:


  router有3個LAN的連接1個Internet的連接.現在,銷售部的用戶不允許訪問金融部的用戶,但是允許他們訪問市場部和Internet連接.配置如下:

  Router(config)#access-list 10 deny 172.16.40.0 0.0.0.255
  Router(config)#access-list 10 permit any

  注意隱含的deny any,所以末尾這裏我們要加上permit any,any等同於0.0.0.0 255.255.255.255.接下來把ACL應用在接口上,之前說過了儘可能的把IP標準ACL放置在離目標地址近的地方,所以使用ip access-group命令把ACL 10放在E1接口,方向爲出,即out.如下:

  Router(config)#int e1
  Router(config-if)#ip access-group 10 out

  Controlling VTY(Telnet) Access

  使用IP標準ACL來控制VTY線路的訪問.配置步驟如下:
  1.創建個IP標準ACL來允許某些主機可以telnet
  2.使用access-class命令來應用ACL到VTY線路上

  實例如下:
  Router(config)#access-list 50 permit 172.16.10.3
  Router(config)#line vty 0 4
  Router(config-line)#access-class 50 in
  如上,進入VTY線路模式,應用ACL,方向爲進來,即in.因爲默認隱含的deny any,所以上面的例子,只允許IP地址爲172.16.10.3的主機telnet到router上

  Extended Access Lists

  擴展ACL:命令是access-list [ACL號] [permit/deny] [協議] [源地址] [目標地址] [操作符] [端口] [log].ACL號的範圍是100到199和2000到2699;協議爲TCP,UDP等,操作符號有eq(表等於),gt(大於),lt(小於)和neq(非等於)等等;log爲可選,表示符合這個ACL,就記錄下這些日誌

  來看1個配置擴展ACL的實例:


  假如要拒telnet和FTP到絕位於金融部的主機172.16.30.5,配置如下:
  Router(config)#access-list 110 deny tcp any host 172.16.30.5 eq 21
  Router(config)#access-list 110 deny tcp any host 172.16.30.5 eq 23
  Router(config)#access-list 110 permit ip any any
  記住默認隱含的deny all.應用到E1接口,注意方向爲out,如下:
  Router(config)#int e1
  Router(config-if)#ip access-group 110 out
  Named Access Lists

  命名訪問列表是創建標準和擴展訪問列表的另外1種方法.它允許你使用命名的方法來創建和應用標準或者擴展訪問列表.使用ip access-list命令來創建,如下:


  Router(config)#ip access-list ?
  extended Extended Acc
  logging Control access list logging
  standard Standard Access List
  Router(config)#ip access-list standard ?
  <1-99> Standard IP access-list number
  WORD Access-list name
  Router(config)#ip access-list standard BlockSales
  Router(config-std-nacl)#?
  Standard Access List configuration commands:
  default Set a command to its defaults
  deny Specify packets to reject
  exit Exit from access-list configuration mode
  no Negate a command or set its default
  permit Specify packets to forward
  Router(config-std-nacl)#deny 172.16.40.0 0.0.0.255
  Router(config-std-nacl)#permit any
  Router(config-std-nacl)#exit
  Router(config)#^Z
  Router#sh run
  (略)
  !
  ip access-list standard BlockSales
  deny 172.16.40.0 0.0.0.255
  permit any
  !
  (略)

  接下來應用到接口上,如下:
  Router(config)#int 1
  Router(config-if)#ip access-group BlockSales out
  Router(config-if)#^Z
  Router#

  Monitoring Access Lists

  一些驗證ACL的命令,如下:
  1.show access-list:顯示router上配置了的所有的ACL信息,但是不顯示哪個接口應用了哪個ACL的信息
  2.show access-list [number]:顯示具體第幾號ACL信息,也不顯示哪個接口應用了這個ACL
  3.show ip interface:只顯示IP訪問列表信息
  4.show ip interface:顯示所有接口的信息和配置的ACL信息
  5.show ip interface [接口號]:顯示具體某個接口的信息和配置的ACL信息
  6.show running-config:顯示DRAM信息和ACL信息,以及接口對ACL的應用信息.

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