Ubuntu 22.04
Sponsored Link

Apache2 : mod_evasive कॉन्फ़िगर करें2023/09/07

 
DoS हमलों आदि से बचाव के लिए mod_evasive मॉड्यूल सक्षम करें।
[1] Mod_evasive को स्थापित और कॉन्फ़िगर करें।
root@www:~#
apt -y install libapache2-mod-evasive
root@www:~#
vi /etc/apache2/mods-available/evasive.conf
# कॉन्फ़िगर करने के लिए प्रत्येक पंक्ति को अनटिप्पणी करें

<IfModule mod_evasive20.c>
    # हैश तालिका का आकार size
    DOSHashTableSize    3097
    # प्रति पृष्ठ अंतराल पर समान पृष्ठ के लिए अनुरोधों की संख्या के लिए सीमा
    DOSPageCount        2
    # प्रति साइट अंतराल पर समान श्रोता पर एक ही क्लाइंट द्वारा किसी ऑब्जेक्ट के लिए अनुरोधों की कुल संख्या के लिए सीमा
    DOSSiteCount        50
    # पृष्ठ संख्या सीमा के लिए अंतराल
    DOSPageInterval     1
    # साइट गिनती सीमा के लिए अंतराल
    DOSSiteInterval     1
    # समय की वह मात्रा (सेकंड में) जिसके लिए क्लाइंट को ब्लॉक किया जाएगा यदि उन्हें ब्लॉकिंग सूची में जोड़ा जाता है
    DOSBlockingPeriod   10

    # यदि आपको आवश्यकता हो तो टिप्पणी हटाएँ और कॉन्फ़िगर करें
    # यदि आईपी पता काली सूची में डाल दिया जाता है तो अधिसूचना पता
    #DOSEmailNotify      root@localhost
    # कोई भी कमांड सेट करना संभव है
    #DOSSystemCommand    "su - someuser -c '/sbin/... %s ...'"
    # लॉग निर्देशिका
    #DOSLogDir           "/var/log/mod-evasive"
</IfModule>

root@www:~#
mkdir /var/log/mod-evasive

root@www:~#
chown www-data:www-data /var/log/mod-evasive

root@www:~#
systemctl reload apache2

[2] Apache2 तक पहुंचने के लिए परीक्षण करें।
root@www:~#
for ((i=1; i <= 20; i++)); do curl -I localhost; done

HTTP/1.1 200 OK
Date: Wed, 30 Nov 2022 04:10:38 GMT
Server: Apache/2.4.52 (Ubuntu)
Upgrade: h2,h2c
Connection: Upgrade
Last-Modified: Wed, 30 Nov 2022 02:11:50 GMT
ETag: "29af-5eea6a09cf7d9"
Accept-Ranges: bytes
Content-Length: 10671
Vary: Accept-Encoding
Content-Type: text/html

HTTP/1.1 200 OK
Date: Wed, 30 Nov 2022 04:10:38 GMT
Server: Apache/2.4.52 (Ubuntu)
Upgrade: h2,h2c
Connection: Upgrade
Last-Modified: Wed, 30 Nov 2022 02:11:50 GMT
ETag: "29af-5eea6a09cf7d9"
Accept-Ranges: bytes
Content-Length: 10671
Vary: Accept-Encoding
Content-Type: text/html

HTTP/1.1 200 OK
Date: Wed, 30 Nov 2022 04:10:38 GMT
Server: Apache/2.4.52 (Ubuntu)
Upgrade: h2,h2c
Connection: Upgrade
Last-Modified: Wed, 30 Nov 2022 02:11:50 GMT
ETag: "29af-5eea6a09cf7d9"
Accept-Ranges: bytes
Content-Length: 10671
Vary: Accept-Encoding
Content-Type: text/html

# अवरुद्ध होने पर "403 निषिद्ध" पर जाएँ
HTTP/1.1 403 Forbidden
Date: Wed, 30 Nov 2022 04:10:38 GMT
Server: Apache/2.4.52 (Ubuntu)
Content-Type: text/html; charset=iso-8859-1

HTTP/1.1 403 Forbidden
Date: Wed, 30 Nov 2022 04:10:38 GMT
Server: Apache/2.4.52 (Ubuntu)
Content-Type: text/html; charset=iso-8859-1

.....
.....

# यदि अवरुद्ध किया गया है, तो लॉग रिकॉर्ड किए जाते हैं

root@www:~#
ll /var/log/mod-evasive

total 12
drwxr-xr-x  2 www-data www-data 4096 Nov 30 13:16 ./
drwxrwxr-x 11 root     syslog   4096 Nov 30 13:16 ../
-rw-r--r--  1 www-data www-data    5 Nov 30 13:16 dos-127.0.0.1

# यदि अधिसूचना सेट की जाती है, तो इसे निम्नानुसार भेजा जाता है

root@www:~#
mail

Mail version 8.1.2 01/15/2001.  Type ? for help.
"/var/mail/root": 1 message 1 unread
>U  1 www-data@www.srv.  Wed Nov 30 13:16   20/621
& 1
Message 1:
From www-data@www.srv.world  Wed Nov 30 13:16:38 2022
X-Original-To: root@localhost
To: root@localhost
MIME-Version: 1.0
Content-Type: text/plain; charset="ANSI_X3.4-1968"
Content-Transfer-Encoding: 8bit
Date: Wed, 30 Nov 2022 13:16:38 +0900 (JST)
From: www-data <www-data@www.srv.world>

To: root@localhost
Subject: HTTP BLACKLIST 127.0.0.1

mod_evasive HTTP Blacklisted 127.0.0.1
मिलान सामग्री