0
  • 聊天消息
  • 系統(tǒng)消息
  • 評論與回復
登錄后你可以
  • 下載海量資料
  • 學習在線課程
  • 觀看技術視頻
  • 寫文章/發(fā)帖/加入社區(qū)
會員中心
創(chuàng)作中心

完善資料讓更多小伙伴認識你,還能領取20積分哦,立即完善>

3天內(nèi)不再提示

網(wǎng)站總被攻擊?寫個自動封禁IP的腳本給你

dyquk4xk2p3d ? 來源:CSDN-佞臣888 ? 2023-01-29 11:44 ? 次閱讀

個人網(wǎng)站總被攻擊?寫個自動封禁IP的腳本給你!具體如下:

1.在ngnix的conf目錄下創(chuàng)建一個blockip.conf文件

2.里面放需要封禁的IP,格式如下

deny1.2.3.4;

3.在ngnix的HTTP的配置中添加如下內(nèi)容

includeblockips.conf;

8efa3542-96c4-11ed-bfe3-dac502259ad0.png

4.重啟 ngnix

/usr/local/nginx/sbin/nginx-sreload

然后你就會看到IP被封禁了,你會喜提403;

8f04ef78-96c4-11ed-bfe3-dac502259ad0.png

小思考:如何實現(xiàn)使用ngnix自動封禁ip的功能

1.AWK統(tǒng)計access.log,記錄每分鐘訪問超過60次的ip,然后配合nginx進行封禁

2.編寫shell腳本

3.crontab定時跑腳本

好了上面操作步驟列出來了,那我們先來實現(xiàn)第一個吧

8f11205e-96c4-11ed-bfe3-dac502259ad0.png

操作一:AWK統(tǒng)計access.log,記錄每分鐘訪問超過60次的ip

awk'{print$1}'access.log|sort|uniq-cd|awk'{if($1>60)print$0}'

1.awk'{print$1}'access.log 取出access.log的第一列即為ip。
2.sort|uniq-cd去重和排序
3.awk'{if($1>60)print$0}'判斷重復的數(shù)量是否超過60個,超過60個就展示出來

操作二:編寫shell腳本,實現(xiàn)整體功能(寫了注釋代碼)

#不能把別人IP一直封著吧,這里就清除掉了
echo"">/usr/local/nginx/conf/blockip.conf

#前面最開始編寫的統(tǒng)計數(shù)據(jù)功能
ip_list=$(awk'{print$1}'access.log|sort|uniq-cd|awk'{if($1>60)print$0}')

#判斷這個變量是否為空
iftest-z"$ip_list"
then
#為空寫入11.log中,并重新啟動ngnix
echo"為空">>/usr/local/nginx/logs/11.log

/usr/local/nginx/sbin/nginx-sreload

else
#如果不為空前面加上deny格式和ip寫入blockip.conf中
echo"deny"$ip_list>/usr/local/nginx/conf/blockip.conf

#因為前面攜帶了行數(shù),所有我們需要去除掉前面的行數(shù),寫入后在讀取一次
ip_list2=$(awk'{print$3}'/usr/local/nginx/conf/blockip.conf)

#最后再把讀取出來的值,在次寫入到blockip.conf中
echo"deny"$ip_list2";">/usr/local/nginx/conf/blockip.conf

#重啟ngnix
/usr/local/nginx/sbin/nginx-sreload
#清空之前的日志,從最新的開始截取
echo"">/usr/local/nginx/logs/access.log

fi

操作三:使用crontab定時,來實現(xiàn)訪問每分鐘超過60的

直接實操吧:

crontab-e
*****cd/usr/local/nginx/logs/&&ship_test.sh每一分鐘運行一次
systemctlrestartcrond.service重啟一下配置既可
8f30285a-96c4-11ed-bfe3-dac502259ad0.png

審核編輯:湯梓紅
聲明:本文內(nèi)容及配圖由入駐作者撰寫或者入駐合作網(wǎng)站授權轉(zhuǎn)載。文章觀點僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場。文章及其配圖僅供工程師學習之用,如有內(nèi)容侵權或者其他違規(guī)問題,請聯(lián)系本站處理。 舉報投訴
  • IP
    IP
    +關注

    關注

    5

    文章

    1712

    瀏覽量

    149657
  • HTTP
    +關注

    關注

    0

    文章

    510

    瀏覽量

    31314
  • 代碼
    +關注

    關注

    30

    文章

    4802

    瀏覽量

    68738
  • Shell
    +關注

    關注

    1

    文章

    366

    瀏覽量

    23412
  • 腳本
    +關注

    關注

    1

    文章

    391

    瀏覽量

    14891

原文標題:網(wǎng)站總被攻擊?寫個自動封禁 IP 的腳本給你

文章出處:【微信號:良許Linux,微信公眾號:良許Linux】歡迎添加關注!文章轉(zhuǎn)載請注明出處。

