思科防火牆
ASA防火牆
1:介面名稱和安全級別
1.1:ASA的介面名稱通常有兩種,一種是物理名稱一種是邏輯名稱
物理名稱:通常指的就是與路由器的介面一樣,如E0/0 E0/1.
邏輯名稱:通常指的就是配置命令的ACL,邏輯名稱用來描述安全區域。
1.2:介面的安全級別
ASA的每個介面都有一個安全級別,範圍是在0~100之間,並且數值越大其安全級別就越高,當配置介面的名稱為inside時,其介面的安全級別自動設定成100。當配置的介面為outside時,其介面的安全級別自動設定成0.
不同安全級別的介面之間的相互訪問需遵循以下之間的預設規則
·允許出站(outbount)連結,即允許從高安全級別介面到低安全階別的介面流量通過。
·禁止入站(inbount)連結,即禁止從低安全級別介面到高安全級別介面的流量通過。
2:ASA的基本配置
2.1掛載並登陸防火牆
# /mnt/disk0/lina_monitor
ciscoasa> enable
Password:#預設沒有密碼
ciscoasa#
2.2:配置主機名
ciscoasa# configure terminal#進入特權模式
ciscoasa(config)# hostname asa
asa(config)#
2.3:配置密碼
可以配置特權密碼和遠端登陸密碼
1)配置特權密碼
asa(config)# enable password 123456
2)配置遠端登陸密碼
asa(config)# passwd 123456
3:ASA的介面配置
1)普通介面
asa(config)# int e0/0
asa(config-if)# nameif inside
INFO: Security level for "inside" set to 100 by default.
asa(config-if)# security-level 100
asa(config-if)# ip add 11.0.0.2 255.255.255.0
asa(config-if)# no shut
2)ASA的型號是5505,則不支援物理介面上進行配置,通過WLAN虛擬介面來配置
asa(config)# int vlan 1
asa(config-if)# nameif inside
INFO: Security level for "inside" set to 100 by default.
asa(config-if)# security-level 100
asa(config-if)# ip add 11.0.0.2 255.255.255.0
asa(config-if)# no shut
asa(config-if)# int e0/0
asa(config-if)# no shut
asa(config-if)# switchport access vlan 1
4 : ASA中配置ACL
在ASA中配置ACL有兩個作用,一個是允許流量入站,另一個是禁止流量入站
· 配置標準ACL
asa(config)# access-list acl_name [standrad] {permit | deny} ip_addr mask
·配置擴充套件ACL
asa(config)# access-list acl_name [extended] {permit | deny} protocol src_ip_addr src_mask dst_ip_addr dst_mask [operator port]
·將ACL應用到介面
asa(config)# access-group acl_name {in | out} interface interface_ name
需要注意的是,路由器上配置的ACL是使用的反碼,而ASA配置的ACL是使用正常的掩碼,另外,標準ACL過濾流量時不能應用在介面上只能應用在其他場合。
1)允許入站連結
ASA的預設規則就是禁止入站的,那麼想要流量的通過,就需要使用ACL
asa(config)# access-list out_to_in permit ip host 172.16.1.1 host 10.1.1.1
asa(config)# access-group out_to_in in int outside
2)控制出站連結流量-禁止入站
asa(config)# access-list in_to_out deny ip 10.1.1.0 255.255.255.0 any
asa(config)# access-list in_to_out permit ip any any
asa(config)# access-group in_to_out in int inside
NAT-PAT
1:靜態NAT轉換--->一對一 (IP地址)
是指將內部網路的私有IP地址轉換為公有IP地址,IP地址對是一對一的,是一成不變的,某個私有IP地址只轉換為某個公有IP地址。藉助於靜態轉換,可以實現外部網路對內部網路中某些特定裝置(如伺服器)的訪問。
2:動態NAT轉換--->多對多 (IP地址)
是指將內部網路的私有IP地址轉換為公用IP地址時,IP地址對是不確定的,是多對多的,是隨機的,所有被授權訪問上Internet的私有IP地址可隨機轉換為任何指定的合法IP地址。也就是說,只要指定哪些內部地址可以進行轉換,以及用哪些合法地址作為外部地址時,就可以進行動態轉換。動態轉換可以使用多個合法外部地址集(地址池)當ISP提供的合法IP地址略少於網路內部的計算機數量時。可以採用動態轉換的方式。
3:動態NAT和靜態NAT的具體以下區別:
1、靜態的NAT,只能是固定的對映, 不能動態更新 ;
2、動態NAT,可以根據你寫的規則 ,進行自動的對映 ;
4:動態PAT轉換--->多對一(介面)
是一種動態複用技術,實現多對一轉換。多個私有使用者同時用一個外部(公網ip)地址時,路由器用上層的TCP或UDP的埠等唯一標識某個地址。 就是在IP-IP的對映上加上埠號 完成多個內部地址對映到一個外部地址的功能
5:靜態PAT轉換--->一對零 (埠號)
當公網IP地址池中沒有IP地址時,就是將私有IP地址的一個埠對映到區域網中一臺機器,當私有使用者訪問這個IP的這個埠時,伺服器自動將請求對映到對應區域網分機 。
6:NAT和PAT的區別
NAT中文全稱是地址轉換,一般指的是內部IP和內部全域性IP一一對應,PAT中文全稱是埠轉換,一般指的是內部IP與內部全域性IP一對多對應,就是將路由器上的多個內部地址對映為一個公網地址,但以不同的協議埠號與不同的內部地址相對應。這種方式常用於撥號上Internet網
NAT+ASA綜合實驗
實驗拓撲
軟體版本GN3 0.8.6 ASA映象8.0(2)
實驗環境
R1和R2模擬公司內網,R3模擬網際網路裝置(公網)。ASA作為公司出口,實現NAT地址轉換
實驗需求
在ASA上做動態NAT實現對R1 loopback 0 網段的地址轉換
在ASA上做動態PAT實現對R1 loopback 1 網段的地址轉換
在ASA上做靜態NAT實現對R2 loopback 0 地址經行轉換
在ASA上做靜態PAT實現將R2的F0/0的23埠對映為218.1.1.1這個地址的23埠
配置如下:
路由器的一些基本配置這裡就不做解釋了
R1配置:
R1(config)#int f0/0
R1(config-if)#ip add 11.0.0.2 255.255.255.0
R1(config-if)#no shut
R1(config-if)#int loo 0
R1(config-if)#ip add 192.168.10.1 255.255.255.0
R1(config-if)#int loo 1
R1(config-if)#ip add 172.16.1.1 255.255.255.0
R1(config-if)#exit
R1(config)#ip route 0.0.0.0 0.0.0.0 11.0.0.1
R2配置:
R2(config)#line vty 0 4
R2(config-line)#password abc123
R2(config-line)#login
R2(config-line)#exit
R2(config)#ip route 0.0.0.0 0.0.0.0 12.0.0.1
R2(config-if)#ip add 12.0.0.2 255.255.255.0
R2(config-if)#no shut
R2(config-if)#int loo 0
R2(config-if)#ip add 192.168.20.1 255.255.255.0
R3配置:
R3(config)#int f0/0
R3(config-if)#ip add 13.0.0.2 255.255.255.0
R3(config-if)#no shut
為R1的loopback 0 介面做動態NAT
ASA1配置:
ASA1(config)# int e0/0
ASA1(config-if)# nameif inside //定義介面名稱
INFO: Security level for "intside" set to 100 by default.
ASA1(config-if)# ip add 11.0.0.1 255.255.255.0
ASA1(config-if)# no shut
ASA1(config-if)# exit
ASA1(config)# int e0/1
ASA1(config-if)# nameif dmz
INFO: Security level for "dmz" set to 0 by default.
ASA1(config-if)# ip add 12.0.0.1 255.255.255.0
ASA1(config-if)# security-level 50 //配置介面安全級別
ASA1(config-if)# no shut
ASA1(config-if)# int e0/2
ASA1(config-if)# nameif outside
ERROR: Name "outside" has been assigned to interface Ethernet0/0
ASA1(config-if)# ip add 13.0.0.1 255.255.255.0
ASA1(config-if)# no shut
ASA1(config-if)# exit
ASA1(config)# route inside 192.168.10.0 255.255.255.0 11.0.0.2
ASA1(config)# route inside 172.16.1.0 255.255.255.0 11.0.0.2 //配置到達環回口的靜態路由
ASA1(config)# route dmz 192.168.20.0 255.255.255.0 12.0.0.2
ASA1(config)# nat (inside) 1 192.168.10.0 255.255.255.0 //定義列表1,到達inside口要轉換的地址
ASA1(config)# global (outside) 1 200.1.1.10-200.1.1.20 netmask 255.255.255.0
//配置公網地址池範圍
ASA1(config)# access-list 110 permit icmp any any //這裡為了偷懶就允許所有icmp
在R3上添加回程路由,並開啟debug
R3#debug ip icmp
R3#conf t
R3(config)#ip route 200.1.1.0 255.255.255.0 13.0.0.1
R1 loopback 0 ping R3 測試
從R3的debug資訊可以看出NAT轉換成功了
在ASA上為R1 loo
在R2上ping 13.0.0.3 測試
在R3上檢視debug資訊,發現轉換成功
在ASA上做靜態PAT,將R2的F0/0的23埠對映為到218.1.1.1的23埠
ASA1(config)# static (dmz,outside) tcp 218.1.1.1 telnet 12.0.0.2 telnet
//配置將12.0.0.2的23埠對映到218.1.1.1這個地址的23埠,公網地址要寫在前面
ASA1(config)# access-list 110 permit tcp host 13.0.0.2 host 218.1.1.1 eq 23
//定義一個ACL允許13.0.0.3對218.1.1.1進行telnet,由於之前110在介面上應用了這裡就省略了
在R3上做回程路由
R3(config)#ip route 218.1.1.1 255.255.255.255 13.0.0.1
在R3上telnet 218.1.1.1 ,驗證是否能對映到R2
總結:
動態NAT是多對多,定義一個地址池。地址池內有少個地址就可以有多少地址上公網
動態PAT是一對多,讓所有私網地址都複用一個地址去上公網
靜態NAT是一對一,一個私網地址指定一個公網地址
靜態PAT是埠對映,將一個公網地址的某個埠對映到私網的某個地址pback 1 介面做動態PAT --介面
ASA1(config)# nat (inside) 2 172.16.1.0 255.255.255.0
ASA1(config)# global (outside) 2 interface
用R1 的 loopback 1 ping R3測試
檢視R3上的debug資訊,發現轉換成功為外網口地址
在ASA上做為R2的loopback 0 做靜態NAT,轉換為222.222.222.222
ASA1(config)# static (dmz,outside) 222.222.222.222 192.168.20.1 //配置將192.168.20.1這個
地址轉換為222.222.222.222,注意公網地址是寫在前面
在R3上做回程路由
R3(config)#ip route 222.222.222.222 255.255.255.255 13.0.0.1
在R2上ping 13.0.0.3 測試
在R3上檢視debug資訊,發現轉換成功
在ASA上做靜態PAT,將R2的F0/0的23埠對映為到218.1.1.1的23埠
ASA1(config)# static (dmz,outside) tcp 218.1.1.1 telnet 12.0.0.2 telnet
//配置將12.0.0.2的23埠對映到218.1.1.1這個地址的23埠,公網地址要寫在前面
ASA1(config)# access-list 110 permit tcp host 13.0.0.2 host 218.1.1.1 eq 23
//定義一個ACL允許13.0.0.3對218.1.1.1進行telnet,由於之前110在介面上應用了這裡就省略了
在R3上做回程路由
R3(config)#ip route 218.1.1.1 255.255.255.255 13.0.0.1
在R3上telnet 218.1.1.1 ,驗證是否能對映到R2
總結:
動態NAT是多對多,定義一個地址池。地址池內有少個地址就可以有多少地址上公網
動態PAT是一對多,讓所有私網地址都複用一個地址去上公網
靜態NAT是一對一,一個私網地址指定一個公網地址
靜態PAT是埠對映,將一個公網地址的某個埠對映到私網的某個地址
,將一個公網地址的某個埠對映到私網的某個地址