"सवाल यह है: मैं अवरुद्ध आईपी पते को कैसे सूचीबद्ध कर सकता हूं?"
एक BANNED श्रृंखला बनाएँ:
iptables -N BANNED
iptables -F BANNED
एक लॉगिंग श्रृंखला बनाएँ:
iptables -N BANNEDLOG
iptables -F BANNEDLOG
iptables -A BANNEDLOG -j LOG --log-prefix "BANNED:" --log-level 6
iptables -A BANNEDLOG -j DROP
अधिकांश अन्य नियमों से पहले INPUT श्रृंखला में प्रतिबंधित श्रृंखला में कूद जोड़ें
...
iptables -A INPUT -j BANNED
...
अब प्रतिबंधित श्रृंखला में ipaddresses जोड़ें:
flock -w 5 /var/lock/iptables -c 'iptables -A BANNED -s 140.130.20.202/32 -i eth0 -m comment --comment "2012-03-19 23:49:33 accesslog" -j BANNEDLOG'
etc...
आप इसे टिप्पणी विकल्पों के साथ एक डेटाबेस की तरह भी उपयोग कर सकते हैं, ताकि आप जान सकें कि कब और क्यों आदि झुंड महत्वपूर्ण है जब iptables को कई प्रक्रियाओं द्वारा अक्सर अपडेट किया जा रहा है - ऐसा प्रतीत होता है कि iptables में कोई लॉकिंग नहीं है।
प्रतिबंधित श्रृंखला में प्रतिबंधित पते और नियमों को देखने के लिए:
iptables -S BANNED
देखने के लिए सिर्फ अद्वितीय ipaddresses:
iptables -S BANNED | egrep -o '[0-9]+\.[0-9]+\.[0-9]+\.[0-9]+' | sort -u
मेरे पास कई सर्वर हैं जो अपने सर्वर पर चल रहे syslog फ़ाइलों और वेबलॉग्स की जाँच कर रहे हैं, इसलिए यदि किसी के द्वारा कुछ भी बुरा प्रयास किया जा रहा है, तो उनके पते पर कुछ दिनों के लिए स्वचालित रूप से प्रतिबंध लगा दिया जाता है, जो प्रकार और गंभीरता और पिछले हमलों की संख्या पर निर्भर करता है। जानकारी को mysql डेटाबेस में लॉग किया जाता है, और समय-समय पर समाप्त हो जाता है। पते भी हर दूसरी मशीन पर क्लस्टर में वितरित किए जाते हैं mysql प्रतिकृति पर ताकि वे भी संरक्षित रहें और सिंक में रहें। मेरा सॉफ़्टवेयर नेटवर्क का मालिक भी दिखता है और ISP को शिकायत दर्ज करता है।
10 साल के काम के बाद, मैं इसे जल्द ही सभी के लिए उपलब्ध कराने की उम्मीद करता हूं। वर्तमान में मेरे पास लगभग 1.5 मिलियन आईपी एड्रेस हिस्टरी और हज़ारों मेल और ssh हमले हैं, जो नेट को साफ करने में मदद करते हैं। यदि अधिक इसका उपयोग करेगा तो मुझे आशा है कि इसका अधिक प्रभाव होगा।
iptables -L INPUT -v -n
सभी अवरुद्ध आईपी से पता चलता है