WHM/cPanel में LiteSpeed सर्वर पर CSF में हमलावरों को स्वचालित रूप से ब्लॉक कैसे करें (उन्नत स्क्रिप्ट)
वेब होस्टिंग व्यवसाय चलाने के लिए अपने सर्वरों को स्थिर रखना आवश्यक है, खासकर जब आप सेवाएं प्रदान कर रहे हों। सस्ती वर्डप्रेस होस्टिंग जहां संसाधनों को साझा किया जाता है। cPanel/WHM प्रशासकों के लिए सबसे बड़ी चुनौतियों में से एक "बॉट स्कैनर" और वितरित हमलों से निपटना है जो मानक फ़ायरवॉल नियमों को दरकिनार कर देते हैं।.
LiteSpeed वेब सर्वर बेहद तेज़ है, फिर भी बार-बार होने वाले हमलों से CPU का उपयोग बढ़ सकता है। इस गाइड में, हम एक सेटअप तैयार करेंगे। एडवांस्ड रियल-टाइम लॉग एनालाइजर (v19). साधारण fail2ban स्क्रिप्ट के विपरीत, यह कस्टम समाधान हानिरहित त्रुटियों और खतरनाक ModSecurity हिट्स के बीच अंतर करता है, पूरे सबनेट को बुद्धिमानी से प्रतिबंधित करता है, और सबसे महत्वपूर्ण बात यह है कि इसमें शामिल है... सुरक्षा फ़िल्टर अपने आंतरिक गेटवे आईपी को प्रतिबंधित होने से बचाने के लिए।.
क्या आप Imunify360 का उपयोग कर रहे हैं? यदि आपका सर्वर CSF के बजाय Imunify360 का उपयोग करता है, तो कृपया हमारे दिशानिर्देश देखें। Imunify360 ऑटो-ब्लॉक गाइड.
इस अनुकूलित समाधान का उपयोग क्यों करें?
-
सबसे पहले सुरक्षा: यह स्वचालित रूप से निजी आईपी को अनदेखा करता है (उदाहरण के लिए,
10.0.xx,192.168.xx) ताकि अनजाने में खुद को प्रतिबंधित होने से रोका जा सके।. -
स्मार्ट वर्गीकरण: यह हानिरहित 404 त्रुटि और खतरनाक SQL इंजेक्शन प्रयास के बीच अंतर बताता है।.
-
विस्तृत साक्ष्य: CSF में ब्लॉक का कारण आपको बिल्कुल सही जानकारी देगा। कौन डोमेन और कौन फ़ाइल पथ के कारण प्रतिबंध लगा।.
-
बॉट फार्म संरक्षण: संपूर्ण सबनेट को स्वचालित रूप से प्रतिबंधित करता है (
/24) यदि कोई बॉट फार्म आपको कई आईपी नंबरों से हमला करता है।.
आवश्यक शर्तें
-
एक वीपीएस या डेडिकेटेड सर्वर के साथ रूट एक्सेस.
-
LiteSpeed वेब सर्वर स्थापित।.
-
सीएसएफ (कॉन्फ़िग सर्वर सुरक्षा और फ़ायरवॉल) स्थापित और सक्रिय।.
चरण 1: एडवांस्ड ब्लॉकर स्क्रिप्ट बनाएं
हम एक बैश स्क्रिप्ट बनाएंगे जो आपके लाइटस्पीड एक्सेस लॉग्स की रीयल-टाइम में निगरानी करेगी।.
-
अपने सर्वर में SSH के माध्यम से लॉग इन करें।
जड़. -
स्क्रिप्ट फ़ाइल बनाएं:
nano /root/litespeed_blocker.sh -
निम्नलिखित को पेस्ट करें प्रोफेशनल v19 कोड। इस संस्करण में महत्वपूर्ण शामिल है। सुरक्षा फ़िल्टर आंतरिक आईपी को अनदेखा करने के लिए।.
#!/bin/bash # ================================================================= # LiteSpeed/Apache Advanced Defense Blocker - v19 (CSF SAFE EDITION) # Feature: Auto-Ignores Private/Local IPs (10.x, 192.x, 127.x) # ================================================================= ACCESS_LOG="/usr/local/apache/logs/access_log" ERROR_LOG="/usr/local/apache/logs/error_log" STRIKE_FILE="/tmp/litespeed_strikes.tmp" CSF_BIN="/usr/sbin/csf" CSF_ALLOW="/etc/csf/csf.allow" CSF_IGNORE="/etc/csf/csf.ignore" # Ensure strike file exists and clean on startup touch "$STRIKE_FILE" echo "" > "$STRIKE_FILE" tail -Fn0 "$ACCESS_LOG" "$ERROR_LOG" | while read -r line; do [[ "$line" == "==>"* ]] && continue # Detect Log Type if [[ "$line" == *"] ["* ]]; then log_type="Error"; else log_type="Access"; fi # 1. IP Extraction ip=$(echo "$line" | grep -oE '[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}' | head -1) # --- SAFETY FILTER (Ignore Private IPs) --- if [[ -z "$ip" || "$ip" == "127.0.0.1" || "$ip" == "::1" ]]; then continue; fi if [[ "$ip" == 10.* || "$ip" == 192.168.* || "$ip" == 172.1[6-9].* || "$ip" == 172.2[0-9].* || "$ip" == 172.3[0-1].* ]]; then continue; fi # ------------------------------------------ subnet=$(echo "$ip" | cut -d. -f1-3).0 # 2. Path Extraction if [[ "$log_type" == "Access" ]]; then path=$(echo "$line" | grep -oP '"(GET|POST|HEAD|PUT) \K[^ ]+' | head -1 | cut -c1-35) else path=$(echo "$line" | grep -oP '(?<=context \[)[^\]]+|(?<=found \[)[^\]]+' | head -1) [[ -z "$path" ]] && path=$(echo "$line" | grep -oP '(GET|POST|HEAD) [^ ]+' | head -1) fi [[ -z "$path" ]] && path="/" # 3. Domain Extraction domain=$(echo "$line" | grep -oP '(?<=APVH_)[a-zA-Z0-9.-]+' | head -1) [[ -z "$domain" ]] && domain="Unknown" # --- Helper: Check Whitelist --- is_whitelisted() { if grep -q "$1" "$CSF_ALLOW" || grep -q "$1" "$CSF_IGNORE"; then return 0; else return 1; fi } # --- CASE A: CRITICAL ATTACKS (ModSec/ACL) --- if echo "$line" | grep -qE "RECAPTCHA|ACL|Access to context|ModSecurity"; then trigger=$(echo "$line" | grep -oE "RECAPTCHA|ACL|ModSecurity" | head -1) echo "SEC_IP:$ip" >> "$STRIKE_FILE" echo "SEC_SUB:$subnet" >> "$STRIKE_FILE" if [ $(grep -c "SEC_IP:$ip" "$STRIKE_FILE") -ge 3 ]; then if ! is_whitelisted "$ip"; then $CSF_BIN -d "$ip" "LS_Block: Critical (3) | $trigger | $domain | $path" > /dev/null 2>&1 sed -i "/SEC_IP:$ip/d" "$STRIKE_FILE" fi fi if [ $(grep -c "SEC_SUB:$subnet" "$STRIKE_FILE") -ge 10 ]; then if ! is_whitelisted "$ip"; then $CSF_BIN -d "$subnet/24" "LS_Block: Critical Subnet (10) | $trigger" > /dev/null 2>&1 sed -i "/SEC_SUB:$subnet/d" "$STRIKE_FILE" fi fi # --- CASE B: SCANNERS (403/404/500) --- elif echo "$line" | grep -qE " 400 | 401 | 403 | 404 | 405 | 500 |File not found"; then code=$(echo "$line" | grep -oE "\s(40[0-9]|4[1-4][0-9]|50[0-9])\s" | tr -d ' ' | head -1) echo "SCAN_IP:$ip" >> "$STRIKE_FILE" echo "SCAN_SUB:$subnet" >> "$STRIKE_FILE" if [ $(grep -c "SCAN_IP:$ip" "$STRIKE_FILE") -ge 7 ]; then if ! is_whitelisted "$ip"; then $CSF_BIN -d "$ip" "LS_Block: Scan (7) | Code $code | $domain | $path" > /dev/null 2>&1 sed -i "/SCAN_IP:$ip/d" "$STRIKE_FILE" fi fi if [ $(grep -c "SCAN_SUB:$subnet" "$STRIKE_FILE") -ge 20 ]; then if ! is_whitelisted "$ip"; then $CSF_BIN -d "$subnet/24" "LS_Block: Scan Subnet (20) | Code $code" > /dev/null 2>&1 sed -i "/SCAN_SUB:$subnet/d" "$STRIKE_FILE" fi fi fi done -
सहेजें और बाहर निकलें (दबाएँ)
Ctrl+X, तबY, तबप्रवेश करना).
चरण 2: अनुमतियाँ सेट करें
स्क्रिप्ट को निष्पादन योग्य बनाएं ताकि सिस्टम इसे चला सके।.
chmod +x /root/litespeed_blocker.sh
चरण 3: बैकग्राउंड सेवा बनाएं
यह सुनिश्चित करने के लिए कि यह सुरक्षा 24/7 चलती रहे, हम एक systemd सेवा फ़ाइल बनाएंगे।.
-
फाइल बनाएं:
nano /etc/systemd/system/litespeed-blocker.service -
निम्नलिखित कॉन्फ़िगरेशन को पेस्ट करें:
[इकाई] विवरण=लाइटस्पीड एडवांस्ड सीएसएफ ब्लॉकर बाद=नेटवर्क.टारगेट lsws.सर्विस [सेवा] एक्जीक स्टार्ट=/bin/bash /root/litespeed_blocker.sh पुनः आरंभ करें=हमेशा उपयोगकर्ता=मूल [स्थापित करना] वांटेड बाय=मल्टी-यूज़र.टारगेट -
सहेजें और बाहर निकलें।.
चरण 4: सेवा को सक्षम करें और प्रारंभ करें
अब, सेवा को पंजीकृत करें और इसे तुरंत शुरू करें।.
systemctl daemon-reload systemctl सक्षम litespeed-blocker systemctl start litespeed-blocker
यह सुनिश्चित करने के लिए कि यह काम कर रहा है, स्थिति की जाँच करें:
systemctl status litespeed-blocker
तुम्हें देखना चाहिए सक्रिय (चल रहा है) हरे में।.
चरण 5: प्रति घंटा रखरखाव को कॉन्फ़िगर करें
हमें हर घंटे "स्ट्राइक लिस्ट" को साफ़ करना होगा। इससे स्क्रिप्ट उन वैध उपयोगकर्ताओं को ब्लॉक करने से बच जाएगी जिन्होंने कुछ दिन पहले छोटी-मोटी गलतियाँ की थीं (जैसे गलत पासवर्ड टाइप करना)।.
-
रूट क्रॉन फ़ाइल खोलें:
nano /var/spool/cron/root -
सबसे नीचे यह पंक्ति जोड़ें:
0 * * * * गूंज "" > /tmp/litespeed_strikes.tmp -
सहेजें और बाहर निकलें।.
-
महत्वपूर्ण कदम: इस बदलाव को तुरंत लागू करने के लिए क्रॉन सेवा को रीलोड करें।.
सेवा क्रॉन्ड रीलोड
निष्कर्ष
आपने अब सफलतापूर्वक एक उपकरण तैनात कर दिया है। प्रो-ग्रेड ऑटो-ब्लॉकर आपके LiteSpeed सर्वर के लिए। अब आपका सिस्टम हमलों का तुरंत पता लगाएगा, उन्हें आपकी श्वेतसूची से मिलाएगा और CSF में ही दुर्भावनापूर्ण IP या सबनेट को प्रतिबंधित कर देगा, साथ ही आपके आंतरिक नेटवर्क को भी सुरक्षित रखेगा।.
अपनी संपत्तियों की सुरक्षा करें भारत में प्रबंधित वीपीएस होस्टिंग या हमारे प्रीमियम उत्पादों के साथ वैश्विक स्तर पर विस्तार करें। क्लाउड होस्टिंग myglobalHOST पर समाधान।.


