利用Linux防火墻隔離本地欺騙地址的方法是什么
防火墻借由監測所有的封包并找出不符規則的內容,可以防范電腦蠕蟲或是木馬程序的快速蔓延。防火墻,其實說白了講,就是用于實現Linux下訪問控制的功能的,它分為硬件的或者軟件的防火墻兩種。下面這篇文章主要給大家介紹了關于如何利用Linux防火墻隔離本地欺騙地址的相關資料,文中介紹的非常詳細,需要的朋友可以參考下
具體步驟
有了 iptables 防火墻,你可以創建策略或者有序的規則集,規則集可以告訴內核該如何對待特定的數據包。在內核中的是Netfilter 框架。Netfilter 既是框架也是 iptables 防火墻的項目名稱。作為一個框架,Netfilter 允許 iptables 勾連被設計來操作數據包的功能。概括地說,iptables 依靠 Netfilter 框架構筑諸如過濾數據包數據的功能。
每個 iptables 規則都被應用到一個表中的鏈上。一個 iptables 鏈就是一個比較包中相似特征的規則集合。而表(例如 nat 或者 mangle)則描述不同的功能目錄。例如, mangle 表用于修改包數據。因此,特定的修改包數據的規則被應用到這里;而過濾規則被應用到 filter 表,因為 filter 表過濾包數據。
iptables 規則有一個匹配集,以及一個諸如 Drop 或者 Deny 的目標,這可以告訴 iptables 對一個包做什么以符合規則。因此,沒有目標和匹配集,iptables 就不能有效地處理包。如果一個包匹配了一條規則,目標會指向一個將要采取的特定措施。另一方面,為了讓 iptables 處理,每個數據包必須匹配才能被處理。
現在我們已經知道 iptables 防火墻如何工作,讓我們著眼于如何使用 iptables 防火墻檢測并拒絕或丟棄欺騙地址吧。
打開源地址驗證
作為一個安全工程師,在處理遠程的欺騙地址的時候,我采取的第一步是在內核打開源地址驗證。
源地址驗證是一種內核層級的特性,這種特性丟棄那些偽裝成來自你的網絡的包。這種特性使用反向路徑過濾器方法來檢查收到的包的源地址是否可以通過包到達的接口可以到達。(LCTT 譯注:到達的包的源地址應該可以從它到達的網絡接口反向到達,只需反轉源地址和目的地址就可以達到這樣的效果)
利用下面簡單的腳本可以打開源地址驗證而不用手工操作:
#!/bin/sh
#作者: Michael K Aboagye
#程序目標: 打開反向路徑過濾
#日期: 7/02/18
#在屏幕上顯示 “enabling source address verification”
echo -n "Enabling source address verification…"
#將值0覆蓋為1來打開源地址驗證
echo 1 > /proc/sys/net/ipv4/conf/default/rp_filter
echo "completed"
上面的腳本在執行的時候只顯示了 Enabling source address verification 這條信息而不會換行。默認的反向路徑過濾的值是 0,0 表示沒有源驗證。因此,第二行簡單地將默認值 0 覆蓋為 1。1 表示內核將會通過確認反向路徑來驗證源地址。
最后,你可以使用下面的命令通過選擇 DROP 或者 REJECT 目標之一來丟棄或者拒絕來自遠端主機的欺騙地址。但是,處于安全原因的考慮,我建議使用 DROP 目標。
像下面這樣,用你自己的 IP 地址代替 IP-address 占位符。另外,你必須選擇使用 REJECT 或者 DROP 中的一個,這兩個目標不能同時使用。
iptables -A INPUT -i internal_interface -s IP_address -j REJECT / DROP
iptables -A INPUT -i internal_interface -s 192.168.0.0/16 -j REJECT / DROP
這篇文章只提供了如何使用 iptables 防火墻來避免遠端欺騙攻擊的基礎知識。
補充閱讀:防火墻主要使用技巧
一、所有的防火墻文件規則必須更改。
盡管這種方法聽起來很容易,但是由于防火墻沒有內置的變動管理流程,因此文件更改對于許多企業來說都不是最佳的實踐方法。如果防火墻管理員因為突發情況或者一些其他形式的業務中斷做出更改,那么他撞到槍口上的可能性就會比較大。但是如果這種更改抵消了之前的協議更改,會導致宕機嗎?這是一個相當高發的狀況。
防火墻管理產品的中央控制臺能全面可視所有的防火墻規則基礎,因此團隊的所有成員都必須達成共識,觀察誰進行了何種更改。這樣就能及時發現并修理故障,讓整個協議管理更加簡單和高效。
二、以最小的權限安裝所有的訪問規則。
另一個常見的安全問題是權限過度的規則設置。防火墻規則是由三個域構成的:即源(IP地址),目的地(網絡/子網絡)和服務(應用軟件或者其他目的地)。為了確保每個用戶都有足夠的端口來訪問他們所需的系統,常用方法是在一個或者更多域內指定打來那個的目標對象。當你出于業務持續性的需要允許大范圍的IP地址來訪問大型企業的網絡,這些規則就會變得權限過度釋放,因此就會增加不安全因素。服務域的規則是開放65535個TCP端口的ANY。防火墻管理員真的就意味著為黑客開放了65535個攻擊矢量?
三、根據法規協議和更改需求來校驗每項防火墻的更改。
在防火墻操作中,日常工作都是以尋找問題,修正問題和安裝新系統為中心的。在安裝最新防火墻規則來解決問題,應用新產品和業務部門的過程中,我們經常會遺忘防火墻也是企業安全協議的物理執行者。每項規則都應該重新審核來確保它能符合安全協議和任何法規協議的內容和精神,而不僅是一篇法律條文。
四、當服務過期后從防火墻規則中刪除無用的規則。
規則膨脹是防火墻經常會出現的安全問題,因為多數運作團隊都沒有刪除規則的流程。業務部門擅長讓你知道他們了解這些新規則,卻從來不會讓防火墻團隊知道他們不再使用某些服務了。了解退役的服務器和網絡以及應用軟件更新周期對于達成規則共識是個好的開始。運行無用規則的報表是另外一步。黑客喜歡從來不刪除規則的防火墻團隊。
利用Linux防火墻隔離本地欺騙地址的方法是什么相關文章: