लिनक्स में iptables नियमों का प्रबंधन


17

मेरे पास मेरे iptables सेटअप (रूटिंग, ssh बैन आदि) के लिए बहुत सारे नियम हैं। मैंने भी यहाँ से http://blacklist.linuxadmin.org पर प्रतिबंध लगाने के लिए IP की एक सूची उठाई है और अब यह वास्तव में जटिल हो रही है।

मेरा /etc/sysconfig/iptablesवास्तव में लंबा है। क्या बाहरी फ़ाइलों से नियमों को शामिल करके नियमों का प्रबंधन करने का एक तरीका है?

उदाहरण के लिए:

#include "pre_routing_rules"
#include "ssh_bans"

इसमें "pre_rout_rules" और "ssh_bans" फ़ाइलों में जोड़े गए नियम शामिल होंगे। इस तरह से मैं अपने शिकार को बिना शिकार किए आसानी से अपने नियमों को प्रबंधित कर सकता हूं cat /etc/sysconfig/iptables

जवाबों:


11

प्रयास करें iptables 'ipsets । ipsets अलग से कॉन्फ़िगर किए गए हैं, और यदि आप प्रबंधित करने के लिए पर्याप्त आईपी पते हैं तो ये भी तेज़ हैं।

iptables नियम इस तरह से ipset को संदर्भित कर सकता है:

iptables-FORWARD -m set --set blocklist src, dst -j DROP


मेरी सबसे बड़ी समस्या आईपी-एड्रेस के साथ है इसलिए मैं इसका उपयोग कर सकता हूं।

मैं इस सुविधा का उपयोग कर रहा हूं। मेरी ब्लैकलिस्ट / श्वेत सूची IP सबसे बड़ी हैं, इसलिए वे एक ipset में जा सकते हैं। मुझे लगता है कि पूर्व-राउटिंग सामान मुख्य विन्यास सूची में रह सकता है

इस फोरम थ्रेड में ipsets का उपयोग करने वाली स्क्रिप्ट के कुछ उदाहरण हैं: forum.gentoo.org/viewtopic-t-863121.html
mivk

3

एक सरल उपाय यह है कि प्रत्येक खंड के लिए कई बैश लिपियों का उपयोग किया जाए जैसे:

iptables-routing.sh
iptables-ssh-bans.sh
iptables-blacklist.sh

और इस फाइल को एक मास्टर स्क्रिप्ट से चलाएं।


अच्छा हाँ, यही मैं करता हूँ। लेकिन अगर मुझे iptables नियमों की सूची (जैसे। Cat / etc / sysconfig / iptables) देखनी है, तो यह मुझे उन सभी नियमों को दिखाएगा, जिन्हें iptables-rout.sh iptables-blitlist.sh

2

iptables फ़ाइल को सीधे नहीं पढ़ता है, जो कि iptables-restore नामक प्रोग्राम द्वारा किया जाता है। यह आमतौर पर आपकी एक init स्क्रिप्ट से कहा जाता है।

आप अपने iptables- पुनर्स्थापना लाइन में अतिरिक्त इनपुट फ़ाइलें जोड़ सकते हैं। आपको यह पता लगाना होगा कि यह लाइन आपके सिस्टम में कहां है, लेकिन मेरे डिबैन बॉक्स पर, यह /etc/init.d/nat में है

वर्तमान में रेखा इस तरह पढ़ती है:

/sbin/iptables-restore < /etc/network/iptables

शायद इसे कुछ इस तरह बदला जा सकता है:

cat /etc/network/iptables \
    /etc/network/pre_routing_tables \
    /etc/network/ssh_bans | /sbin/iptables-restore

2

मैं कई ऑन-द-iptables फ़ायरवॉलिंग स्क्रिप्ट / टूल में से एक का उपयोग करने की प्रवृत्ति रखता हूं, जैसे कि फायरस्टार या शोरवेल, वे कई फ़ाइलों के साथ आते हैं, उद्देश्य से अलग हो जाते हैं, कुछ प्रकार के फर्जी हैंडसेट से बचाने के लिए दिलचस्प नियम जोड़ते हैं और वे आमतौर पर काम करते हैं कुंआ।


कमांड लाइन के माध्यम से ये प्रयोग करने योग्य हैं? मेरा सर्वर एक रिमोट है और मैं वास्तव में SSH

शोरवेल फ्लैट टेक्स्ट फ़ाइलों का एक सेट है जो iptables नियम उत्पन्न करता है। यह कमांड लाइन से बहुत उपयोगी है और इसमें महान दस्तावेज और नैदानिक ​​उपकरण हैं।
पॉल गियर

0

मुझे यकीन नहीं है कि आप कौन से डिस्ट्रो चल रहे हैं, क्योंकि मेरा आपके द्वारा संदर्भित फ़ाइल पर कब्जा नहीं है - लेकिन आम तौर पर जिन फाइलों में iptables नियम होते हैं, वे केवल शेल स्क्रिप्ट हैं - इसलिए आपको वह करना चाहिए जो आप एक लाइन के द्वारा चाहते हैं। जैसे कि :

। / Etc / sysconfig / pre_routing_rules

या ऐसे iptables फ़ाइल के शीर्ष पर जैसे आप देखें।


मैं फेडोरा और सेंटोस चला रहा हूं
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.