包過濾技術:經過對網絡層和傳輸層包頭信息的檢查,根據用戶定義的安全策略規則集,肯定是否應該轉發該數據包,將一些不符合安全策略的數據包阻擋在網絡的邊界處(簡單但檢查內容較少)
html
基於狀態監測的包過濾技術:出了檢查每一個獨立的數據包以外,還會試圖跟蹤數除了在網絡連接上的上下文關係,並以網絡連接狀態做爲一個附加的匹配標準,以肯定是否容許和拒絕通訊。(強大規則設置簡單,但複雜度高,對網絡傳輸性能影響較大,並可能受到拒絕服務攻擊的影響)linux
代理技術(proxy):容許客戶端經過它與另外一個網絡服務進行非直接的連接。代理技術有利於保障網絡安全,防止網絡攻擊,包括應用層代理、電路級代理和NAT代理。vim
簡介:netfilter是Linux內核中實現網絡的防火牆功能模塊,iptables則是應用太防火牆管理工具。安全
netfilter/iptables中包含三個最基本的規則表:用於包過濾處理的filter表、用於網絡地址轉換處理的nat表,以及用於特殊目的數據包修改的mangle表。
服務器
鏈:鏈是順序執行規則的編排方式,在複雜的網絡環境中,管理員需求這種可控的、有序執行的規則應用方式。iptables 提供了5條鏈:INPUT鏈、OUTPUT鏈、FORWARD鏈、路由前鏈(Pre-Routing)、路由後鏈(Post-Routing)。網絡
Iptables爲用戶提供了netfilter規則的命令行接口,其命令語法爲:app
$ iptables [-t table] command [match] [target]tcp
-t指定配置規則所在的表,缺省表包括filter、nat、mangle、raw等
工具
命令 | 功能 |
---|---|
-A或--append | 將一條規則附加到鏈末尾 |
-D或--delete | 匹配指定規則編號並刪除 |
-P或--policy | 設置鏈的缺省目標操做 |
-N或--new-chain | 指定名稱建立一個新鏈 |
-F或--flush | 快速清除 |
-L或--list | 列出指定鏈的全部規則 |
(1)過濾ICMP數據包,使主機不接受ping包
(2)只容許特定IP地址訪問主機的某一網絡服務,而其餘IP地址沒法訪問
這裏選用SEED-Ubuntu(簡稱seed)爲服務器,kali爲信任主機,MetaSploitable(簡稱meta)做爲不可信任主機,用kali訪問seed,聯網後記錄三臺機器的IP地址爲:性能
主機 | IP |
---|---|
seed | 192.168.31.53 |
kali | 192.168.31.188 |
meta | 192.168.31.111 |
1.過濾ICMP包
(1). 在seed是上使用命令
iptables -L
發現均採用默認規則
(2). 經過指令
iptables -A INPUT -p icmp -j DROP
指令使得主機不接受icmp的數據包。指令詳解:-A是追加一條規則,INPUT表示數據包入口(規則),-p用於匹配協議,-j用於指定如何處理(ACTION)。
(3).而後經過kalipingseed時失敗,回到SEED再次查看規則,可看到一條icmp針對任何位置不容許訪問的規則
(4).使用
iptables -F
刪除自定義規則,爲下個實踐作準備。
(1).確認kali和meta進行telnet登陸seed
(2).接下來使用
iptebles -P INPUT DROP
指令拒絕一切的數據包流入(修改的是默認規則-p),此時應該兩臺電腦都沒法訪問
(3).使用指令
iptables -A INPUT -P tcp -s 192.168.31.188 -j ACCEPT
開啓kali對seed的tcp服務,並用iptables -L查看規則
(4).再用telnet命令訪問seed,發現只有kali能夠 訪問。
(1).使用
snort -r /home/kali/listen.pacp -c /etc/snort/snort.conf -K ascii
對listen.pacp進行入侵檢測,其中-K ascii主要是爲了指定輸出log文件的編碼爲ASCII,而後獲得對於數據包的檢測
(2).查看輸出的包,能夠發現TCP數據包占據絕大多數。
(3).在 /var/log/snort/ 目錄下能夠查找到alert文件,這個文件即輸出的日誌文件。
經過vim打開能夠發現這個攻擊是nmap發起.
任務:說明蜜網網關是如何利用防火牆和入侵檢測技術完成其攻擊數據捕獲和控制需求
iptables -t filter -L
-t是指定規則表,-L表示列表。查看規則表發現默認的規則都關閉了。
能夠看到防火牆和NIPS(snort_inline)是跟隨系統啓動的,而且開機自動配置剛纔的腳本文件。NIDS不會自動啓動
snort實際執行參數
經過指令vim /etc/init.d/snortd可查看,snortd是snort啓動的腳本文件,snort.conf是具體預警的規則設定,默認使用snort.conf規則,默認監聽網卡爲eth0,默認存儲日誌路徑爲 /var/log/snort。
獲取snort_inline實際執行參數
經過指令vim /etc/init.d/hw-snort_inline打開snort_inline腳本,能夠看到一些默認信息
Snort規則如何自動升級
在/etc目錄下使用命令vim honeywall.conf打開honeywall配置文件,這個裏面能夠看到一些,如咱們配置的IP地址、子網掩碼等等。
snort規則默認是不自動更新的。Oinkmaster是自動更新的軟件。
前兩個任務並不難,真的讓我難受的是第三個任務,蜜網的操做以及vim瀏覽snort都很不熟練,仍是須要繼續學習linux文件的相關操做。snort的瀏覽不少命令都要不斷地去查詢,以爲真的難,並且煩。