Linux उपयोगकर्ताओं के लिए यह गाइड आपको दिखाएगी कि डिनायल ऑफ सर्विस हमलों में उपयोग किए जाने वाले IP पतों का पता कैसे लगाएं और उन्हें ब्लॉक करें।
हमने कुछ दिन पहले Linux में iptables में IP एड्रेस कैसे ब्लॉक करें पर एक लेख चलाया था। यहां एक पूरक लेख है जो आपको दिखाता है कि डिनायल ऑफ सर्विस (या DOS) हमले के मामले में हमलावरों के IP पतों का पता कैसे लगाया जाए।
यह करने के लिए हम psad नामक फ्री सॉफ़्टवेयर का उपयोग करेंगे। psad iptables के साथ सिंक में काम करता है और iptables लॉग की निगरानी करता है और पोर्ट स्कैन और अन्य संदिग्ध ट्रैफिक की जांच करता है जो आमतौर पर किसी के आपके Linux सर्वर में घुसने की कोशिश के संकेत होते हैं।
शुरू करने के लिए, psad इंस्टॉल करें। यदि आप Ubuntu या Fedora जैसे फैंसी पैकेज मैनेजमेंट सिस्टम वाले Linux के फ्लेवर चला रहे हैं तो आप निम्न में से किसी भी कमांड का उपयोग करके अपने सिस्टम पर psad प्राप्त कर सकते हैं:
# sudo apt-get install psad
या
# yum install psad
यदि यह आपके लिए काम नहीं करता है तो psad डाउनलोड पेज पर जाएं और वह फॉर्मेट डाउनलोड करें जो आपके लिए काम करता है।
चूंकि मैं Ubuntu Linux सर्वर का उपयोग करता हूं इसलिए इस ट्यूटोरियल का बाकी भाग Ubuntu विशिष्ट होगा। हालांकि, कुछ मामूली ट्वीकिंग के साथ आप इसे Linux के अन्य फ्लेवर पर काम करने में सक्षम होना चाहिए। अपने पसंदीदा टेक्स्ट एडिटर के साथ syslog.conf फ़ाइल खोलें:
# vim /etc/syslog.conf
फ़ाइल के अंत में निम्न लाइन जोड़ें:
kern.info |/var/lib/psad/psadfifo
आप समान चीज़ को पूरा करने के लिए निम्न कमांड का उपयोग कर सकते हैं:
# echo -e 'kern.info\t|/var/lib/psad/psadfifo' >> /etc/syslog.conf
अब sysklogd और klog डेमॉन को रीस्टार्ट करें:
/etc/init.d/sysklogd restart
/etc/init.d/klogd restart
Psad का काम करने का तरीका यह है कि यह किसी भी संदिग्ध IP का पता लगाएगा और iptables को उन्हें ब्लॉक करने का निर्देश देगा। कभी-कभी इसका परिणाम उस IP को ब्लॉक करने में हो सकता है जिसका आप उपयोग करते हैं। इस समस्या को दूर करने के लिए आपको सुरक्षित IP पतों की सूची वाली एक फ़ाइल बनानी चाहिए। इस तरह की फ़ाइल बनाएं:
# vim /home/calvin/safeiplist.cfg
उन IP पतों को दर्ज करें जिन्हें आप psad को व्हाइटलिस्ट करना चाहते हैं:
127.0.0.0/24
192.168.0.0/24
122.164.34.240
अब iptables को आवश्यक नियमों के साथ कॉन्फ़िगर करने के लिए निम्न जैसे स्क्रिप्ट का उपयोग करें। नोट कि यह स्क्रिप्ट आपके iptables सेटअप से सभी पिछली सेटिंग्स को हटा देगा। अपने Linux सर्वर पर निम्न स्क्रिप्ट को कॉपी और पेस्ट करें, और वेरिएबल WORKDIR और SAFEIPLIST को अपने सेटअप से सही सेटिंग्स से बदलें।
WORKDIR="/home/calvin/"
INTERVAL="5"
HITCOUNT="5"
SAFEIPLIST="safeiplist.cfg"
cd $WORKDIR
iptables -F
if [ -f $SAFEIPLIST ]; then
IPS=$(grep -Ev "^#" $SAFEIPLIST)
for i in $IPS
do
iptables -A INPUT -s $i -j ACCEPT
done
fi
iptables -A INPUT -m state –state NEW -m recent –set
iptables -A INPUT -m state –state NEW -m recent –update –seconds $INTERVAL –hitcount $HITCOUNT -j LOG
स्क्रिप्ट क्या करती है वह यह है कि यदि कोई IP पांच सेकंड की अवधि में पांच या अधिक कनेक्शन प्रयास करता है तो यह उस IP एड्रेस को लॉग करता है। मैं सुझाव दूंगा कि आप स्क्रिप्ट का उपयोग वैसे ही करें जब तक आप यह नहीं जानते कि आप इसे संशोधित करते समय क्या कर रहे हैं। एक बार जब आप कर लें, तो इसे निष्पादन योग्य अनुमतियां दें और इसे चलाएं।
# chmod +x /home/calvin/ipblock.sh
# /home/calvin/ipblock.sh
अब वापस psad पर। psad कॉन्फ़िगरेशन फ़ाइल खोलें और इसे संपादित करें। ये वे बदलाव हैं जो मैं सुझाता हूं। बेझिझक psad डॉक्यूमेंटेशन देखें और अन्य बदलाव करें:
EMAIL_ADDRESSES you@yourdomain.com;
मशीन का होस्टनाम सेट करें:
HOSTNAME yourdomain.com;
यदि इस सर्वर पर केवल एक नेटवर्क इंटरफ़ेस है, तो HOME_NET को सेट करें:
HOME_NET NOT_USED;
आप psad के लिए खतरे के स्तर को भी समायोजित कर सकते हैं, और अनदेखा करने के लिए पोर्ट का एक सेट परिभाषित कर सकते हैं, उदाहरण के लिए psad को udp पोर्ट 80 और 8080 को अनदेखा करने के लिए कहने के लिए, निम्न परिवर्तन करें:
IGNORE_PORTS udp/80, udp/8080;
फ़ाइल सेव करें और बंद करें। फिर psad रीस्टार्ट करें:
# /etc/init.d/psad restart
आप अब जाने के लिए तैयार हैं। psad की रिपोर्ट की निगरानी करने के लिए निम्न कमांड चलाएं:
# psad -S
स्वचालित रूप से ब्लॉक किए गए IP को हटाने के लिए निम्न कमांड चलाएं:
# psad -F
Psad एक बहुत बहुमुखी और शक्तिशाली टूल है। यदि आप जानते हैं कि इसका उपयोग कैसे करना है तो यह आपके लिए चमत्कार कर सकता है, लेकिन यदि आप नहीं जानते तो आप वास्तव में अपने कंप्यूटर को गड़बड़ कर सकते हैं। इसलिए कृपया psad का उपयोग सावधानी से करें।