在配置PIX防火牆之前,先來介紹一下防火牆的物理特性。防火牆通常具有至少3個接口,但許多早期的防火牆只具有2個接口;當使用具有3個接口的防火牆時,就至少產生了3個網絡,描述如下:
內部區域(內網):內部區域通常就是指企業內部網絡或者是企業內部網絡的一部分。它是互連網絡的信任區域,即受到了防火牆的保護。
外部區域(外網):外部區域通常指Internet或者非企業內部網絡。它是互連網絡中不被信任的區域,當外部 區域想要訪問內部區域的主機和服務,通過防火牆,就可以實現有限制的訪問。
停火區(DMZ):停火區是一個隔離的網絡,或幾個網絡。位於停火區中的主機或服務器被稱為堡壘主機。一般在停火區內可以放置Web服務器,Mail服務器等。停火區對於外部用戶通常是可以訪問的,這種方式讓外部用戶可以訪問企業的公開信息,但卻不允許他們訪問企業內部網絡。
注意:2個接口的防火牆是沒有停火區的。
由於PIX535在企業級別不具有普遍性,因此下面主要說明PIX525在企業網絡中的應用。
PIX防火牆提供4種管理訪問模式:
非特權模式。 PIX防火牆開機自檢后,就是處於這種模式。系統顯示為pixfirewall>
特權模式。 輸入enable進入特權模式,可以改變當前配置。顯示為pixfirewall#
配置模式。 輸入configure terminal進入此模式,絕大部分的系統配置都在這里進行。顯示為pixfirewall(config)#
監視模式。 PIX防火牆在開機或重啟過程中,按住Escape鍵或發送一個"Break"字符,進入監視模式。這里可以更新*作系統映象和口令恢復。顯示為monitor>
配置PIX防火牆有6個基本命令:nameif,interface,ip address,nat,global,route.
這些命令在配置PIX時是必須的。以下是配置的基本步驟:
1. 配置防火牆接口的名字,並指定安全級別(nameif)。
Pix525(config)#nameif ethernet0 outside security0
Pix525(config)#nameif ethernet1 inside security100
Pix525(config)#nameif dmz security50
提示:在缺省配置中,以太網0被命名為外部接口(outside),安全級別是0;以太網1被命名為內部接口(inside),安全級別是100.安全級別取值范圍為1~99,數字越大安全級別越高。若添加新的接口,語句可以這樣寫:
Pix525(config)#nameif pix/intf3 security40 (安全級別任取)
2. 配置以太口參數(interface)
Pix525(config)#interface ethernet0 auto (auto選項表明系統自適應網卡類型 )
Pix525(config)#interface ethernet1 100full (100full選項表示100Mbit/s以太網全雙工通信 )
Pix525(config)#interface ethernet1 100full shutdown (shutdown選項表示關閉這個接口,若啟用接口去掉shutdown )
3. 配置內外網卡的IP地址(ip address)
Pix525(config)#ip address outside 61.144.51.42 255.255.255.248
Pix525(config)#ip address inside 192.168.0.1 255.255.255.0
很明顯,Pix525防火牆在外網的ip地址是61.144.51.42,內網ip地址是192.168.0.1
例1. Pix525(config)#conduit permit tcp host 192.168.0.8 eq www any
這個例子表示允許任何外部主機對全局地址192.168.0.8的這台主機進行http訪問。其中使用eq和一個端口來允許或拒絕對這個端口的訪問。Eq ftp 就是指允許或拒絕只對ftp的訪問。
例2. Pix525(config)#conduit deny tcp any eq ftp host 61.144.51.89
表示不允許外部主機61.144.51.89對任何全局地址進行ftp訪問。
例3. Pix525(config)#conduit permit icmp any any
表示允許icmp消息向內部和外部通過。
例4. Pix525(config)#static (inside, outside) 61.144.51.62 192.168.0.3
Pix525(config)#conduit permit tcp host 61.144.51.62 eq www any
這個例子說明static和conduit的關系。192.168.0.3在內網是一台web服務器,現在希望外網的用戶能夠通過pix防火牆得到web服務。所以先做static靜態映射:192.168.0.3->61.144.51.62(全局),然后利用conduit命令允許任何外部主機對全局地址61.144.51.62進行http訪問。
C. 配置fixup協議
fixup命令作用是啟用,禁止,改變一個服務或協議通過pix防火牆,由fixup命令指定的端口是pix防火牆要偵聽的服務。見下面例子:
例1. Pix525(config)#fixup protocol ftp 21 啟用ftp協議,並指定ftp的端口號為21
例2. Pix525(config)#fixup protocol http 80
Pix525(config)#fixup protocol http 1080 為http協議指定80和1080兩個端口。
例3. Pix525(config)#no fixup protocol smtp 80 禁用smtp協議。
D. 設置telnet
telnet有一個版本的變化。在pix OS 5.0(pix*作系統的版本號)之前,只能從內部網絡上的主機通過telnet訪問pix。在pix OS 5.0及后續版本中,可以在所有的接口上啟用telnet到pix的訪問。當從外部接口要telnet到pix防火牆時,telnet數據流需要用ipsec提供保護,也就是說用戶必須配置pix來建立一條到另外一台pix,路由器或vpn客戶端的ipsec隧道。另外就是在PIX上配置SSH,然后用SSH client從外部telnet到PIX防火牆,PIX支持SSH1和SSH2,不過SSH1是免費軟件,SSH2是商業軟件。相比之下cisco路由器的telnet就做得不怎么樣了。
telnet配置語法:telnet local_ip [netmask] local_ip
表示被授權通過telnet訪問到pix的ip地址。如果不設此項,pix的配置方式只能由console進行。
說了這么多,下面給出一個配置實例供大家參考。
Welcome to the PIX firewall
Type help or '?' for a list of available commands.
PIX525> en
Password:
PIX525#sh config :
Saved :
PIX Version 6.0(1) ------ PIX當前的*作系統版本為6.0
Nameif ethernet0 outside security0
Nameif ethernet1 inside security100 ------ 顯示目前pix只有2個接口
Enable password 7Y051HhCcoiRTSQZ encrypted
Passed 7Y051HhCcoiRTSQZ encrypted ------ pix防火牆密碼在默認狀態下已被加密,在配置文件中不會以明文顯示,telnet 密碼缺省為cisco
Hostname PIX525 ------ 主機名稱為PIX525
Domain-name 123.com ------ 本地的一個域名服務器123.com,通常用作為外部訪問
Fixup protocol ftp 21
Fixup protocol http 80
fixup protocol h323 1720
fixup protocol rsh 514
fixup protocol smtp 25
fixup protocol sqlnet 1521
fixup protocol sip 5060 ------ 當前啟用的一些服務或協議,注意rsh服務是不能改變端口號的
names ------ 解析本地主機名到ip地址,在配置中可以用名字代替ip地址,當前沒有設置,所以列表為空
pager lines 24 ------ 每24行一分頁
interface ethernet0 auto
interface ethernet1 auto ------ 設置兩個網卡的類型為自適應
mtu outside 1500
mtu inside 1500 ------ 以太網標准的MTU長度為1500字節
ip address outside 61.144.51.42 255.255.255.248
ip address inside 192.168.0.1 255.255.255.0 ------ pix外網的ip地址61.144.51.42,內網的ip地址192.168.0.1
ip audit info action alarm
ip audit attack action alarm ------ pix入侵檢測的2個命令。當有數據包具有攻擊或報告型特征碼時,pix將采取報警動作(缺省動作),向指定的日志記錄主機產生系統日志消息;此外還可以作出丟棄數據包和發出tcp連接復位信號等動作,需另外配置。
pdm history enable ------ PIX設備管理器可以圖形化的監視
PIX arp timeout 14400 ------ arp表的超時時間
global (outside) 1 61.144.51.46 ------ 如果你訪問外部論壇或用QQ聊天等等,上面顯示的ip就是這個
nat (inside) 1 0.0.0.0 0.0.0.0 0 0
static (inside, outside) 61.144.51.43 192.168.0.8 netmask 255.255.255.255 0 0
conduit permit icmp any any
conduit permit tcp host 61.144.51.43 eq www any
conduit permit udp host 61.144.51.43 eq domain any ------ 用61.144.51.43這個ip地址提供domain-name服務,而且只允許外部用戶訪問domain的udp端口
route outside 0.0.0.0 0.0.0.0 61.144.51.61 1 ------ 外部網關61.144.51.61
timeout xlate 3:00:00 ------ 某個內部設備向外部發出的ip包經過翻譯(global)后,在缺省3個小時之后此數據包若沒有活動,此前創建的表項將從翻譯表中刪除,釋放該設備占用的全局地址
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 rpc 0:10:00 h323 0:05:00 sip 0:30:00 sip_media 0:02:00
timeout uauth 0:05:00 absolute ------ AAA認證的超時時間,absolute表示連續運行uauth定時器,用戶超時后,將強制重新認證
aaa-server TACACS+ protocol tacacs+
aaa-server RADIUS protocol radius ------ AAA服務器的兩種協議。AAA是指認證,授權,審計。Pix防火牆可以通過AAA服務器增加內部網絡的安全
no snmp-server location no snmp-server contact snmp-server community public ------ 由於沒有設置snmp工作站,也就沒有snmp工作站的位置和聯系人
no snmp-server enable traps ------ 發送snmp陷阱 floodguard enable ------ 防止有人偽造大量認證請求,將pix的AAA資源用完
no sysopt route dnat telnet timeout 5 ssh timeout 5 ------ 使用ssh訪問pix的超時時間
terminal width 80 Cryptochecksum:a9f03ba4ddb72e1ae6a543292dd4f5e7
PIX525#
PIX525#write memory ------ 將配置保存
上面這個配置實例需要說明一下,pix防火牆直接擺在了與internet接口處,此處網絡環境有十幾個公有ip,可能會有朋友問如果我的公有ip很有限怎么辦?你可以添加router放在pix的前面,或者global使用單一ip地址,和外部接口的ip地址相同即可。另外有幾個維護命令也很有用,show interface查看端口狀態,show static查看靜態地址映射,show ip查看接口ip地址,ping outside | inside ip_address確定連通性。
PIX上實現VPN步驟
在PIX上防火牆用預共享密鑰配置IPSec加密主要涉及到4個關鍵任務:
一、為IPSec做准備
為IPSec做准備涉及到確定詳細的加密策略,包括確定我們要保護的主機和網絡,選擇一種認證方法,確定有關IPSec對等體的詳細信息,確定我們所需的IPSec特性,並確認現有的訪問控制列表允許IPSec數據流通過;
步驟1:根據對等體的數量和位置在IPSec對等體間確定一個IKE(IKE階段1,或者主模式)策略;
步驟2:確定IPSec(IKE階段2,或快捷模式)策略,包括IPSec對等體的細節信息,例如IP地址及IPSec變換集和模式;
步驟3:用"write terminal"、"show isakmp"、"show isakmp policy"、"show crypto map "命令及其他"show"命令來檢查當前的配置;
步驟4:確認在沒有使用加密前網絡能夠正常工作,用"ping"命令並在加密前運行測試數據流來排除基本的路由故障;
步驟5:確認在邊界路由器和PIX防火牆中已有的訪問控制列表允許IPSec數據流通過,或者想要的數據流將可以被過濾出來。
二、配置IKE 配置IKE涉及到啟用IKE(和isakmp是同義詞),創建的配置;
步驟1:用"isakmp enable"命令來啟用或關閉IKE;
步驟2:用"isakmp policy"命令創建IKE策略;
步驟3:用"isakmp key"命令和相關命令來配置預共享密鑰;
步驟4:用"show isakmp [policy]"命令來驗證IKE的配置。
三、配置IPSec
IPSec配置包括創建加密用訪問控制列表,定義變換集,創建加密圖條目,並將加密集應用到接口上去;
步驟1:用access-list命令來配置加密用訪問控制列表; 例如: access-list acl-name {permit|deny} protocol src_addr src_mask [operator port [port]]dest_addr dest_mask [operator prot [port]]
步驟2:用crypto ipsec transform-set 命令配置變換集; 例如: crypto ipsec transform-set transform-set-name transform1 [transform2 [transform3]] 3. 步驟3:(任選)用crypto ipsec security-association lifetime命令來配置全局性的IPSec 安全關聯的生存期;
步驟4:用crypto map 命令來配置加密圖;
步驟5:用interface 命令和crypto map map-name interface應用到接口上; 6. 步驟6:用各種可用的show命令來驗證IPSec的配置。
四、測試和驗證IPSec
該任務涉及到使用"show " 、"debug"和相關的命令來測試和驗證IPSec加密工作是否正常,並為之排除故障。
樣例:
PIX 1的配置:
!configure the IP address for each PIX Firewall interface
ip address outside 192.168.1.1 255.255.255.0
ip address inside 10.1.1.3 255.255.255.0
ip address dmz 192.168.11.1 255.255.255.0
global (outside) 1 192.168.1.10-192.168.1.254 netmask 255.255.255.0
!creates a global pooll on the outside interface,enables NAT.
!windows NT server
static (inside,outside) 192.168.1.10 10.1.1.4 netmask 255.255.255.0
!Crypto access list specifiles between the global and the inside server beind PIX Firewalls is encrypted ,The source and destination IP address are the global IP addresses of the statics.
Access-list 101 permit ip host 192.168.1.10 host 192.168.2.10
!The conduit permit ICMP and web access for testing.
Conduit permit icmp any any Conduit permit tcp host 192.168.1.10 eq www any
route outside 0.0.0.0 0.0.0.0 192.168.1.2 1
!Enable IPSec to bypass access litst,access ,and confuit restrictions
syspot connnection permit ipsec
!Defines a crypto map transform set to user esp-des
crypto ipsec transform-set pix2 esp-des
crypto map peer2 10 ipsec-isakmp!
完全配置: ip address outside 202.105.113.194 255.255.255.0 /*看電信給你的IP
ip address inside 192.168.1.1 255.255.255.0
!
global (outside) 1 202.105.113.195-202.105.113.200
global (outside) 1 202.105.113.201
nat (inside) 1 0.0.0.0 0.0.0.0 0 0
static (inside,outside) 202.105.113.203 192.168.1.10 netmask 255.255.255.255 0 0
static (inside,outside) 202.105.113.205 192.168.1.11netmask 255.255.255.255 0 0
conduit permit icmp any any conduit permit tcp host 202.105.113.203 eq www any
conduit permit tcp host 202.105.113.203 eq ftp any
conduit permit tcp host 202.105.113.205 eq smtp any
conduit permit tcp host 202.105.113.205 eq pop3 any
!
route outside 0.0.0.0 0.0.0.0 202.105.113.193 1
route inside 0.0.0.0 0.0.0.0 192.168.1.1
4. 指定要進行轉換的內部地址(nat)
網絡地址翻譯(nat)作用是將內網的私有ip轉換為外網的公有ip.Nat命令總是與global命令一起使用,這是因為nat命令可以指定一台主機或一段范圍的主機訪問外網,訪問外網時需要利用global所指定的地址池進行對外訪問。
nat命令配置語法:
nat (if_name) nat_id local_ip [netmark]
其中(if_name)表示內網接口名字,例如inside。Nat_id用來標識全局地址池,使它與其相應的global命令相匹配,local_ip表示內網被分配的ip地址。例如0.0.0.0表示內網所有主機可以對外訪問。[netmark]表示內網ip地址的子網掩碼。
例1.Pix525(config)#nat (inside) 1 0 0
表示啟用nat,內網的所有主機都可以訪問外網,用0可以代表0.0.0.0
例2.Pix525(config)#nat (inside) 1 172.16.5.0 255.255.0.0
表示只有172.16.5.0這個網段內的主機可以訪問外網。
5. 指定外部地址范圍(global) global命令把內網的ip地址翻譯成外網的ip地址或一段地址范圍。
Global命令的配置語法:global (if_name) nat_id ip_address-ip_address [netmark global_mask]
其中(if_name)表示外網接口名字,例如outside.。Nat_id用來標識全局地址池,使它與其相應的nat命令相匹配,ip_address-ip_address表示翻譯后的單個ip地址或一段ip地址范圍。[netmark global_mask]表示全局ip地址的網絡掩碼。
例1.Pix525(config)#global (outside) 1 61.144.51.42-61.144.51.48
表示內網的主機通過pix防火牆要訪問外網時,pix防火牆將使用61.144.51.42-61.144.51.48這段ip地址池為要訪問外網的主機分配一個全局ip地址。
例2.Pix525(config)#global (outside) 1 61.144.51.42 表示內網要訪問外網時,pix防火牆將為訪問外網的所有主機統一使用61.144.51.42這個單一ip地址。
例3. Pix525(config)#no global (outside) 1 61.144.51.42 表示刪除這個全局表項。
6. 設置指向內網和外網的靜態路由(route) 定義一條靜態路由。
route命令配置語法:route (if_name) 0 0 gateway_ip [metric]
其中(if_name)表示接口名字,例如inside,outside。Gateway_ip表示網關路由器的ip地址。[metric]表示到gateway_ip的跳數。通常缺省是1。
例1. Pix525(config)#route outside 0 0 61.144.51.168 1
表示一條指向邊界路由器(ip地址61.144.51.168)的缺省路由。
例2. Pix525(config)#route inside 10.1.1.0 255.255.255.0 172.16.0.1 1
Pix525(config)#route inside 10.2.0.0 255.255.0.0 172.16.0.1 1
如果內部網絡只有一個網段,按照例1那樣設置一條缺省路由即可;如果內部存在多個網絡,需要配置一條以上的靜態路由。上面那條命令表示創建了一條到網絡10.1.1.0的靜態路由,靜態路由的下一條路由器ip地址是172.16.0.1。
OK,這6個基本命令若理解了,就可以進入到pix防火牆的一些高級配置了。
A. 配置靜態IP地址翻譯(static)
如果從外網發起一個會話,會話的目的地址是一個內網的ip地址,static就把內部地址翻譯成一個指定的全局地址,允許這個會話建立。
static命令配置語法:
static (internal_if_name,external_if_name) outside_ip_address inside_ ip_address
其中internal_if_name表示內部網絡接口,安全級別較高,如inside。external_if_name為外部網絡接口,安全級別較低,如outside等。outside_ip_address為正在訪問的較低安全級別的接口上的ip地址。inside_ ip_address為內部網絡的本地ip地址。
例1. Pix525(config)#static (inside, outside) 61.144.51.62 192.168.0.8
表示ip地址為192.168.0.8的主機,對於通過pix防火牆建立的每個會話,都被翻譯成61.144.51.62這個全局地址,也可以理解成static命令創建了內部ip地址192.168.0.8和外部ip地址61.144.51.62之間的靜態映射。
例2. Pix525(config)#static (inside, outside) 192.168.0.2 10.0.1.3
例3. Pix525(config)#static (dmz, outside) 211.48.16.2 172.16.10.8
注釋同例1。
通過以上幾個例子說明使用static命令可以讓我們為一個特定的內部ip地址設置一個永久的全局ip地址。這樣就能夠為具有較低安全級別的指定接口創建一個入口,使它們可以進入到具有較高安全級別的指定接口。
B. 管道命令(conduit)
前面講過使用static命令可以在一個本地ip地址和一個全局ip地址之間創建了一個靜態映射,但從外部到內部接口的連接仍然會被pix防火牆的自適應安全算法(ASA)阻擋。
conduit命令用來允許數據流從具有較低安全級別的接口流向具有較高安全級別的接口,例如允許從外部到DMZ或內部接口的入方向的會話。對於向內部接口的連接,static和conduit命令將一起使用,來指定會話的建立。
conduit命令配置語法:
conduit permit | deny global_ip port[-port] protocol foreign_ip [netmask]
permit | deny 允許 | 拒絕訪問 global_ip 指的是先前由global或static命令定義的全局ip地址,如果global_ip為0,就用any代替0;如果global_ip是一台主機,就用host命令參數。
port 指的是服務所作用的端口,例如www使用80,smtp使用25等等,我們可以通過服務名稱或端口數字來指定端口。
protocol 指的是連接協議,比如:TCP、UDP、ICMP等。
foreign_ip 表示可訪問global_ip的外部ip。對於任意主機,可以用any表示。如果foreign_ip是一台主機,就用host命令參數。
例1. Pix525(config)#conduit permit tcp host 192.168.0.8 eq www any
這個例子表示允許任何外部主機對全局地址192.168.0.8的這台主機進行http訪問。其中使用eq和一個端口來允許或拒絕對這個端口的訪問。Eq ftp 就是指允許或拒絕只對ftp的訪問。
例2. Pix525(config)#conduit deny tcp any eq ftp host 61.144.51.89
表示不允許外部主機61.144.51.89對任何全局地址進行ftp訪問。
例3. Pix525(config)#conduit permit icmp any any
表示允許icmp消息向內部和外部通過。
例4. Pix525(config)#static (inside, outside) 61.144.51.62 192.168.0.3
Pix525(config)#conduit permit tcp host 61.144.51.62 eq www any
這個例子說明static和conduit的關系。192.168.0.3在內網是一台web服務器,現在希望外網的用戶能夠通過pix防火牆得到web服務。所以先做static靜態映射:192.168.0.3->61.144.51.62(全局),然后利用conduit命令允許任何外部主機對全局地址61.144.51.62進行http訪問。
C. 配置fixup協議
fixup命令作用是啟用,禁止,改變一個服務或協議通過pix防火牆,由fixup命令指定的端口是pix防火牆要偵聽的服務。見下面例子:
例1. Pix525(config)#fixup protocol ftp 21 啟用ftp協議,並指定ftp的端口號為21
例2. Pix525(config)#fixup protocol http 80
Pix525(config)#fixup
為http協議指定80和1080兩個端口。
例3. Pix525(config)#no fixup protocol smtp 80 禁用smtp協議。
D. 設置telnet
telnet有一個版本的變化。在pix OS 5.0(pix*作系統的版本號)之前,只能從內部網絡上的主機通過telnet訪問pix。在pix OS 5.0及后續版本中,可以在所有的接口上啟用telnet到pix的訪問。當從外部接口要telnet到pix防火牆時,telnet數據流需要用ipsec提供保護,也就是說用戶必須配置pix來建立一條到另外一台pix,路由器或vpn客戶端的ipsec隧道。另外就是在PIX上配置SSH,然后用SSH client從外部telnet到PIX防火牆,PIX支持SSH1和SSH2,不過SSH1是免費軟件,SSH2是商業軟件。相比之下cisco路由器的telnet就做得不怎么樣了。
telnet配置語法:telnet local_ip [netmask] local_ip
表示被授權通過telnet訪問到pix的ip地址。如果不設此項,pix的配置方式只能由console進行。
說了這么多,下面給出一個配置實例供大家參考。
Welcome to the PIX firewall
Type help or '?' for a list of available commands.
PIX525> en
Password:
PIX525#sh config :
Saved :
PIX Version 6.0(1) ------ PIX當前的*作系統版本為6.0
Nameif ethernet0 outside security0
Nameif ethernet1 inside security100 ------ 顯示目前pix只有2個接口
Enable password 7Y051HhCcoiRTSQZ encrypted
Passed 7Y051HhCcoiRTSQZ encrypted ------ pix防火牆密碼在默認狀態下已被加密,在配置文件中不會以明文顯示,telnet 密碼缺省為cisco
Hostname PIX525 ------ 主機名稱為PIX525
Domain-name 123.com ------ 本地的一個域名服務器123.com,通常用作為外部訪問
Fixup protocol ftp 21
Fixup protocol http 80
fixup protocol h323 1720
fixup protocol rsh 514
fixup protocol smtp 25
fixup protocol sqlnet 1521
fixup protocol sip 5060 ------ 當前啟用的一些服務或協議,注意rsh服務是不能改變端口號的
names ------ 解析本地主機名到ip地址,在配置中可以用名字代替ip地址,當前沒有設置,所以列表為空
pager lines 24 ------ 每24行一分頁
interface ethernet0 auto
interface ethernet1 auto ------ 設置兩個網卡的類型為自適應
mtu outside 1500
mtu inside 1500 ------ 以太網標准的MTU長度為1500字節
ip address outside 61.144.51.42 255.255.255.248
ip address inside 192.168.0.1 255.255.255.0 ------ pix外網的ip地址61.144.51.42,內網的ip地址192.168.0.1
ip audit info action alarm
ip audit attack action alarm ------ pix入侵檢測的2個命令。當有數據包具有攻擊或報告型特征碼時,pix將采取報警動作(缺省動作),向指定的日志記錄主機產生系統日志消息;此外還可以作出丟棄數據包和發出tcp連接復位信號等動作,需另外配置。
pdm history enable ------ PIX設備管理器可以圖形化的監視
PIX arp timeout 14400 ------ arp表的超時時間
global (outside) 1 61.144.51.46 ------ 如果你訪問外部論壇或用QQ聊天等等,上面顯示的ip就是這個
nat (inside) 1 0.0.0.0 0.0.0.0 0 0
static (inside, outside) 61.144.51.43 192.168.0.8 netmask 255.255.255.255 0 0
conduit permit icmp any any
conduit permit tcp host 61.144.51.43 eq www any
conduit permit udp host 61.144.51.43 eq domain any ------ 用61.144.51.43這個ip地址提供domain-name服務,而且只允許外部用戶訪問domain的udp端口
route outside 0.0.0.0 0.0.0.0 61.144.51.61 1 ------ 外部網關61.144.51.61
timeout xlate 3:00:00 ------ 某個內部設備向外部發出的ip包經過翻譯(global)后,在缺省3個小時之后此數據包若沒有活動,此前創建的表項將從翻譯表中刪除,釋放該設備占用的全局地址
timeout conn 1:00:00 half-closed 0:10:00 udp 0:02:00 rpc 0:10:00 h323 0:05:00 sip 0:30:00 sip_media 0:02:00
timeout uauth 0:05:00 absolute ------ AAA認證的超時時間,absolute表示連續運行uauth定時器,用戶超時后,將強制重新認證
aaa-server TACACS+ protocol tacacs+
aaa-server RADIUS protocol radius ------ AAA服務器的兩種協議。AAA是指認證,授權,審計。Pix防火牆可以通過AAA服務器增加內部網絡的安全
no snmp-server location no snmp-server contact snmp-server community public ------ 由於沒有設置snmp工作站,也就沒有snmp工作站的位置和聯系人
no snmp-server enable traps ------ 發送snmp陷阱 floodguard enable ------ 防止有人偽造大量認證請求,將pix的AAA資源用完
no sysopt route dnat telnet timeout 5 ssh timeout 5 ------ 使用ssh訪問pix的超時時間
terminal width 80 Cryptochecksum:a9f03ba4ddb72e1ae6a543292dd4f5e7
PIX525#
PIX525#write memory ------ 將配置保存
上面這個配置實例需要說明一下,pix防火牆直接擺在了與internet接口處,此處網絡環境有十幾個公有ip,可能會有朋友問如果我的公有ip很有限怎么辦?你可以添加router放在pix的前面,或者global使用單一ip地址,和外部接口的ip地址相同即可。另外有幾個維護命令也很有用,show interface查看端口狀態,show static查看靜態地址映射,show ip查看接口ip地址,ping outside | inside ip_address確定連通性。
二、華為防火牆配置實例:
Login authentication
Password:
<quidway>sys
System View: return to User View with Ctrl+Z.
[Quidway]dis cur
#
sysname ygc
#
firewall enable
#
nat address-group 1 x.x.x.x x.x.x.x
#
interface Aux0
#
interface Ethernet0/0
ip address x.x.x.x 255.255.255.240
nat outbound 3001 address-group 1
nat server protocol tcp global x.x.x.x www inside 192.168.0.1 www
nat server protocol tcp global x.x.x.x www inside 192.168.0.2 www
nat server protocol tcp global x.x.x.x www inside 192.168.0.253 www
nat server protocol tcp global x.x.x.x 5510 inside 192.168.0.254 5510
nat server protocol tcp global x.x.x.x 5530 inside 192.168.0.254 5530
nat server protocol tcp global x.x.x.x 5531 inside 192.168.0.254 5531
nat server protocol tcp global x.x.x.x 6000 inside 192.168.0.254 6000
nat server protocol tcp global x.x.x.x 3389 inside 192.168.0.253 3389
nat server protocol tcp global x.x.x.x 2433 inside 192.168.0.253 2433
nat server protocol tcp global x.x.x.x 3600 inside 192.168.0.254 3600
nat server protocol tcp global x.x.x.x 6605 inside 192.168.0.254 6605
nat server protocol tcp global x.x.x.x 3005 inside 192.168.0.254 3005
nat server protocol tcp global x.x.x.x 5550 inside 192.168.0.254 5550
nat server protocol tcp global x.x.x.x 35000 inside 192.168.0.254 350
nat server protocol tcp global x.x.x.x 30000 inside 192.168.0.254 300
nat server protocol tcp global x.x.x.x 2003 inside 192.168.0.254 2003
nat server protocol tcp global x.x.x.x www inside 192.168.0.254 www
nat server protocol tcp global x.x.x.x 6005 inside 192.168.0.254 6005
nat server protocol tcp global x.x.x.x 2433 inside 192.168.0.249 2433
nat server protocol tcp global x.x.x.x 3389 inside 192.168.0.1 3389
nat server protocol tcp global 222.74.57.X www inside 192.168.0.3 www
nat server protocol tcp global 222.74.57.X 3389 inside 192.168.0.3 3389
nat server protocol tcp global 222.74.57.X ftp inside 192.168.0.3 ftp
nat server protocol tcp global 222.74.57.2X any inside 192.168.0.123 any
nat server protocol tcp global x.x.x.x 3389 inside 192.168.0.2 3389
nat server protocol tcp global x.x.x.x ftp inside 192.168.0.2 ftp
#
interface Ethernet0/1
ip address 192.168.0.250 255.255.255.0
#
interface NULL0
#
acl number 2001
rule 0 permit source 192.168.0.0 0.0.0.255
rule 1 deny
#
acl number 3001
rule 0 permit ip source 192.168.0.3 0
rule 1 permit ip source 192.168.0.252 0
rule 3 permit ip source 192.168.0.222 0
rule 4 permit ip source 192.168.0.123 0
rule 5 permit ip source 192.168.0.5 0
rule 6 permit ip source 192.168.0.2 0
rule 7 permit ip source 192.168.0.50 0
rule 8 permit ip source 192.168.0.51 0
rule 9 permit ip source 192.168.0.253 0
rule 100 deny ip
#
ip route-static 0.0.0.0 0.0.0.0 222.74.57.X preference 60
#
user-interface con 0
user-interface aux 0
user-interface vty 0 4
user privilege level 3
set authentication password cipher X1;8>_Y4.Q_Q=^Q`MAF4<1!!
#
return
quidway
三、一個華為100F防火牆的配置案例
#
sysname 100F
#
super password level 3 cipher $&X(L_RH,.W].9_[>3,%'Q!!
#
firewall packet-filter enable
firewall packet-filter default permit
#
undo insulate
#
firewall url-filter host enable
firewall url-filter host default deny
firewall webdata-filter enable
#
firewall statistic system enable
#
radius scheme system
#
domain system
#
local-user admin
password cipher $&X(L_RH,.W].9_[>3,%'Q!!
service-type telnet
level 3
#
acl number 2000
rule 0 permit source 192.168.0.0 0.0.255.255
rule 1 deny
#
acl number 3000
rule 0 permit ip source 192.168.0.0 0.0.0.255 destination 192.168.0.53 0
rule 1 permit ip source 192.168.2.0 0.0.0.255 destination 192.168.0.53 0
rule 2 permit ip source 192.168.3.0 0.0.0.255 destination 192.168.0.53 0
rule 3 permit ip source 192.168.4.0 0.0.0.255 destination 192.168.0.53 0
rule 4 permit ip source 192.168.5.0 0.0.0.255 destination 192.168.0.53 0
rule 5 permit ip source 192.168.6.0 0.0.0.255 destination 192.168.0.53 0
acl number 3001
rule 1 deny tcp destination-port eq 3217
rule 2 deny tcp destination-port eq 1025
rule 3 deny tcp destination-port eq 5554
rule 4 deny tcp destination-port eq 9996
rule 5 deny tcp destination-port eq 1068
rule 8 deny tcp destination-port eq 137
rule 9 deny udp destination-port eq netbios-ns
rule 10 deny tcp destination-port eq 138
rule 11 deny udp destination-port eq netbios-dgm
rule 12 deny tcp destination-port eq 139
rule 13 deny udp destination-port eq netbios-ssn
rule 14 deny tcp destination-port eq 593
rule 16 deny tcp destination-port eq 5800
rule 17 deny tcp destination-port eq 5900
rule 19 deny tcp destination-port eq 445
rule 20 deny udp destination-port eq 445
rule 21 deny udp destination-port eq 1434
rule 22 deny tcp source-port eq 3217
rule 23 deny tcp source-port eq 1025
rule 24 deny tcp source-port eq 5554
rule 25 deny tcp source-port eq 9996
rule 26 deny tcp source-port eq 1068
rule 27 deny tcp source-port eq 135
rule 28 deny udp source-port eq 135
rule 29 deny tcp source-port eq 137
rule 30 deny udp source-port eq netbios-ns
rule 31 deny tcp source-port eq 138
rule 33 deny tcp source-port eq 139
rule 34 deny udp source-port eq netbios-ssn
rule 35 deny tcp source-port eq 593
rule 36 deny tcp source-port eq 4444
rule 37 deny tcp source-port eq 5800
rule 38 deny tcp source-port eq 5900
rule 39 deny tcp source-port eq 8998
rule 42 deny udp source-port eq 1434
rule 43 permit ip
#
interface Aux0
undo detect dsr-dtr
async mode flow
#
interface Ethernet0/0
description to-FGLAN
ip address 192.168.0.200 255.255.255.0
ip address 192.168.0.1 255.255.255.0 sub
#
interface Ethernet1/0
#
interface Ethernet1/1
#
interface Ethernet1/2
description dianxing
ip address 61.178.23.45 255.255.255.248
firewall packet-filter 3001 inbound
nat outbound
#
interface NULL0
#
firewall zone local
set priority 100
#
firewall zone trust
add interface Ethernet0/0
set priority 85
#
firewall zone untrust
add interface Ethernet1/1
add interface Ethernet1/2
set priority 5
#
firewall zone DMZ
set priority 50
#
firewall interzone local trust
#
firewall interzone local untrust
#
firewall interzone local DMZ
#
firewall interzone trust untrust
#
firewall interzone trust DMZ
#
firewall interzone DMZ untrust
#
ip route-static 0.0.0.0 0.0.0.0 61.178.23.44 preference 80
#
user-interface con 0
authentication-mode password
set authentication password cipher $&X(L_RH,.W].9_[>3,%'Q!!
user-interface aux 0
user-interface vty 0 4
set authentication password cipher $&X(L_RH,.W].9_[>3,%'Q!!
#
return
Cisco PIX防火牆配置實例
摘要:本文講述了作者第一次親手接觸Cisco PIX防火牆,總結了防火牆基本配置十個方面的內容。
硬件防火牆,是網絡間的牆,防止非法侵入,過濾信息等,從結構上講,簡單地說是一種PC式的電腦主機加上閃存(Flash)和防火牆操作系統。它的硬件跟共控機差不多,都是屬於能適合24小時工作的,外觀造型也是相類似。閃存基本上跟路由器一樣,都是那中EEPROM,操作系統跟Cisco IOS相似,都是命令行(Command)式。
我第一次親手那到的防火牆是Cisco Firewall Pix 525,是一種機架式標准(即能安裝在標准的機櫃里),有2U的高度,正面看跟Cisco 路由器一樣,只有一些指示燈,從背板看,有兩個以太口(RJ-45網卡),一個配置口(console),2個USB,一個15針的Failover口,還有三個PCI擴展口。
如何開始Cisco Firewall Pix呢?我想應該是跟Cisco 路由器使用差不多吧,於是用配置線從電腦的COM2連到PIX 525的console口,進入PIX操作系統采用windows系統里的“超級終端”,通訊參數設置為默然。初始使用有一個初始化過程,主要設置:Date(日期)、time(時間)、hostname(主機名稱)、inside ip address(內部網卡IP地址)、domain(主域)等,如果以上設置正確,就能保存以上設置,也就建立了一個初始化設置了。
進入Pix 525采用超級用戶(enable),默然密碼為空,修改密碼用passwd 命令。一般情況下Firewall配置,我們需要做些什么呢?當時第一次接觸我也不知道該做些什么,隨設備一起來的有《硬件的安裝》和《命令使用手冊》。我首先看了命令的使用,用於幾個小時把幾百面的英文書看完了,對命令的使用的知道了一點了,但是對如何配置PIX還是不大清楚該從何入手,我想現在只能去找cisco了,於是在www.cisco.com下載了一些資料,邊看邊實踐了PIX。
防火牆是處網絡系統里,因此它跟網絡的結構密切相關,一般會涉及的有Route(路由器)、網絡IP地址。還有必須清楚標准的TCP[RFC793]和UDP[RFC768]端口的定義。
下面我講一下一般用到的最基本配置
1、 建立用戶和修改密碼
跟Cisco IOS路由器基本一樣。
2、 激活以太端口
必須用enable進入,然后進入configure模式
PIX525>enable
Password:
PIX525#config t
PIX525(config)#interface ethernet0 auto
PIX525(config)#interface ethernet1 auto
在默然情況下ethernet0是屬外部網卡outside, ethernet1是屬內部網卡inside, inside在初始化配置成功的情況下已經被激活生效了,但是outside必須命令配置激活。
3、 命名端口與安全級別
采用命令nameif
PIX525(config)#nameif ethernet0 outside security0
PIX525(config)#nameif ethernet0 outside security100
security0是外部端口outside的安全級別(0安全級別最高)
security100是內部端口inside的安全級別,如果中間還有以太口,則security10,security20等等命名,多個網卡組成多個網絡,一般情況下增加一個以太口作為DMZ(Demilitarized Zones非武裝區域)。
4、 配置以太端口IP 地址
采用命令為:ip address
如:內部網絡為:192.168.1.0 255.255.255.0
外部網絡為:222.20.16.0 255.255.255.0
PIX525(config)#ip address inside 192.168.1.1 255.255.255.0
PIX525(config)#ip address outside 222.20.16.1 255.255.255.0
5、 配置遠程訪問[telnet]
在默然情況下,PIX的以太端口是不允許telnet的,這一點與路由器有區別。Inside端口可以做telnet就能用了,但outside端口還跟一些安全配置有關。
PIX525(config)#telnet 192.168.1.1 255.255.255.0 inside
PIX525(config)#telnet 222.20.16.1 255.255.255.0 outside
測試telnet
在[開始]->[運行]
telnet 192.168.1.1
PIX passwd:
輸入密碼:cisco
6、 訪問列表(access-list)
此功能與Cisco IOS基本上是相似的,也是Firewall的主要部分,有permit和deny兩個功能,網絡協議一般有IP|TCP|UDP|ICMP等等,如:只允許訪問主機:222.20.16.254的www,端口為:80
PIX525(config)#access-list 100 permit ip any host 222.20.16.254 eq www
PIX525(config)#access-list 100 deny ip any any
PIX525(config)#access-group 100 in interface outside
7、 地址轉換(NAT)和端口轉換(PAT)
NAT跟路由器基本是一樣的,
首先必須定義IP Pool,提供給內部IP地址轉換的地址段,接着定義內部網段。
PIX525(config)#global (outside) 1 222.20.16.100-222.20.16.200 netmask 255.255.255.0
PIX525(config)#nat (outside) 1 192.168.0.0 255.255.255.0
如果是內部全部地址都可以轉換出去則:
PIX525(config)#nat (outside) 1 0.0.0.0 0.0.0.0
則某些情況下,外部地址是很有限的,有些主機必須單獨占用一個IP地址,必須解決的是公用一個外部IP(222.20.16.201),則必須多配置一條命令,這種稱為(PAT),這樣就能解決更多用戶同時共享一個IP,有點像代理服務器一樣的功能。配置如下:
PIX525(config)#global (outside) 1 222.20.16.100-222.20.16.200 netmask 255.255.255.0
PIX525(config)#global (outside) 1 222.20.16.201 netmask 255.255.255.0
PIX525(config)#nat (outside) 1 0.0.0.0 0.0.0.0
8、 DHCP Server
在內部網絡,為了維護的集中管理和充分利用有限IP地址,都會啟用動態主機分配IP地址服務器(DHCP Server),Cisco Firewall PIX都具有這種功能,下面簡單配置DHCP Server,地址段為192.168.1.100—192.168.168.1.200
DNS: 主202.96.128.68 備202.96.144.47
主域名稱:abc.com.cn
DHCP Client 通過PIX Firewall
PIX525(config)#ip address dhcp
DHCP Server配置
PIX525(config)#dhcpd address 192.168.1.100-192.168.1.200 inside
PIX525(config)#dhcp dns 202.96.128.68 202.96.144.47
PIX525(config)#dhcp domain abc.com.cn
9、 靜態端口重定向(Port Redirection with Statics)
在PIX 版本6.0以上,增加了端口重定向的功能,允許外部用戶通過一個特殊的IP地址/端口通過Firewall PIX 傳輸到內部指定的內部服務器。這種功能也就是可以發布內部WWW、FTP、Mail等服務器了,這種方式並不是直接連接,而是通過端口重定向,使得內部服務器很安全。
命令格式:
static [(internal_if_name,external_if_name)]{global_ip|interface} local_ip
[netmask mask][max_cons[max_cons[emb_limit[norandomseq]]]
static [(internal_if_name,external_if_name)]{tcp|udp}{global_ip|interface} local_ip
[netmask mask][max_cons[max_cons[emb_limit[norandomseq]]]
!----外部用戶直接訪問地址222.20.16.99 telnet端口,通過PIX重定向到內部主機192.168.1.99的telnet端口(23)。
PIX525(config)#static (inside,outside) tcp 222.20.16.99 telnet 192.168.1.99 telnet netmask 255.255.255.255 0 0
!----外部用戶直接訪問地址222.20.16.99 FTP,通過PIX重定向到內部192.168.1.3的FTP Server。
PIX525(config)#static (inside,outside) tcp 222.20.16.99 ftp 192.168.1.3 ftp netmask 255.255.255.255 0 0
!----外部用戶直接訪問地址222.20.16.208 www(即80端口),通過PIX重定向到內部192.168.123的主機的www(即80端口)。
PIX525(config)#static (inside,outside) tcp 222.20.16.208 www 192.168.1.2 www netmask 255.255.255.255 0 0
!----外部用戶直接訪問地址222.20.16.201 HTTP(8080端口),通過PIX重定向到內部192.168.1.4的主機的www(即80端口)。
PIX525(config)#static (inside,outside) tcp 222.20.16.208 8080 192.168.1.4 www netmask 255.255.255.255 0 0
!----外部用戶直接訪問地址222.20.16.5 smtp(25端口),通過PIX重定向到內部192.168.1.5的郵件主機的smtp(即25端口)
PIX525(config)#static (inside,outside) tcp 222.20.16.208 smtp 192.168.1.4 smtp netmask 255.255.255.255 0 0
10、顯示與保存結果
采用命令show config
保存采用write memory
以上講述了我第一次親手接觸Cisco Firewall PIX 525的情況和對其最基本的了解,總結了最基本配置的十大點,作者對Cisco Firewall PIX防火牆的了解還是很膚淺,難免有錯誤和不到之處,請讀者多多指教。
感謝: jude_liu