①此指令碼能自動過濾掉企業中通過nat出去的白名單ip,很多企業都是通過nat軟路由上網,我們可以將一些與我們有往來的公司及本公司的安全ip新增進白名單,以防誤剔;
②閥值defiin這裡定義的是100,其實這個值應該根據具體生產環境而定,50-100之間較好;
③此指令碼原理其實很簡單,判斷瞬間連線數是否大於100,如果是白名單裡的ip則跳過;如果不是,則用iptables -i來自動剔除,這裡不能用-a,a是在iptables的規則的最後新增,往往達不到即時剔除的效果;
④此指令碼最後更新時間為2023年5月24日,這裡衷心感謝3158.com的技術總監唐老師,謝謝您在安全相關的指導;
⑤25是mail埠的,其它可依次類推,比如22,再比如80等,具體看你的伺服器的應用;目前發現子鏈結過多的web站點效果不好,我們這個時候可以用iptables的recent模組來解決,其它非web應用效果還是不錯的;
指令碼內容如下所示:
12
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
#/bin/bash
netstat
-an|
grep
:80 |
grep
-
v
127.0.0.1 |
awk
''
|
sort
|
awk
-f:
''
|
uniq
-c |
awk
'$1 >50 '
>
/root/black
.txt
for
i
in
`
awk
''
/root/black
.txt`
do
count=`
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
fi
fi
done
2023年3月30日下午14:25分,用下列命令監控時:
12
netstat
-an|
grep
:25 |
grep
-
v
127.0.0.1 |
awk
''
|
sort
|
awk
-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 -nv -l驗證,所以將此安全指令碼寫進crontab裡,每10分鐘執行一次,結果如下所示:
1*
/10
* * * * root
/bin/sh
/root/deny_100
.sh
自動甄別黑白名單的iptables安全指令碼
此指令碼能自動過濾掉企業中通過nat出去的白名單ip,很多企業都是通過nat軟路由上網,我們可以將一些與我們有往來的公司及本公司的安全ip新增進白名單,以防誤剔 閥值defiin這裡定義的是100,其實這個值應該根據具體生產環境而定,50 100之間較好 此指令碼原理其實很簡單,判斷瞬間連線數是否大...
自動甄別黑白名單的iptables安全指令碼
此指令碼能自動過濾掉企業中通過nat出去的白名單ip,很多企業都是通過nat軟路由上網,我們可以將一些與我們有往來的公司及本公司的安全ip新增進白名單,以防誤剔 閥值defiin這裡定義的是100,其實這個值應該根據具體生產環境而定,50 100之間較好 此指令碼原理其實很簡單,判斷瞬間連線數是否大...
設定Azure WebSite黑白名單
azure website服務預設是不提供黑白名單,也就是說任何internet使用者都可以訪問azure website,那麼我們如何來給我們的 設定黑白名單?這裡有一種方式,可以通過配置 的配置檔案 web.config 來設定訪問的黑白名單。1 通過vs新建乙個asp.net mvc專案 上圖...