您好,登錄后才能下訂單哦!
安全環境(Security Context)
1、安全環境概述
ASA從7.0版本開始支持虛擬防火墻,也稱為單一設備內的安全環境。多環境與含有多個獨立設備相似,每個環境具有自己的一套安全策略(NAT、ACL、路由等)。多環境模式幾乎支持在獨立設備上可配置的所有選項,但不支持某些特性,如×××、動態路由選擇協議等。
ASA 5505不支持多環境,5510及以上型號才支持多環境,但僅免費提供2個環境。
ASA默認處于單模式,要使用多環境需要切換到多模式。
(1)系統執行空間
當切換到多模式時,就進入了系統執行空間。系統執行空間用來進行一些全局性的配置,例如接口的物理特性、配置TRUNK、限制資源使用、創建環境等。
(2)環境特性
每個環境需要有一個名字、接口分配、配置文件用于存儲配置和環境自身的配置。ASA會自動創建一個環境,叫做admin context,用于管理特性。
2 安全環境的配置
(1)切換到多模式
ciscoasa(config)# mode multiple
WARNING: This command will change the behavior of the device
WARNING: This command will initiate a Reboot
Proceed with change mode? [confirm] <ENTER>
Convert the system configuration? [confirm] <ENTER>
The old running configuration file will be written to disk0
The admin context configuration will be written to disk0
The new running configuration file was written to disk0
Security context mode: multiple
…………………………………………………….
切換到多模式后ASA需要重新啟動。
重新啟動后的默認配置如下。
ciscoasa# show run
: Saved
:
ASA Version 8.0(2) <system>
hostname ciscoasa
enable password 8Ry2YjIyt7RRXU24 encrypted
no mac-address auto
interface Ethernet0/0
shutdown
interface Ethernet0/1
shutdown
interface Ethernet0/2
shutdown
interface Ethernet0/3
shutdown
interface Management0/0
shutdown
class default
limit-resource All 0
limit-resource ASDM 5
limit-resource SSH 5
limit-resource Telnet 5
ftp mode passive
pager lines 24
no failover
asdm p_w_picpath disk0:/asdm-602.bin
no asdm history enable
arp timeout 14400
console timeout 0
admin-context admin
context admin
config-url disk0:/admin.cfg
prompt hostname context
Cryptochecksum:410be16e875b7302990a831a5d91aefd
: end
查看當前的模式
ciscoasa# show mode
Security context mode: multiple
(2)系統執行空間的配置
1)配置接口
接口是物理接口或子接口。從6.3版本開始支持TRUNK,但只支持802.1q封裝。ASA 5510及以上型號配置TRUNK是通過子接口來實現的,ASA 5505不支持子接口。
配置示例
ciscoasa(config)# interface ethernet0/1
ciscoasa(config-subif)# no shutdown
ciscoasa(config)# interface ethernet0/1.10
ciscoasa(config-subif)# vlan 10
ciscoasa(config)# interface ethernet0/1.20
ciscoasa(config-subif)# vlan 20
2)共享接口的MAC地址
多環境可以共享同一個接口(物理接口或子接口),在這種情況下,每個環境應該為共享接口分配不同的MAC地址,可以手工分配也可以自動分配。
路由模式的多環境可以共享接口,透明模式不允許共享接口。
自動分配MAC地址的命令
ciscoasa(config)# mac-address auto
3)創建環境
切換到多模式后ASA自動創建admin context,在之前所述的默認配置中可以看到。根據需要,管理員可以創建其他的環境。
n 創建名為context_name的環境
ciscoasa(config)# context context_name
n 給環境分配接口
ciscoasa(confix-ctx)# allocate-interface physical_if_name[.subif] [map_name]
參數map_name允許為接口配置別名,用于在環境中使用。
n 指定配置文件
ciscoasa(config-ctx)# config-url URL
配置示例
ciscoasa(config)# context CTX1
ciscoasa(config-ctx)# allocate-interface ethernet0/1.10 int1
ciscoasa(config-ctx)# allocate-interface ethernet0/1.20 int2
ciscoasa(config-ctx)# config-url disk0:/CTX1.cfg
n 查看環境配置
ciscoasa# show context
4)限制資源使用
所有的環境都共享設備的資源,可以限制每個環境對資源的使用,防止各個環境相互影響。
資源限制使用類來定義,所有的環境都使用默認類,但可以為某個環境定義一個特定的類,它將覆蓋默認類。
n 定義并配置類
ciscoasa(config)# class {default | resource_class_name}
ciscoasa(config-class)# limit-resource all 0
ciscoasa(config-class)# limit-resource asdm sessions
ciscoasa(config-class)# limit-resource ssh sessions
ciscoasa(config-class)# limit-resource telnet sessions
ciscoasa(config-class)# limit-resource hosts hosts
ciscoasa(config-class)# limit-resource mac-addresses addresses
ciscoasa(config-class)# limit-resource rate inspect inspects/second
ciscoasa(config-class)# limit-resource [rate] conns {conns | xx%}
ciscoasa(config-class)# limit-resource rate syslogs logs/second
ciscoasa(config-class)# limit-resource xlates {xlates | xx%}
limit-resource all 0表示所有資源不做限制。
Telnet和SSH默認最大的會話數為5個,MAC address默認最多65,535條目。
n 將自定義的類分配給某個環境
ciscoasa(config)# context context_name
ciscoasa(config-ctx)# member resource_class_name
配置示例
ciscoasa(config)# class resource-CTX1
ciscoasa(config-class)# limit-resource asdm 3
ciscoasa(config-class)# limit-resource ssh 3
ciscoasa(config-class)# limit-resource conns 40%
ciscoasa(config)# context CTX1
ciscoasa(config-ctx)# member resource-CTX1
(3)環境管理
一旦創建了環境,就可以切換到環境進行配置。
1)在系統執行空間和環境之間切換
ciscoasa# changeto {system | context context_name}
配置示例
ciscoasa# changeto context CTX1
ciscoasa/CTX1#
ciscoasa/CTX1# changeto system
ciscoasa#
2)保存配置
在特定環境中使用命令write memory或copy running-config startup-config只能保存當前環境的配置,要保存所有環境及系統執行空間的配置,需要在系統執行空間中使用以下命令。
ciscoasa# write memory all
3)刪除環境
刪除某個特定環境,需要在系統執行空間中使用以下命令。
ciscoasa(config)# no context context_name
要刪除所有環境,可以使用命令clear configure context。
3 安全環境的配置案例
如圖5.3所示,將ASA 5510配置為路由模式下的多環境,不同環境配置不同的策略。用于NAT轉換的地址池為209.165.201.0/29。
圖5.3 ASA多環境網絡拓撲圖
ASA 5510的配置步驟如下。
(1)切換到多模式
ciscoasa(config)# mode multiple
(2) 配置接口
ciscoasa(config)# interface e0/0
ciscoasa(config-if)# no shutdown
ciscoasa(config)# interface e0/1
ciscoasa(config-if)# no shutdown
ciscoasa(config)# interface e0/0.1
ciscoasa(config-subif)# vlan 2
ciscoasa(config)# interface e0/0.2
ciscoasa(config-subif)# vlan 4
ciscoasa(config)# interface e0/0.3
ciscoasa(config-subif)# vlan 6
ciscoasa(config)# interface e0/1.1
ciscoasa(config-subif)# vlan 3
ciscoasa(config)# interface e0/1.2
ciscoasa(config-subif)# vlan 5
ciscoasa(config)# interface e0/1.3
ciscoasa(config-subif)# vlan 7
ciscoasa(config-subif)# exit
(3) 創建環境
需要創建context1和context2,admin context已自動創建,只需分配接口。
ciscoasa(config)# context context1
ciscoasa(config?ctx)# allocate?interface Ethernet0/0.1 outside_context1
ciscoasa(config?ctx)# allocate?interface Ethernet0/1.1 inside_context1
ciscoasa(config?ctx)# config?url disk0:/context1.cfg
ciscoasa(config?ctx)# exit
ciscoasa(config)# context context2
ciscoasa(config?ctx)# allocate?interface Ethernet0/0.2 outside_context2
ciscoasa(config?ctx)# allocate?interface Ethernet0/1.2 inside_context2
ciscoasa(config?ctx)# config?url disk0:/context2.cfg
ciscoasa(config)# context admin
ciscoasa(config?ctx)# allocate?interface Ethernet0/0.3 outside_admin
ciscoasa(config?ctx)# allocate?interface Ethernet0/1.3 inside_admin
(4)配置Admin Context
ciscoasa(config)# changeto context admin
ciscoasa/admin(config)# interface outside_admin
ciscoasa/admin(config-if)# nameif outside
ciscoasa/admin(config-if)# security-level 0
ciscoasa/admin(config-if)# ip address 192.168.6.1 255.255.255.0
ciscoasa/admin(config-if)# no shutdown
ciscoasa/admin(config-if)# exit
ciscoasa/admin(config)# interface inside_admin
ciscoasa/admin(config-if)# nameif inside
ciscoasa/admin(config-if)# security-level 100
ciscoasa/admin(config-if)# ip address 192.168.7.1 255.255.255.0
ciscoasa/admin(config-if)# no shutdown
ciscoasa/admin(config-if)# exit
ciscoasa/admin(config)# route outside 0 0 192.168.6.2
ciscoasa/admin(config)# nat-control
ciscoasa/admin(config)# nat (inside) 1 0 0
ciscoasa/admin(config)# global (outside) 1 209.165.201.1
ciscoasa/admin(config)# access-list ACLoutside permit icmp any any
ciscoasa/admin(config)# access-group ACLoutside in interface outside
(5) 配置Context1 Context
ciscoasa/admin(config)# changeto context context1
ciscoasa/context1(config)# interface outside_context1
ciscoasa/context1(config-if)# nameif outside
ciscoasa/context1(config-if)# security-level 0
ciscoasa/context1(config-if)# ip address 192.168.2.1 255.255.255.0
ciscoasa/context1(config-if)# no shutdown
ciscoasa/context1(config-if)# exit
ciscoasa/context1(config)# interface inside_context1
ciscoasa/context1(config-if)# nameif inside
ciscoasa/context1(config-if)# security-level 100
ciscoasa/context1(config-if)# ip address 192.168.3.1 255.255.255.0
ciscoasa/context1(config-if)# no shutdown
ciscoasa/context1(config-if)# exit
ciscoasa/context1(config)# route outside 0 0 192.168.2.2
ciscoasa/context1(config)# nat-control
ciscoasa/context1(config)# nat (inside) 1 0 0
ciscoasa/context1(config)# global (outside) 1 209.165.201.2-209.165.201.4
(6)配置Context2 Context
ciscoasa/context1(config)# changeto context context2
ciscoasa/context2(config)# interface outside_context2
ciscoasa/context2(config-if)# nameif outside
ciscoasa/context2(config-if)# security-level 0
ciscoasa/context2(config-if)# ip address 192.168.4.1 255.255.255.0
ciscoasa/context2(config-if)# no shutdown
ciscoasa/context2(config-if)# exit
ciscoasa/context2(config)# interface inside_context2
ciscoasa/context2(config-if)# nameif inside
ciscoasa/context2(config-if)# security-level 100
ciscoasa/context2(config-if)# ip address 192.168.5.1 255.255.255.0
ciscoasa/context2(config-if)# no shutdown
ciscoasa/context2(config-if)# exit
ciscoasa/context2(config)# route outside 0 0 192.168.4.2
ciscoasa/context2(config)# nat-control
ciscoasa/context2(config)# nat (inside) 1 0 0
ciscoasa/context2(config)# global (outside) 1 209.165.201.5-209.165.201.6
ciscoasa/context2(config)# access-list INTERNET remark Inside users only access HTTP and HTTPS servers on the outside
ciscoasa/context2(config)# access-list INTERNET permit tcp any any eq http
ciscoasa/context2(config)# access-list INTERNET permit tcp any any eq https
ciscoasa/context2(config)# access-group INTERNET in interface inside
(7)保存配置
ciscoasa/context2(config)# changeto system
ciscoasa(config)# write memory all
(8) 其他配置及驗證
1)邊緣路由器的TRUNK接口也是通過配置子接口實現的,還需要分別配置指向地址池209.165.201.0/29的明細路由及訪問Internet的默認路由。
2)驗證在3臺主機上均可訪問Internet。
3)在ASA的系統執行空間中查看FLASH
ciscoasa# sh flash
………………………………………………
11 -rw- 1973 00:42:03 Sep 16 2009 old_running.cfg
12 -rw- 1733 07:52:20 Sep 16 2009 admin.cfg
15 -rw- 1680 07:52:21 Sep 16 2009 context1.cfg
18 -rw- 1680 07:52:23 Sep 16 2009 context2.cfg
可以看到每個環境保存的配置文件。其中old_running.cfg為自動保存的原單模式下的配置文件。
4)恢復到單模式
ciscoasa(config)# copy flash:old_running.cfg startup-config
ciscoasa(config)# mode single
然后ASA會重新啟動。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。