वर्तमान में मेरे पास एक NAS बॉक्स है जो पोर्ट 80 के नीचे चल रहा है। NAS को बाहर से एक्सेस करने के लिए, मैंने NAS पर पोर्ट 8080 को पोर्ट 80 पर मैप किया।
iptables -t nat -A PREROUTING -p tcp --dport 8080 -j DNAT --to-destination 10.32.25.2:80
यह एक आकर्षण की तरह काम कर रहा है। हालाँकि, यह तभी काम कर रहा है जब मैं नेटवर्क के बाहर से वेबसाइट का उपयोग कर रहा हूं (काम पर, अलग घर में, आदि)। इसलिए जब मैं टाइप करता हूं mywebsite.com:8080
, तो IPTables सही तरीके से काम करता है और सब कुछ ठीक चल रहा है।
अब, मेरे पास जो समस्या है, मैं इस पोर्ट को नेटवर्क के अंदर से रीडायरेक्ट कैसे कर सकता हूं? मेरा डोमेन नाम mywebsite.com
मेरे राउटर (मेरा लिनक्स सर्वर) को अंदर से (10.32.25.1) तक इंगित करता है, लेकिन मैं अंदर से 10.32.25.2 पर पोर्ट 8080 को पोर्ट 80 पर पुनर्निर्देशित करना चाहता हूं।
कोई सुराग?
# 1 संपादित करें
इस प्रश्न को सुविधाजनक बनाने में मदद करने का प्रयास मैंने इस आरेख को एक साथ रखा। कृपया गलत होने पर अपडेट करने के लिए स्वतंत्र महसूस करें या आप जो खोज रहे हैं उसे गलत तरीके से प्रस्तुत करें।
iptables
| .---------------.
.-,( ),-. v port 80 |
.-( )-. port 8080________ | |
( internet )------------>[_...__...°]------------->| NAS |
'-( ).-' 10.32.25.2 ^ 10.32.25.1 | |
'-.( ).-' | | |
| '---------------'
|
|
__ _
[__]|=|
/::/|_|
10.32.25.1:8080
अनुप्रेषित कहना चाहता हूं 10.32.25.2:80
। ऊपर मेरा नियम बाहर से काम कर रहा है, लेकिन मेरे नेटवर्क के अंदर से नहीं। इसलिए यदि मैं कार्यालय में हूं, तो मैं वेबसाइट NAS: 8080 से अपने NAS तक पहुंच सकता हूं और यह पूरी तरह से पारदर्शी है। मेरे घर से, website.com:8080 बिंदु से 10.32.25.1 पर क्योंकि यह मेरा राउटर उर्फ लिनक्स सर्वर है। मैं पोर्ट 8080 को NAS पर पोर्ट 80 पर भी फिर से पारदर्शी तरीके से पुनर्निर्देशित करना चाहता हूं।
eth0 10.32.25.2
, ताकि हम इनबाउंड इंटरफ़ेस के आधार पर iptables के उपयोग को लिखने में सक्षम हो सकें