ASA基礎知識
ASA的算法:
1.通路控制清單:基于特定的網絡,主機和服務控制網絡通路。
2.連接配接表(conn):維護每個連接配接狀态資訊。安全算法使用此資訊在己建立的連接配接中有效的轉發流量。
3.檢測引擎:執行狀态檢測和應用層檢測。檢測規則集預先定義的,來驗證應用層是否遵從每個RFC和其他标準。
ASA的基本配置:
主機名:全局下輸入 hostname 跟名字
配置密碼:特權密碼在全局下輸入 enable password 跟密碼
配置遠端登入密碼與路由器不同:在全局下直接輸入passwd 跟密碼
ASA接口配置和概念:
邏輯接口稱之為虛拟接口,配置邏輯接口在接口模式下配置:nameif 加接口名字
(注意ASA5505不支援在接口下配置邏輯接口需要在vlan下進行配置)
預設outside為0級别 inside為100級别(進階别隻能通路低級别相同級别也不能通路)
設定級别的指令:在接口下輸入security-level 跟數字
ACL通路控制清單配置:
在全局下輸入:access-list
應用通路控制清單:access-group
配置靜态預設路由:全局下輸入 route 邏輯接口要去的網段子網下一跳IP
儲存配置:在特權下輸入wr ;清除所有配置:全局下輸入clearconfigure all(想除誰換誰)
DMZ稱為隔離區也稱非軍事化區域,位于企業inside和outside之間的一個區域,一般放一些重要資料(級别一般位于inside和outside之間)。
ASA位址轉換
位址轉換有四種類型:靜态NAT、動态NAT、靜态PAT、動态PAT(一般常用的有靜态NAT、靜态PAT、和動态PAT)
靜态NAT和靜态PAT:的作用是能讓外通路内網,也就是說對外提供服務的。他兩的差別PAT能實作用一個公網IP提供多個對外服務。
動态PAT:作用是能讓公司員工用一個外網IP同時都能上網。
配置動态PAT設定:
全局下輸入:nat inside(内網邏輯接口名稱) 1(數字)需要位址映射的位址和子網
全局下輸入:global outside 1 公網位址(注意outside不要設位址,要不就輸入接口interface)
檢視位址映射表;show xlate detail 如要清除緩存:clear configure xlata
配置靜态NAT設定:
首先你要外網通路你DMZ區域預設是不讓的你要設定ACL讓他過去。
全局下輸入:static (dmz,outside)輸入你的公網位址輸入你dmz要映射的位址
注意:這裡要一一對應的用外包含内的方式
全局下輸入:建立一個通路控制清單讓外部能通路你内部的伺服器,接下來應用在ASA的外網接口(outside)。
Access-list dmz的接口名 permit ip any host 公網位址
Access-group dmz的接口名 in interface outside外網接口
配置靜态PAT設定:
全局下輸入:static (dmz,outside)tcp 輸入你的公網位址 http 輸入你dmz要映射的位址 http
static (dmz,outside)tcp 輸入你的公網位址 smtp 輸入你dmz要映射的位址 smtp
Access-list dmz的接口名 permit ip any host 公網位址
Access-group dmz的接口名 in interface outside外網接口
NAT 控制:預設是禁用NAT控制的,如要開啟則輸入指令nat-control在啟用NAT控制時配置NAT位址映射規則并不是必須的,但是如果要啟用NAT控制則配置NAT位址映射規則則是必須的。
NAT豁免允許雙向信任:
全局下輸入:首先要做一個命名擴充ACL
全局下輸入:nat 邏輯接口名 0(0代表豁免) access-list ACL的名稱
遠端管理ASA:
有兩種方式telnet(用于内網遠端管理)ssh(用于外網遠端管理)
配置telnet模式:
全局下輸入telnet 允許的ip和正子網路遮罩放在inside内網接口
例如:(192.168.0.1255.255.255.255)
配置telnet空閑逾時時間:全局下輸入telnet timeout 數字機關分鐘
配置ssh模式:預設登入名為pix
配置主機名:hostname名字
生成RSA密鑰對:在全局輸入crypto key generate rsa modulus 密鑰長度
配置誰允許ssh接入:一般外網ssh 0 0 outside 表示外網所有
也可以在内網設定不過接口要指向inside
ASA進階配置
因為資料過大是以要進行Ip分段MTU(最大傳輸單元)以太網MTU值為1500位元組
辨別:辨別都是6307辨別他們都是同一個IP資料包
标志:能看出是不是最後一個資料包,如第三位(MF)為1表示還有分片,為0表示最後一個分片。第二位都是0表示允許分片
分片偏移量:表示資料包的位置,表示以原始位置為起點的偏移量有多少。
Ip分片安全問題:很多網絡利用ip分片進行攻擊例如:淚滴攻擊作業系統會把ip分片截獲從新組裝ip資料包。
防止ip分片:在全局下輸入fragent chain 1 表示處理分片時會預設等待5秒,5秒沒有收到後續的分片則重組失敗,則最終丢棄。
URL過濾禁用員工登入哪個網站分為三步:
1.建立class-map(類映射)識别傳輸流量。
做ACL: Access-list 随意起個名(aaa) permit tcp 允許通過的網段和子網 any eq www
定義calss-map:class-map 名字随意(map1)
把通路ACL放到class-map裡:Matchaccess-list aaa
定義要過濾的網站:regex名字随意(ccc)“\.taobao\.com”
定義regex的class-map:class-map type regex match-any(表示比對任何)名(map2)
把regex放到map裡:match regex ccc
定義一個類型為inspect的class-map:class-maptype inspect http 随意名(map3)
應用政策:match request header host regex class (map2)
檢查封包頭部的host域中的url字尾如果是taobao。Com則丢棄
2.建立policy-map(政策映射)關聯class-map
Policy-map type insepect http 随意名(p1)
Class (map3)
Drop-connection log
Exit
Policy-map 随意名P2
Class (map1)
inspect http (p1)
3.應用policy-map到接口上
全局模式:Service-policy (p2)interface inside
日志管理:
安全級别有8個:
0 emergencies 系統無法使用
1 alert 需要立即處理
2 critical 臨界狀态
3 error 錯誤狀态
4 warning 警告狀态
5 notification 正常但不良好狀态
6 informational 提醒資訊
7 debugging 調試階段資訊
日志資訊可以輸出到log buffer 、 ASDM 、日志伺服器
配置時區:
全局下:clock timezone peking 8 表示國際标準時間的偏移量
配置時間:clock set 時間日月年
開啟日志功能:log enable
Log buffered 日志級别
檢視日志:show logging
清除日志:clear logging buffer
配置ASDM:
Logging enable
Logging asdm 日志級别
Clear logging asdm
配置日志伺服器:
Logging enable
Logging timestamp (啟用時間戳)
Logging trap 日志級别
Logging host inside 放日志的機器
在客戶機上安裝firewall analyzer 6
ASA的透明模式:有兩種模式路由模式(預設是路由模式)和透明模式
在路由模式下ASA充當三層裝置,在透明模式下ASA充當二層裝置
透明模式的優勢:不需要再接口上配置IP,這樣就不用改變原來的網絡一般透明模式的ASA放在路由的下方。
透明模式與二層交換機的差別:
ASA不參與STP
對于MAC未知位址,ASA不會泛洪而是丢棄
允許流量自動從進階别到低級别,無需ACL
允許ARP流量雙向穿越,而不必配置ACL
ASA透明模式配置:
全局下輸入firewall transparent 想回到路由模式前面加no
檢視目前工作模式:show firewall
設一管理位址:全局ip address ip位址子網
檢視MAC表:show mac-address-table
設定動态MAC過期時間:mac-address-table aging-time 時間分鐘機關
設定靜态MAC:mac-address-table static ip位址 MAC
禁止學習某個MAC:mac-learn ip位址 disble
IPSec ××× 原理與配置
×××(virtual private network虛拟專用網絡)兩個網絡實體之間建立的一種受保護的連接配接,這兩個實體可以通過點到點的鍊路直接相連,但通常情況下它們會相隔較遠。
×××的模式和類型:
×××模式:傳輸模式和隧道模式
差別:隧道模式要比傳輸模式安全,因為隧道模式的ip位址資訊會從新封裝打包,把原始ip保護起來,而傳輸模式雖然傳輸效率快但ip位址沒有受到保護。
×××類型:站點到站點×××,遠端通路×××
差別:站點到站點用于公司到多個分公司,而遠端通路×××适用于單一使用者通路×××适用于出差的員工。
×××加密算法有兩種:對稱加密和非對稱加密
差別:非對稱加密比對稱加密要安全,原因是同一個公鑰不同的私鑰來解密,私鑰都儲存在本地,不會再公網上傳輸。舉個例子:25169和29663,如果兩數相乘,可以很輕松得到答案746588047;但如果就告訴你746588047,讓你猜由那兩個數的乘出來的,估計這一輩子也不一定能算出來。
配置IPSec ×××:
1.流量觸發IPSec
Access-list 100permit ip 自己内部要通路×××的網段對方的内部網段
2.建立管理連接配接:注意對面設定的管理連接配接要跟自己的一樣
Crypto isakmp policy 1
Encryption 加密算法(aes)
Hash sha (非對稱加密)
Authentication pre-share (預共享密鑰)
Group 2 加密組的長度(1024)
全局下輸入:crypto isakmp key 0(0表示明文加密)設定密碼(123)address 對方的外網口位址
全局下輸入:crypto ipsec transform-set 名字随意(aaa)加密類型(esp-aes esp-sha-hmac)
Mode tunnel 開啟隧道傳輸模式
3.建立資料連接配接:
Crypto map 名字随意(bbb) 1 ipsec-isakmp
Set peer 對方外網口位址
Set transform-set aaa
Match address 100(ACL)
映射在應用接口上:
Interface f0/0
Crypto map bbb
在ASA上實作IPSce ×××
路由和ASA上×××的差別:ASA能實作既能通路×××又能上同時上網際網路,ASA有一個功能叫豁免(0表示豁免),隻要把ACL ×××的觸發流量豁免即可實作此功能。
ASA配置IPSce ×××
1.建立管理連接配接:
Crypto isakmp enable outside 開啟ipsce vpn 功能
Encryption aes
Hash sha
Authentication pre-share
Group 2
配置預共享密鑰:
兩種方式
1)crypto isakmp key 設定密碼(123) address 對方外網口
2)tunnel-group 對端外網口 type ipsec-l2l
tunnel-group 對端外網口 ipsec-attributes
pre-shared-key 設定密碼(123)
exit
資料傳輸集:
Crypto ipsce transform-set 名字(aaa) esp-aes esp-sha-hmac 比較常用不一樣之處能夠修改密鑰
2.觸發流量ACL
Access-list 名字( vpn) extended permit ip 自己内網網段要通路×××的位址注意正子網路遮罩對方的使用者的網段
Crypto map 随意名字(qqq)1 match address vpn (觸發流量)
Crypto map qqq 1 set peer 對端的外網接口(ip分片)
Crypto map qqq 1 set transform-set aaa (傳輸集)
應用到接口
Crypto map qqq interface outside
Ipsec ×××進階配置多點到多點
配置多點到多點的×××要注意的事項:
1.預共享密鑰要設定不一樣的
Crypto isakmp key0 要跟以前的不一樣(456) address 對端的外網位址
2.要設定觸發流量:
Access-list 101permit ip 自己的内網通路×××的ip位址反掩碼對方的ip
3.建立資料連接配接
Crypto map 要跟以前的名字一樣 2(數列号不一樣來區分) ipsec-isakmp
Set peer 對端外網位址
Set transform-set aaa(跟以前的一樣就好加密方式)
Match address 101 (觸發流量)
位址轉換存在的問題和解決方案:
一般公司ASA會做成透明模式,外側則放一路由器,做PAT位址轉換。在ASA上做×××,這樣就保證了内網安全,但是在×××出去的時候由于做了PAT位址轉換則觸發流量找不到對端的×××,則無法反問,是以我們運用一下方法解決。
在路由器上做NAT-T(NAT穿越):
先寫ACL要通路外網的位址1
先做PAT位址映射ip nat inside source list 1(預設1表示由于使用外部接口位址則無需定義位址池) interface f0/0 overload
做兩個NAT端口映射:
Ip nat inside source static udp vnp的ip位址 4500(資料連接配接的端口)路由的外網接口 4500
Ip nat inside source static udp vpn的ip位址 500(管理連接配接的端口)路由的外網接口500
遠端通路×××-easy ×××
什麼是AAA?
1.驗證:使用者是誰(authentication)
2.授權:使用者可以做什麼(authorization)
3.統計使用者做過什麼(accounting)
遠端通路又兩個協定:
RADIUS(remoteauthentication dial in user service遠端驗證撥入使用者服務)是全開放協定。
TACACS+(terminalaccess controller access control system終端通路控制器通路控制系統)是cisco的私有協定。
在遠端×××裡我們要引入一個概念“組政策”?
因為遠端通路的使用者不固定是以,觸發流量也就沒辦法設定。最好的辦法就是讓×××網關推動這些政策給用戶端,但很多情況下用戶端的政策都是相同的,為了友善是以就引用了組政策這個概念。
1位址池和DNS網關:給用戶端配置設定iP位址和DNS網關
2共享密鑰:用于×××和用戶端進行加密
3分離隧道:用于同時上網和×××
4分離DNS:用本公司自己的DNS來解析
5配置到組政策裡
動态crypto map:因為遠端用戶端IP都不是固定的是以要用動态cryptomap要先把制定的
傳輸集加到動态crypto map 裡,因為×××接口上隻能應用一個crypto map,是以要把動态
Crypto map應用到靜态crypto map再應用到接口上。
Transform-set →動态crypto map →靜态crypto map →接口
遠端×××應用案例:
建立AAA:
全局下aaa new-model (啟動AAA)
aaa authentication login 認證的名字随意(sukun1) local(本地認證,指在路由上配置使用者和密碼、還有一種認證方式groupradius是另有一台AAA伺服器來進行驗證使用者和密碼,把請求給路由路由在轉發到AAA伺服器上)
aaa authorization network 名字跟上面一直(sukun2)local (給遠端使用者授權)
username 建立使用者 secret 密碼
建立管理連接配接:
全局下crypto isakmp policy 1
Encryption 3des
Hash sha
Authentication pre-share
Group 2
Exit
給使用者配置設定的位址池:
全局下ip local pool 位址池名字随意(sukun-pool)192.168.1.100 192.168.1.200 (注意不能跟内網在同一網段)
做分離隧道:
全局下ip access-list extended 名字(×××)
Permit ip 192.168.0.0 0.0.0.255 any(作用是隻保護這個位址,其他不保護,位址應該是内網的重要資料位址)
Exit
組政策:
全局下crypto isakmp client configuration group 組的名字要在用戶端輸入的(test-group)
Key 在用戶端輸入的密碼(benet-key)
Pool 給使用者配置設定的位址池(sukun-pool)
Dns 202.106.0.20
Acl 分離隧道的名字(×××)
Exit
建立傳輸集:
全局下crypto map transform-set 傳輸集名字(benet-set) esp-3des esp-sha-hmac
建立動态crypto map:
全局下crypto dynamic-map 動态map名字(benet-dymap) 1
Set transform-set 傳輸集名字(benet-set作用把傳輸集應用到動态map)
把動态map應用到靜态map裡:
全局下crypto map 靜态map的名字(benet-static) 2(号碼随意) ipsec-isakmp dynamic 動态map的名字(benet-dymap)
Crypto map 名字(benet-static) client authentication list 認證AAA名字(sukun1)
Cryto map 名字(benet-static) isakmp authorization list 授權AAA名字(sukun2)
Crypto map 名字(benet-static) client configuration address respond(用于讓用戶端先發起請求)
把它應用到外網接口:
Int f0/1
Crypto map 靜态map名字(benet-static)
在ASA上配置遠端×××與路由不同的是:
定義組政策:internal表示在本地、external表示在第三方AAA伺服器上。
分離隧道差別有三種模式:tunnelall預設模式不做分離隧道、tunnelspecified所比對的ACL的流量走隧道、excludedespecified不比對流量的走隧道。
定義使用者組:友善設定政策,對相同的使用者名設定使用者屬性時要用到使用者組
權限比較從大到小排:使用者組→隧道組→crypto map
ASA上配置遠端連接配接案例:
建立×××使用者和密碼:
全局下username benet password 123
Crypto isakmp enable outside (開啟遠端×××)
全局下crypto isakmp policy 10
Encryption 3des
Group 2
位址池:ip local pool 名字(benet-pool)192.168.1.100-192.168.1.200(跟内網不在同一網段)
分離隧道:access-list 名字(×××)permit ip 192.168.0.0 255.255.255.0 any
定義組政策:group-policy 名字(test-group) internal (定義在本地)
Group-policy 名字(test-group) attributes (設定屬性)
開啟分離隧道功能:split-tunnel-policy tunnelspecified (所有比對ACL的流量走隧道)
Split-tunnel-network-list value 位址池名字(×××)
Exit
建立隧道組:tunnel-group 組的名字(benet-group客戶登陸的賬号)type ipsec-ra
Tunnel-group 組名字(benet-group)general-attributes
Address-pool 位址池名字(×××)
Default-group-policy 組政策名字(test-group)
Exit
Tunnel-group 隧道組名字(benet-group)ipsec-attributes
Pre-shared-key 密碼(123客戶登陸密碼)
Exit
建立傳輸集:crypto ipsec transform-set 傳輸集名字(benet-set)esp-3des esp-shahmac
把傳輸集應用在動态map:crypto dynamic-map 動态map名字(benet-dymap) 1 set transform-set 傳輸集名字(benet-set)
建立靜态map:crypto map 靜态map名字(benet-static) 1000ipsec-isakmp dynamic 動态map名字(benet-dymap)
應用在外網口:crypto map 靜态map名字(benet-static)int outside
遠端SSL ×××:用于網頁浏覽器SSL(443)本地加密,提供靈活,低成本的遠端通路。但沒有ipsec-vpn安全。
有三種模式:
1無用戶端可以提供檔案共享功能
2瘦用戶端提供基于TCP服務的遠端通路,如郵局協定POP3、簡單郵件傳輸協定smtp、遠端登入ssh、擴充了網頁浏覽器加密的功能。
3胖用戶端需要在客戶機安裝第三方軟體,實作全網絡層通路,動态下載下傳安裝到客戶機上但要有客戶機的管理者權限。
資料鍊路層網絡安全
常見的區域網路攻擊:
1 MAC位址溢出:
當交換機沒有在MAC位址表找到MAC位址時,則會廣播。就是利用這個特性進行攻擊的。某主機大量僞造假MAC位址,使得MAC位址表溢出,這時交換機在收到正常資料幀的時候,則找不到MAC,會進行廣播這樣攻擊者就會獲得正常的通信資料。
2 ARP欺騙和攻擊:
Arp攻擊制造假arp應答,并發送給除被攻擊的其他主機,arp應答中包含被攻擊位址的ip位址和虛假MAC。
Arp攻擊制造假arp應答,并發送給被攻擊主機,arp應答中包含除被攻擊者剩餘所有主機的ip位址和虛假MAC。
Arp欺騙一般是通過冒充網關,可以控制網絡流量。
3 DHCP伺服器欺騙與DHCP位址耗盡:
DHCP欺騙是将自己變成DHCP伺服器發送虛假位址。