asa 防火墙拦截了https_防火墙(ASA)的基本配置与远程管理
在目前大多數(shù)安全解決方案中,防火墻的實(shí)施是最為重要的需求,它是每個(gè)網(wǎng)絡(luò)基礎(chǔ)設(shè)施必要且不可分割的組成部分。這篇博客主要介紹防火墻安全算法的原理與基本配置以及遠(yuǎn)程管理防火墻的幾種方式
硬件與軟件防火墻
1.軟件防火墻
軟件防火墻單獨(dú)使用軟件系統(tǒng)來(lái)完成防火墻功能,將軟件部署到系統(tǒng)主機(jī)上,其安全性較硬件防火墻差,同時(shí)占用系統(tǒng)資源,在一定程度上影響系統(tǒng)性能。其一般用于單機(jī)系統(tǒng)或個(gè)人計(jì)算機(jī),極少用于計(jì)算機(jī)網(wǎng)絡(luò),如瑞星、天網(wǎng)、360等。
2.硬件防火墻
硬件防火墻比軟件防火墻更有優(yōu)勢(shì),原因有一下兩個(gè)方面
* 硬件防火墻功能強(qiáng)大,且明確是為抵御威脅而設(shè)計(jì)的
* 硬件防火墻比軟件防火墻漏洞少
Cisco硬件防火墻技術(shù)應(yīng)用于以下三個(gè)領(lǐng)域
*?PIX 500系列安全設(shè)備
*?ASA 5500系列自適應(yīng)安全設(shè)備
*?Catalyst 6500系列交換機(jī)和Cisco 7600系列路由器的防火墻服務(wù)模塊
ASA安全設(shè)備
Cisco ASA 5500系列自適應(yīng)安全設(shè)備是最新的Cisco防火墻技術(shù)產(chǎn)品,它提供了整合防火墻、***保護(hù)系統(tǒng)、高級(jí)自適應(yīng)威脅防御服務(wù),其中包括應(yīng)用安全和簡(jiǎn)化網(wǎng)絡(luò)安全解決方案的×××服務(wù)。
目前,Cisco ASA 5500系列有六種型號(hào),下表所示:型號(hào)價(jià)格并發(fā)連接數(shù)網(wǎng)絡(luò)吞吐量描述
ASA 55052600~1570025000150MB適用于小型企業(yè)
ASA 551012000~94200130000300MB適用于中型企業(yè)
ASA 552028000~84000280000450MB適用于中型企業(yè)
ASA 554068000~70000400000650MB適用于中型企業(yè)
ASA 555080000~850006500001200MB適用于大型企業(yè)及電信運(yùn)營(yíng)商
ASA 5580200000~5300001000000~20000005000MB~10000MB適用于大型企業(yè)及電信運(yùn)營(yíng)商
ASA的安全算法
ASA首先是一個(gè)狀態(tài)化防火墻,狀態(tài)化防火墻維護(hù)一個(gè)關(guān)于用戶信息的連接表,稱為Conn表,表中關(guān)鍵信息如下:
*?源IP地址
*?目的IP地址
*?IP協(xié)議
*?IP協(xié)議信息
默認(rèn)情況下,ASA對(duì)TCP和UDP協(xié)議提供狀態(tài)化連接,但I(xiàn)CMP協(xié)議是非狀態(tài)化的。
狀態(tài)化防火墻進(jìn)行狀態(tài)化處理的過(guò)程如圖所示:
(1)PC發(fā)起一個(gè)HTTP請(qǐng)求給Web服務(wù)器
(2)HTTP請(qǐng)求到達(dá)防火墻,防火墻將連接信息添加到Conn表
(3)防火墻將HTTP請(qǐng)求轉(zhuǎn)發(fā)給Web服務(wù)器
流量返回時(shí),狀態(tài)化防火墻處理的過(guò)程如下:
(4)Web服務(wù)器響應(yīng)HTTP請(qǐng)求,返回相應(yīng)的數(shù)據(jù)流量
(5)防火墻攔截該流量,檢查其連接信息
*?如果在Conn表中查找到匹配的連接信息,則流量被允許
*?如果在Conn表中查不到匹配的連接信息,則流量被丟棄
安全算法的原理
ASA使用安全算法執(zhí)行一下三項(xiàng)基本操作
*?訪問(wèn)控制列表:基于特定的網(wǎng)絡(luò),主機(jī)和服務(wù)(TCP/UDP端口號(hào))控制網(wǎng)絡(luò)訪問(wèn)。
*?連接表:維護(hù)每個(gè)連接的狀態(tài)信息。安全算法使用此信息在已建立的連接中有效轉(zhuǎn)發(fā)流量
*?檢測(cè)引擎:執(zhí)行狀態(tài)檢測(cè)和應(yīng)用層檢測(cè)。檢測(cè)規(guī)則集是預(yù)先定義的,來(lái)驗(yàn)證應(yīng)用是否遵從每個(gè)RFC和其他標(biāo)準(zhǔn)。
數(shù)據(jù)報(bào)文穿越ASA的過(guò)程如下圖所示:
(1)一個(gè)新來(lái)的TCP SYN報(bào)文到達(dá)ASA,試圖建立一個(gè)新的連接。
(2)ASA檢查訪問(wèn)列表,確定是否允許連接。
(3)ASA執(zhí)行路由查詢,如果路由正確,ASA使用必要的會(huì)話信息在連接表(XLATE和Conn)中創(chuàng)建一個(gè)新條目。
(4)ASA在檢測(cè)引擎中檢查預(yù)定義的一套規(guī)則,如果是已知應(yīng)用,則進(jìn)一步執(zhí)行應(yīng)用層檢測(cè)。
(5)ASA根據(jù)檢測(cè)引擎確定是否轉(zhuǎn)發(fā)或丟棄報(bào)文。如果允許轉(zhuǎn)發(fā),則將報(bào)文轉(zhuǎn)發(fā)到目的主機(jī)。
(6)目的主機(jī)響應(yīng)該報(bào)文。
(7)ASA接收返回報(bào)文并進(jìn)行檢測(cè),在連接數(shù)據(jù)庫(kù)中查詢連接,確定會(huì)話信息與現(xiàn)有連接是否匹配。
(8)ASA轉(zhuǎn)發(fā)屬于已建立的現(xiàn)有會(huì)話的報(bào)文。
ASA的引用層檢測(cè)是通過(guò)檢查報(bào)文的IP頭和有效載荷的內(nèi)容,對(duì)應(yīng)用層協(xié)議流量執(zhí)行深層檢測(cè),檢查應(yīng)用層協(xié)議是否遵守RFC標(biāo)準(zhǔn),從而檢測(cè)出應(yīng)用層數(shù)據(jù)中的惡意行為。
ASA的基本配置
配置主機(jī)名
ASA初始啟動(dòng)后默認(rèn)的主機(jī)名是ciscoasa,可以通過(guò)以下命令將主機(jī)名配置為asa。ciscoasa#?config?terminal
ciscoasa(config)#?hostname?asa
asa(config)#
配置密碼
可以配置特權(quán)密碼和遠(yuǎn)程登錄密碼
1.配置特權(quán)密碼
以下命令將配置特權(quán)密碼為123456asa(config)#?enable?password?123456
2.配置遠(yuǎn)程登錄密碼
遠(yuǎn)程登錄密碼是在使用Telnet或SSH時(shí)需要輸入的密碼。以下命令將配置遠(yuǎn)程登錄密碼為ysf,注意與路由器配置是不同的。asa(config)#?password?ysf
接口的概念與配置
ASA的接口通常有兩種名稱,即物理名稱和邏輯名稱
1.物理名稱
物理名稱與路由器名稱類似,例如Ethernet0/0、Ethernet0/1,可以簡(jiǎn)寫(xiě)為E0/0、E0/1,通常用來(lái)配置接口的速率,雙工和IP地址等
ASA 5510及以上型號(hào)還有專門(mén)的管理接口用于管理目的,例如management0/0
2.邏輯名稱
邏輯名稱用于大多數(shù)的配置命令,例如配置ACL、配置路由等使用命令中都用到邏輯名稱。邏輯名稱用來(lái)描述安全區(qū)域,例如通常用inside表示ASA連接的內(nèi)部區(qū)域(安全性高),用outside表示ASA連接的外部區(qū)域(安全性低)。
防火墻與路由器有著本質(zhì)的不同,防火墻是用于安全目的,所以它的各個(gè)接口代表了不同的安全區(qū)域,而安全區(qū)域之間隔著一堵墻。
接口的安全級(jí)別
ASA的每個(gè)接口都有一個(gè)安全級(jí)別,范圍是0-100,數(shù)值越大其安全級(jí)別越高。當(dāng)配置接口的名稱為inside時(shí),其安全級(jí)別自動(dòng)設(shè)置為100。而配置其他的接口名稱例如outside時(shí),其安全級(jí)別自動(dòng)設(shè)置為0.
不同安全級(jí)別的接口之間互相訪問(wèn)時(shí),遵從如下的默認(rèn)規(guī)則。
*?允許出站(outbound)連接,即允許從高安全級(jí)別接口到低安全級(jí)別接口的流量通過(guò)。
*?禁止入站(inbound)連接,即禁止從低安全級(jí)別接口到高安全級(jí)別接口的流量通過(guò)。
*?禁止相同安全級(jí)別的接口之間通信。
接口的配置
配置命令語(yǔ)法如下:asa(config-if)#?nameif?name???????????????//配置接口名稱
asa(config-if)#?security-level?number?????????//配置接口安全級(jí)別
其中number的范圍為0-100。
案例:如圖,使用路由器R1和R2模擬PC,要求配置ASA的接口并驗(yàn)證接口之間的通信。
ASA接口配置如下:asa(config)#?int?e0/1
asa(config-if)#?namaif?inside
asa(config-if)#?security-level?100
asa(config-if)#?ip?add?10.1.1.254?255.255.255.0
asa(config-if)#?no?sh
asa(config)#?int?e0/0
asa(config-if)#?nameif?outside
asa(config-if)#?security-level?0
asa(config-if)#?ip?add?172.16.1.254?255.255.255.0
asa(config-if)#?no?sh
如果ASA的型號(hào)是5505,則不支持在物理接口上直接進(jìn)行以上配置,必須通過(guò)VLAN虛接口來(lái)配置,具體配置如下:asa(config)#?int?vlan?1
asa(config-if)#?nameif?inside
asa(config-if)#?security-level?100
asa(config-if)#?ip?add?10.1.1.254?255.255.255.0
asa(config-if)#?no?sh
asa(config-if)#?int?e0/1
asa(config-if)#?no?sh
asa(config-if)#?switchport?access?vlan?1
asa(config)#?int?vlan?2
asa(config-if)#?nameif?outside
asa(config-if)#?security-level?0
asa(config-if)#?ip?add?172.16.1.254?255.255.255.0
asa(config-if)#?no?sh
asa(config-if)#?int?e0/0
asa(config-if)#?no?sh
asa(config-if)#?switchport?access?vlan?2
查看Conn表asa#?show?conn?dateil
通過(guò)驗(yàn)證,在R1可以Telnet到R2,但在R2可以Telnet到R1
配置ACL
在ASA上配置ACL有兩個(gè)作用:一是允許入站連接,二是控制出站連接的流量
*標(biāo)準(zhǔn)ACL的配置如下:asa(config)#?access-list?acl_name?[?standrad?]?{?permit?|?deny?}?ip_addr?mask
*擴(kuò)展ACL的配置如下:asa(config)#?access-list?acl_name?[?extended?]?{?permit?|?deny?}?protocol?src_ip_addr?src_mask?dst_ip_addr?dst_mask?[?operator?port?]
*將ACL應(yīng)用到接口,配置如下:asa(config)#?access-group?acl_name?{?in?|?out?}?interface?interface_name
需要注意的是,路由器上的ACL使用的是反碼,而ASA上的ACL使用正常的掩碼。另外,標(biāo)準(zhǔn)ACL過(guò)濾流量時(shí)不能應(yīng)用到接口,它應(yīng)用到其他場(chǎng)合,如遠(yuǎn)程訪問(wèn)×××中分離隧道的配置
允許入站連接
ASA的默認(rèn)規(guī)則是禁止入站連接,如果要允許入站連接,就需要配置ACL。
例如:在上個(gè)案例中,要在R2上Telnet到R1,可以在ASA上做如下配置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
控制出站連接的流量
例如:在上個(gè)案例中,如果inside區(qū)域有多個(gè)子網(wǎng)。例如,10.1.1.0/24、10.1.2.0/24等,要禁止子網(wǎng)10.1.1.0/24的流量出站,可以在ASA上做如下配置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
配置靜態(tài)路由
ASA支持靜態(tài)和默認(rèn)路由、動(dòng)態(tài)路由(例如OSPF等)
配置靜態(tài)路由的命令語(yǔ)法如下asa(config)#?route?interface-name?network?mask?next-hop-address
ICMP協(xié)議
默認(rèn)情況下,禁止ICMP報(bào)文穿越ASA是基于安全性的考慮。為了方便調(diào)試,可以配置暫時(shí)允許ICMP應(yīng)答報(bào)文穿越ASAasa(config)#?access-list?111?permit?icmp?any?any
asa(config)#?access-group?111?in?int?outside
在調(diào)試完畢后,通常建議禁止ICMP報(bào)文穿越ASA
其他配置命令
(1)保存running-configuration配置到startup configuration,可以使用以下兩種命令:asa(config)#write?memory??????//第一種
asa(config)#copy?running-config?startup-config???????//第二種
(2)清除running configuration的所有配置,可以使用以下命令asa(config)#clear?configure?all
(3)清除running configuration中指定命令的配置,可以使用以下命令asa(config)#clear?configure?configurationcommand?[?leve12configurationcommand?]
例如:要清除所有access-list命令的配置,可以使用以下命令asa(config)#clear?configure?access-list
只清除access-list in_to_out的配置,可以使用以下命令asa(config)#clear?configure?access-list?in_to_out
遠(yuǎn)程管理ASA
ASA支持三種主要的遠(yuǎn)程管理接入方式:Telnet、SSH和ASDM
1.配置Telnet接入
由于使用Telnet遠(yuǎn)程管理是不安全的,所以一般禁止從外部接口使用Telnet接入,而只允許在內(nèi)網(wǎng)使用Telnet。
(1)配置允許Telnet接入asa(config)#?telnet?{network|ip-address}?mask?interface_name
例如:配置允許從inside區(qū)域內(nèi)的192.168.0.0/24使用Telnet接入,命令如下asa(config)#?telnet?192.168.0.0?255.255.255.0?inside
可以配置為只允許主機(jī)192.168.0.1/24使用Telnet接入,命令如下asa(config)#?telnet?192.168.0.1?255.255.255.255?inside
(2)(可選)配置空閑超時(shí)時(shí)間asa(config)#?telnet?timeout?minutes
參數(shù)minutes的取值范圍為1-1440分鐘,默認(rèn)值是5分鐘。
2.配置SSH接入
使用SSH可以安全地對(duì)ASA進(jìn)行遠(yuǎn)程管理,配置SSH接入分為四個(gè)步驟。
(1)配置主機(jī)名和域名
在生成RSA密鑰對(duì)的過(guò)程中需要用到主機(jī)名和域名,以下命令為ASA配置主機(jī)名為asa802,配置域名為asadomain.comasa(config)#?host?asa802
asa802(config)#?domain-name?asadomain.com
(2)生成RSA密鑰對(duì)asa802(config)#?crypto?key?generate?rsa?modulus?1024
可以指定modulus的大小為512、768、1024或2048位,默認(rèn)是1024,表示生成的RSA密鑰的長(zhǎng)度。
(3)配置允許SSH接入
配置SSH的命令語(yǔ)法與配置Telnet是類似的,但是SSH可以配置為從外部接口接入,命令如下asa802(config)#?ssh?192.168.0.0?255.255.255.0?inside
asa802(config)#?ssh?0?0?outside
(4)其他可選配置
配置空閑超時(shí)時(shí)間。與配置Telnet類似,例如設(shè)置為30分鐘,命令如下asa802(config)#?ssh?timeout?30
配置SSH的版本。默認(rèn)情況下支持版本1和版本2.要限定使用哪個(gè)版本,可以使用如下命令asa802(config)#?ssh?version?2
配置完后,可以在Outside 區(qū)域內(nèi)的主機(jī)上使用Putty登錄ASA的Oouside接口。注意ASA默認(rèn)使用用戶名pix,密碼為使用passwd命令設(shè)置的密碼,即可登錄成功
3.配置ASDM接入
除了使用命令行外,ASA還支持GUI遠(yuǎn)程管理方式,即自適應(yīng)安全設(shè)備管理器(ASDM)
要使用ASDM,首先要保證ASA的Flash中有ASDM映像,可以通過(guò)dir命令查看asa#?dir
Directory?of?disk0:/
55???-rwx??6889764???14:16:34??Dec??09??2017???asdm-602.bin
(1)啟用HTTPS服務(wù)器功能,命令如下asa(config)#?http?server?enable?[port]???????//默認(rèn)端口是443
(2)配置允許HTTPS接入,命令如下:asa(config)#?http?{network|ip-address}?mask?interface-name
(3)指定ASDM映像的位置,命令如下:asa(config)#?asdm?p_w_picpath?disk0:/asdm-602.bin
(4)配置客戶端登陸使用的用戶名和密碼,命令如下:asa(config)#?username?user?password?password?privilege?15
如果不配置用戶名和密碼,ASDM默認(rèn)使用用戶名admin,密碼為使用enable password命令設(shè)置的密碼。
例如:以下是一個(gè)ASA的配置案例asa(config)#?http?server?enable
asa(config)#?http?192.168.0.0?255.255.255.0?inside
asa(config)#?asdm?p_w_picpath?disk0:/asdm-602.bin
asa(config)#?username?ysf?password?123456?privilege?15
客戶端主機(jī)使用ASDM需要首先安裝Java Runtiime Environment(JRE),然后在主機(jī)啟動(dòng)瀏覽器,輸入https://192.168.0.254(inside接口的IP地址)進(jìn)行訪問(wèn)。
多安全區(qū)域(配置DMZ)
上面介紹了ASA的基本配置,其中只用到了inside和outside兩個(gè)安全區(qū)域,實(shí)際上ASA可以配置多個(gè)安全區(qū)域,比較常用的是DMZ
DMZ(隔離區(qū))位于企業(yè)內(nèi)部網(wǎng)絡(luò)和外部網(wǎng)絡(luò)之間的一個(gè)網(wǎng)絡(luò)區(qū)域,通常用來(lái)放置一些必須公開(kāi)的服務(wù)器,如Web服務(wù)器、FTP服務(wù)器和論壇等。下圖所示
DMZ默認(rèn)的訪問(wèn)規(guī)則
DMZ的安全級(jí)別介于inside和outside之間,在存在DMZ的情況下,默認(rèn)的訪問(wèn)規(guī)則如下圖所示:
* 允許從高安全級(jí)別接口到低安全級(jí)別接口的流量通過(guò)
* 禁止從低安全級(jí)別接口到高安全級(jí)別接口的流量通過(guò)
在實(shí)際應(yīng)用中,通常需要配置訪問(wèn)規(guī)則和地址轉(zhuǎn)換允許outside訪問(wèn)DMZ
DMZ的基本配置asa(config)#?int?e0/1
asa(config-if)#?namaif?dmz
asa(config-if)#?security-level?50
asa(config-if)#?ip?add?192.168.1.1?255.255.255.0
asa(config-if)#?no?sh
總結(jié)
以上是生活随笔為你收集整理的asa 防火墙拦截了https_防火墙(ASA)的基本配置与远程管理的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問(wèn)題。
- 上一篇: 【虎虎生威迎虎年】对穿肠之PaddleB
- 下一篇: 手机拨号上网