I have NGINX configured like this as a reverse proxy for http requests:
server {
listen 80;
server_name 203.0.113.2;
proxy_set_header X-Real-IP $remote_addr; # pass on real client IP
location / {
proxy_pass http://203.0.113.1:3000;
}
}
मैं प्रॉक्सी ssh (पोर्ट 22) के अनुरोध भी करना चाहता हूं। क्या मैं उसी कॉन्फ़िगरेशन फ़ाइल में इस तरह एक और सर्वर ब्लॉक जोड़ सकता हूं:
server {
listen 22;
server_name 203.0.113.2;
proxy_set_header X-Real-IP $remote_addr; # pass on real client IP
location / {
proxy_pass http://203.0.113.1:22;
}
}
ऐसा है कि अंतिम परिणाम यह है:
server {
listen 80;
server_name 203.0.113.2;
proxy_set_header X-Real-IP $remote_addr; # pass on real client IP
location / {
proxy_pass http://203.0.113.1:3000;
}
}
server {
listen 22;
server_name 203.0.113.2;
proxy_set_header X-Real-IP $remote_addr; # pass on real client IP
location / {
proxy_pass http://203.0.113.1:22;
}
}
टीआईए,
ओले
nginx
एकhttp
प्रॉक्सी के रूप में कार्य कर रहा है । यदि आप इसे प्रॉक्सी पोर्ट 22 को रिवर्स करने के लिए सेट करते हैं, तो यह आपको SSH ट्रैफ़िक को पास करने की अनुमति नहीं देगा - केवलhttp
SSH सर्वर पर ट्रैफ़िक, जो स्पष्ट रूप से विफल हो जाएगा।