自動分析黑名單及白名單的iptables指令碼

2021-12-29 19:39:34 字數 2449 閱讀 5575

①此指令碼能自動過濾掉企業中通過nat出去的白名單ip,很多企業都是通過nat軟路由上網,我們可以將一些與我們有往來的公司及本公司的安全ip新增進白名單,以防誤剔;

②閥值defiin這裡定義的是100,其實這個值應該根據具體生產環境而定,50-100之間較好;

③此指令碼原理其實很簡單,判斷瞬間連線數是否大於100,如果是白名單裡的ip則跳過;如果不是,則用iptables -i來自動剔除,這裡不能用-a,a是在iptables的規則的最後新增,往往達不到即時剔除的效果;

④此指令碼最後更新時間為2023年5月24日,這裡衷心感謝3158.com的技術總監唐老師,謝謝您在安全相關的指導;

⑤25是mail埠的,其它可依次類推,比如22,再比如80等,具體看你的伺服器的應用;

⑥如有疑問,請聯絡撫琴煮酒[email protected]

[root@mail ~]# cat /root/deny_100.sh

#/bin/bash

netstat -an grep :80 grep -v 127.0.0.1 awk sortawk -f: uniq -c awk $1 >50 > /root/black.txt

for i in `awk /root/black.txt`

docount=`grep $i /root/black.txt awk `

define="50"

zero="0"

if [ $count -gt $define ];

then

grep $i /root/white.txt > /dev/null

if [ $? -gt $zero ];

then

echo "$count $i"

iptables -i input -p tcp -s $i -j drop

fifi

done

2023年3月30日下午14:25分,用下列命令監控時:

netstat -an grep :25 grep -v 127.0.0.1 awk sortawk -f: uniq -c awk $1 >100

1122 219.136.163.207

17 61.144.157.236

用一查,發現

ip138.com ip查詢(搜尋ip位址的地理位置)

您查詢的ip:219.136.163.207

本站主資料:廣東省廣州市 電信(荔灣區)

參考資料一:廣東省廣州市 電信(荔灣區)

參考資料二:廣東省廣州市荔灣區 電信adsl

呼叫deny_100.sh後將此ip drop掉,再執行./root/count.sh後無顯示,顯示成功,可用iptables –nl驗證,所以將此安全指令碼寫進crontab裡

*/1 * * * * root /bin/sh /root/deny_100.sh

效果如下:

工作中的linux防火牆經驗心得

一、iptables防火牆並不能阻止ddos攻擊,建議在專案實施中採購硬體防火牆,置於整個系統之前,用於防ddos攻擊和埠對映;如果對安全有特殊要求,可再加上應用層級的防火牆,比如天泰防火牆,其功能強大如此:①天泰web應用防火牆基於對資料報文頭部和載荷完整的檢測,對web應用客戶端輸入進行驗證,從而對各類已知的及新興的web應用威脅提供全方位的防護,如sql注入、跨站指令碼、蠕蟲、黑客掃瞄和攻擊等;②天泰web應用防火牆提供對目前國內比較氾濫的ddos攻擊的防護。針對web應用進行的頻寬和資源耗盡型ddos攻擊,都可輕鬆應對。尤其針對應用層的ddos攻擊,提供細粒度的防護,其它優點這裡不一一介紹了。

二、在專案實施中建議關閉伺服器的iptables防火牆,目的為:①更好的提高後端伺服器網路效能;②方便資料流在整個業務系統內部流通,安全方面工作由硬體防火牆來承擔。

三、我目前主要將iptables用於內部作nat防火牆,它的效能和方便管理性確實強悍,經迅雷測試可發現,公司內部的10m頻寬能被利用得一絲無餘;武漢地區比較常用的軟體路由器是海蜘蛛,這個其實也是iptables的二次開發;前二年替朋友網咖佈署網咖的路由器,我強烈推薦的是讓iptables作nat路由**,事實證明效果很好。

四、iptables的l是命令,而-v和-n只是作為選項,它們不能進行組合,如-lvn;如果要列出防火牆詳細規則,可採用iptables -nv -l;

五、如果是使用遠端來除錯iptables防火牆,最好是設定crontab作業是定時停止防火牆,以防自己被鎖定,5分鐘停止一次iptables即可,等整個指令碼完全穩定後再關閉此crontab作業。

六、如果使用預設禁止一切策略,即應立即使用回環介面lo(因為禁止一切包括了lo);附註:回環介面lo在linux系統中被用來提供本地、基於網路的服務的專用網路介面,不用把本地資料流通過網路介面驅動器傳送,而是採用作業系統通過回環介面傳送,採取的捷徑,大大提高了效能。

七、如果是電信或雙線機房託管的伺服器,在沒有配置前端硬體防火牆的情況下,linux主機一定要開啟iptables防火牆,windows2003主機開啟它自帶的系統防火牆,並禁ping。

HDFS白名單和黑名單機制

允許哪些機器可以加入到當前的hdfs集群中。通過在hdfs site.xml中配置dfs.hosts引數來指定白名單,dfs.hosts預設值為空,表示所有機器都可以加入集群中。白名單配置和啟動過程 1 建立 dfs.hosts 檔案,並新增白名單的主機名稱,每行乙個主機 檔案路徑在namenode...

php檔案白名單 php實現ip白名單黑名單功能

這個是乙個檢測ip是否非法的php函式,適應於白名單,黑名單功能開發,主要場景應用於 api 限制,訪問限制等.複製 如下 安全ip檢測,支援ip段檢測 param string ip 要檢測的ip param string array ips 白名單ip或者黑名單ip return boolean...

php檔案白名單 php實現ip白名單黑名單功能

這個是乙個檢測ip是否非法的php函式,適應於白名單,黑名單功能開發,主要場景應用於 api 限制,訪問限制等.安全ip檢測,支援ip段檢測 param string ip 要檢測的ip param string array ips 白名單ip或者黑名單ip return boolean true ...