सवाल Iptables में बंदरगाहों की एक श्रृंखला खोलने का सही तरीका क्या है


मैं निम्नलिखित लेखों के लिए सलाह देने वाले लेखों में आया हूं:

iptables -A INPUT -p tcp 1000:2000 -j ACCEPT

और अन्य बताते हैं कि उपर्युक्त काम नहीं करेगा और iptables केवल एकाधिक बंदरगाह घोषणाओं का समर्थन करता है --multiport विकल्प।

Iptables के साथ कई बंदरगाहों को खोलने का कोई सही तरीका है?


45
2018-05-13 16:54


मूल


संबंधित प्रश्न: iptables और एकाधिक बंदरगाहों - Cristian Ciupitu


जवाब:


यह सही तरीका है:

iptables -A INPUT -p tcp --match multiport --dports 1024:3000 -j ACCEPT

उदाहरण के तौर पे। स्रोत यहाँ


50
2018-05-13 16:57



यदि आप नियम की स्थिति नहीं जानते हैं -I कुछ हद तक सुरक्षित है -A। - Iain
@Iain, क्या आप इसके पीछे तर्क की व्याख्या कर सकते हैं? - jayhendren
@jayhendren कई नियमों में एक डिफ़ॉल्ट ड्रॉप सब कुछ नियम होगा उदा। -A INPUT -j REJECT --reject-with icmp-host-prohibited इनपुट और अन्य तालिकाओं के अंत में। का उपयोग करते हुए -A अंतिम नियम के बाद, तालिका के अंत में नियम जोड़ता है, इसलिए इसे पहले मैच जीतने के आधार पर नेटफिल्टर कार्यों के रूप में कभी नहीं माना जाएगा। का उपयोग करते हुए -I तालिका ans की शुरुआत में नियम डालता है क्योंकि इस पर हमेशा विचार किया जाएगा। - Iain
@Iain हालांकि, कुछ नियमों में शुरुआत में नियम हैं जो फिल्टर या ratelimit पैकेट, तो यह इंगित करने के लिए उपयुक्त है कि -I नहीं है हमेशा यदि आप नियमसेट नहीं जानते हैं तो सुरक्षित। - jayhendren
@Jayhendren मुझे लगता है कि आपने अभी किया और यह भी ध्यान दिया कि मैंने कुछ हद तक नहीं कहा हमेशा। - Iain


आपको जो बताया गया है वह सही है, हालांकि आपने इसे गलत लिखा है (आप भूल गए हैं --dport)।

iptables -A INPUT -p tcp --dport 1000:2000 1000 से 2000 सहित टीसीपी बंदरगाहों के लिए इनबाउंड ट्रैफिक खुल जाएगा।

-m multiport --dports केवल तभी जरूरी है जब आप जिस रेंज को खोलना चाहते हैं वह निरंतर नहीं है, उदाहरण के लिए -m multiport --dports 80,443, जो HTTP और HTTPS खुल जाएगा केवल - बीच में नहीं।

ध्यान दें कि नियमों का क्रम महत्वपूर्ण है, और (जैसा कि आईन ने कहीं और उनकी टिप्पणी में कहा है) यह सुनिश्चित करने के लिए आपका काम है कि आपके द्वारा जो भी नियम जोड़ा जाता है वह उस जगह पर है जहां यह प्रभावी होगा।


48
2018-05-13 17:15



अगर आप चाहें तो मैं यहां भी बता सकता हूं;) - Iain
हे हे हे! फिर, संदेश दोहराने लायक है! - MadHatter
यह सही जवाब है; यह अधिक गहन है। - Andrew Kozak


टीएल; डीआर लेकिन ...

मल्टीपोर्ट मॉड्यूल के बिना शुद्ध पोर्ट रेंज: iptables -A INPUT -p tcp --dport 1000:2000 -j ACCEPT

समतुल्य मल्टीपोर्ट उदाहरण: iptables -A INPUT -p tcp -m multiport --dports 1000:2000 -j ACCEPT

... और बहु ​​श्रेणी के साथ बहु बंदरगाह के बारे में भिन्नता (हाँ, यह भी संभव है): iptables -A INPUT -p tcp -m multiport --dports 1000,1001,1002:1500,1501:2000 -j ACCEPT

... और नकारात्मक के साथ समकक्ष बहु बंदरगाह बहु रेंज उदाहरण: iptables -A INPUT -p tcp -m multiport ! --dports 0:999,2001:65535 -j ACCEPT

फन लो


10
2018-04-08 19:13