目錄 一、入侵檢測系統 二、防火牆 三、防水牆 四、tcpdump抓包 五、實驗演示 1.SNAT 一、入侵檢測系統 特點:是不阻斷任何網路訪問,量化、定位來自內外網路的威脅情況, 主要以提供報警和事後監督為主,提供有針對性的指導措施和安全決策依據,類似於監控系統 二、防火牆 1.特點:隔離功能,工 ...
目錄
一、入侵檢測系統
二、防火牆
三、防水牆
四、tcpdump抓包
五、實驗演示
1.SNAT
一、入侵檢測系統
特點:是不阻斷任何網路訪問,量化、定位來自內外網路的威脅情況,
主要以提供報警和事後監督為主,提供有針對性的指導措施和安全決策依據,類似於監控系統
二、防火牆
1.特點:隔離功能,工作在網路或主機邊緣
對進出網路或主機的數據包基於一定的規則檢查,併在匹配某規則時由規則定義的行為進行處理的一組功能的組件,
基本上的實現都是預設情況下關閉所有的通過型訪問,只開放允許訪問的策略,會將希望外網訪問的主機放在網路中。
2.防火牆分類:
主機防火牆:服務範圍為當前一臺主機
網路防火牆:服務範圍為防火牆一側的區域網
3.按實現方式劃分:
硬體防火牆:在專用硬體級別實現部分功能的防火牆;另一個部分功能基於軟體實現
4.按網路協議劃分:
網路層防火牆:OSI模型下四層,又稱為包過濾防火牆
應用層防火牆/代理伺服器:proxy 代理網關,OSI模型七層
5.Netfilter
Linux防火牆是由Netfilter組件提供的,Netfilter工作在內核空間,集成在linux內核中
6.iptables
由軟體包iptables提供的命令行工具,工作在用戶空間,用來編寫規則,寫好的規則被送往netfilter,告訴內核如何去處理信息包
iptables預設安裝
Linux的防火牆體系主要工作在網路層針對數據包實施過濾和限制,屬於典型的包過濾防火牆(或稱為網路層防火牆)。
(1)五元素:
1.源ip地址
2.目標IP地址
3.源埠
4.目標埠
5.協議
(2)五種規則鏈
1.INPUT:處理入棧數據包
2.OUTPUT:處理出棧數據包
3.FORWORD:處理轉發數據包
4.POSTROUTING:處理路由選擇後處理數據包
5.PREROUTING:處理路由選擇前數據包
(3)四種規則表
1.raw表:確定是對數據包進行狀態跟蹤
2.mangle表:為數據包設置標記
3.nat表:修改數據包的源目標IP地址或埠
4.fileter表:確認是否放行該數據包
四表五鏈
規則表的作用:容納各種規則鏈
規則鏈的作用:容納各種防火牆規則
總結:表裡有鏈,鏈里有規則
註意事項:
不指定表名時,預設指filter表
不指定鏈名時,預設指表內的所有鏈,一般不這麼操作
除非設置鏈的預設策略,否則必須指定匹配條件
選項、鏈名、控制類型使用大寫字母,其餘均為小寫
(4)內核中數據包的傳輸過程
1. 當一個數據包進入網卡時,數據包首先進入PREROUTING鏈,內核根據數據包目的IP判斷是否需要轉送出去。
2. 如果數據包是進入本機的,數據包就會沿著圖向下移動,到達INPUT鏈。數據包到達INPUT鏈後, 任何進程都會收到它。
本機上運行的程式可以發送數據包,這些數據包經過OUTPUT鏈,然後到達
3. 如果數據包是要轉發出去的,且內核允許轉發,數據包就會向右移動,經過FORWARD鏈,然後到達POSTROUTING鏈輸出
(5)規則內的匹配順序
自上向下按順序依次進行檢查,找到相匹配的規則即停止(LOG策略例外,表示記錄相關日誌)
若在該鏈內找不到相匹配的規則,則按該鏈的預設策略處理(未修改的狀況下,預設策略為允許)
(6)數據包的常見控制類型
ACCEPT:允許數據包通過。
DROP: 直接丟棄數據包,不給出任何回 應信息。
REJECT:拒絕數據包通過,必要時會給數據發送端一個響應信息。
SNAT: 修改數據包的源地址
DNAT: 修改數據包的目的地址
(7)管理選項
-A 在指定鏈末尾追加一條
-I 在指定鏈中插入一條新的,未指定序號預設作為第一條
-P 指定預設策略
-D 刪除
-R 修改、替換某一條規則
-L 查看
-n 所有欄位以數字形式顯示
-v 查看時顯示更詳細信息,常跟-L一起使用
--line-numbers 規則帶編號
-F 清除鏈中所有規則
-X 清空自定義鏈的規則,不影響其他鏈
-Z 清空鏈的計數器
-S 看鏈的所有規則或者某個鏈的規則/某個具體規則後面跟編號
(8)匹配的條件
-p 指定要匹配的數據包的協議類型
-s 指定要匹配的數據包的源IP地址
-d 指定要匹配的數據包的目的IP地址
-i 指定數據包進入本機的網路介面
-o 指定數據包離開本機做使用的網路介面
--sport 指定源埠號
--dport 指定目的埠號
例子演示:
(1)粗略查看預設規則:
(2)數字化的形式查看規則:
(3) 指定表查看:
(4)查看指定表中的指定鏈
(5) 清空規則(清除前先備份)
(6)備份iptabs
(7)還原iptabes
(8)添加規則,禁止所有主機ping本機
可以看到所有網段無法通信
(9)添加所有網段都可以通信
(10)指定序號插入,插入到第一條
(11) 添加禁止任何主機tcp
(12)添加允許任何主機udp
(13)查看行規則的位置
(14)添加拒絕某一臺主機,其他的可以
(15) 拒絕多台主機
(16) 添加指定埠(禁止22埠ssh服務會掉)
(17)添加指定IP地址的服務埠拒絕
可以看到IP地址可以登錄,但是使用指定埠不可通信
(18)根據序號刪除內容
(19)內容匹配刪除(有兩個相同的則作用為去重) 如果有兩個重覆的規則,則刪除序號較小的
(20)修改預設規則:
(21)filter三條鏈的預設值為ACCEPT,修改為DROP
(22)除了icmp以外,所有的協議都可以進入
(23)禁止整個網段訪問21和80埠 (小的數字寫在前面,大的寫在後面)
顯示匹配
(1)-m multiport --sport 源埠列表 -m multiport --dport 目的埠列表
(2)IP範圍匹配
-m iprange --src-range 源IP範圍
-m iprange --dst-range 目的IP範圍
(3)MAC匹配
-m mac --mac-source MAC地址
(4) 自定義鏈使用
(5)自定義鏈改名
(6)創建自定義鏈規則
(7)刪除自定義規則鏈:先刪除iptables INPUT鏈中的對應關係,然後刪除自定義鏈中的規則。
7.firewalld
軟體包:firewalld、firewalld-config
管理工具:firewall-cmd 命令行工具、firewall-config 圖形工作
三、防水牆
特點:廣泛意義上的防水牆:防水牆,與防火牆相對,是一種防止內部信息泄漏的安全產品。
防水牆針對這四種泄密途徑,在事前、事中、事後進行全面防護。
四、 tcpdump抓包
tcpdump抓包工具的運用
wireshark 抓包工具只在windows中使用。
tcpdump 可以在Linux系統中使用。
1.靜態抓包
linux沒有查看工具,所有將target.cap導入到外面實驗target查看
2.動態抓包
五、實驗演示
1.在pc1配置內網地址
重啟服務
2.配置外網地址pc3
3.中轉伺服器pc2,先配置ens33網關
重啟網卡
配置ens37網卡作為外網的轉發處
重啟網卡
4.修改網卡模式
內網和對應網卡為nat,外網為僅主機
網關伺服器配置:
外網網卡配置
5.啟動轉發
進入/etc/sysctl.conf
6.添加規則,允許訪問指定網段埠
使用pc1向外網通信
pc3外網訪問內網