आपने कहा "केवल पोर्ट 80 ओपन के साथ"। यदि अन्य पोर्ट्स को कुछ बाहरी फ़ायरवॉल द्वारा ब्लॉक किया जाता है (जैसे NAT के साथ एक राउटर, केवल पोर्ट 80 को आपके पास भेजा जाता है), तो एक मूल नियम इस तरह हो सकता है:
iptables -t nat -A PREROUTING -p TCP --dport 80 -s 192.168.1.7 -j REDIRECT --to-port 1234
पोर्ट में आने वाले हर ट्रैफिक को लेते हुए 80, यह 192.168.1.7पोर्ट से जो कुछ भी होता है उसे रीडायरेक्ट करता है 1234, बाकी को बरकरार रखता है।
नोट iptablesपहले मैच के आधार पर संचालित होता है , इसलिए आप करना चाहते हैं
iptables -t nat -I PREROUTING …
बजाय।
कई संभावित स्रोत पते निर्दिष्ट करने के विभिन्न तरीकों के लिए, इस प्रश्न के उत्तर देखें: iptablesकई स्रोत आईपी ।
लेकिन अगर "केवल पोर्ट 80 ओपन के साथ" का मतलब है कि आपके पास ऐसे iptables -A INPUT …नियम हैं जो केवल पोर्ट 80 की अनुमति देते हैं, तो मुझे उम्मीद है कि उपरोक्त अकेले काम नहीं करेगा। ऐसा इसलिए है क्योंकि nat/PREROUTINGपहले काम करता है। इस मामले में आपको दूसरे पोर्ट को भी अनब्लॉक करना चाहिए।
iptablesनियम) द्वारा?