收藏 人收藏

    評論

    相關推薦

    預防跨站腳本攻擊(XSS)的方法

    跨站腳本攻擊(XSS),是最普遍的Web應用安全漏洞。這類漏洞能夠使得攻擊者嵌入惡意腳本代碼到正常用戶會訪問到的頁面中,當正常用戶訪問該頁面時,則可導致嵌入的惡意
    的頭像 發(fā)表于 09-30 10:05 ?3175次閱讀

    SCDN的抗CC攻擊和抗DDoS攻擊防護是什么?

    情報和安全策略,實現(xiàn)智能識別大規(guī)模攻擊自動切換高防IP,實現(xiàn)對CC和DDoS的防御。而當節(jié)點未受攻擊時,用戶的資源請求可正常從SCDN節(jié)點獲取,達到加速效果。這就是阿里云SCDN提供
    發(fā)表于 01-05 14:45

    面對外部惡意攻擊網(wǎng)站,高防服務器如何去防御攻擊

    企業(yè)QQ:2880269198 / 347397455隨著互聯(lián)網(wǎng)的迅猛發(fā)展,互聯(lián)網(wǎng)環(huán)境越來越惡劣,惡意攻擊也越來越多。無論是正規(guī)企業(yè)網(wǎng)站、游戲網(wǎng)站、購物網(wǎng)站還是旗牌室、娛樂
    發(fā)表于 05-07 17:00

    python腳本如何根據(jù)公網(wǎng)IP自動獲取地址和天氣信息?

    python腳本如何根據(jù)公網(wǎng)IP自動獲取地址和天氣信息?
    發(fā)表于 12-28 07:14

    cc攻擊防御解決方法

    攻擊ipcc攻擊時服務器通常會出現(xiàn)成千上萬的tcp連接,打開cmd輸入netstat -an如果出現(xiàn)大量外部ip就是
    發(fā)表于 01-22 09:48

    網(wǎng)站攻擊帶來的危害

    的并發(fā)量3.使用CDN的訪客訪問的流程是訪客---cdn----網(wǎng)站服務器如果檢測到是攻擊自動進行攔截清洗保護網(wǎng)站 加速訪問 隱藏源服務器IP
    發(fā)表于 08-05 13:13 ?475次閱讀

    網(wǎng)站攻擊的危害

    的并發(fā)量3.使用CDN的訪客訪問的流程是訪客---cdn----網(wǎng)站服務器如果檢測到是攻擊自動進行攔截清洗保護網(wǎng)站 加速訪問 隱藏源服務器IP
    發(fā)表于 08-05 13:20 ?504次閱讀

    如何判斷網(wǎng)站是否CC攻擊

    如何判斷網(wǎng)站是否CC攻擊?什么是CC攻擊?CC就是模擬多個用戶不停地進行訪問那些需要大量數(shù)據(jù)操作的頁面,造成服務器資源的浪費,CPU長時間處于100%,永遠都有處理不完的連接直至就網(wǎng)
    發(fā)表于 01-30 15:22 ?461次閱讀
    如何判斷<b class='flag-5'>網(wǎng)站</b>是否<b class='flag-5'>被</b>CC<b class='flag-5'>攻擊</b>

    一些安全的操作規(guī)范可以有效的避免網(wǎng)站攻擊

    大家平時可能經(jīng)常碰到網(wǎng)站攻擊的情況,當網(wǎng)站攻擊后,導致網(wǎng)
    發(fā)表于 10-25 11:51 ?496次閱讀

    網(wǎng)站網(wǎng)絡攻擊的常見形式都有哪些

    現(xiàn)在做網(wǎng)站的站長都有一個心里,網(wǎng)站攻擊是在所難免的事,特別是一些比較熱門的行業(yè)以及一些比較小的企業(yè),更是被這些攻擊整得焦頭爛額。
    發(fā)表于 11-16 11:20 ?2934次閱讀

    網(wǎng)站服務器攻擊后如何查找木馬篡改的痕跡

    很對客戶網(wǎng)站以及服務器攻擊,被黑后,留下了很多webshell文件,也叫網(wǎng)站木馬文件,客戶對自己網(wǎng)站的安全也是很擔憂,擔心
    發(fā)表于 01-14 15:23 ?1605次閱讀

    網(wǎng)站被黑客攻擊的兩大因素分析處理

    2020年3月中旬,我們SINE安全收到客戶的安全求助,說是網(wǎng)站攻擊打不開了,隨即對其進行了分析了導致網(wǎng)站
    發(fā)表于 03-23 14:24 ?1200次閱讀

    如何使用符號執(zhí)行的python實現(xiàn)攻擊腳本分析平臺

    對Python腳本的動態(tài)符號執(zhí)行及路徑探索,可以獲得觸發(fā)攻擊的輸入流量及相應的輸出攻擊載荷,以此實現(xiàn)對Python攻擊腳本
    發(fā)表于 07-16 15:50 ?11次下載
    如何使用符號執(zhí)行的python實現(xiàn)<b class='flag-5'>攻擊</b><b class='flag-5'>腳本</b>分析平臺

    攻防演練典型攻擊手法及防御手段

    攻擊方通過部署大量的自動化掃描來實施信息的快速收集,這些掃描大部分通過代理池、云函數(shù)服務來實施,以繞過防守方對掃描方IP封禁的操作。下圖為通過某云函數(shù)來進行掃描,技術原理與代理池不同,
    的頭像 發(fā)表于 10-25 09:54 ?3170次閱讀

    ip腳本進化的解決辦法

    上次給大家分享過一個封IP腳本。我搞那個腳本的目的是為了把訪問量太大的IP地址給封掉,然后每隔半小時解封。
    的頭像 發(fā)表于 06-11 17:03 ?703次閱讀
    封<b class='flag-5'>ip</b><b class='flag-5'>腳本</b>進化的解決辦法