SSH ਰਾਹੀਂ ਫਾਰਵਰਡ ਕੀਤਾ ਪੋਰਟ ਹਮੇਸ਼ਾ SOCKS ਪ੍ਰੌਕਸੀ ਨਹੀਂ ਹੁੰਦਾ
ਕਿਸੇ ਐਪਲੀਕੇਸ਼ਨ ਨੂੰ ਕੌਂਫਿਗਰ ਕਰਨ ਤੋਂ ਪਹਿਲਾਂ SSH ਦੇ ਸਥਿਰ ਲੋਕਲ ਫਾਰਵਰਡ ਅਤੇ ਗਤੀਸ਼ੀਲ SOCKS ਸਰੋਤੇ ਵਿੱਚ ਫ਼ਰਕ ਕਰੋ।
ਤੁਸੀਂ SSH ਟਨਲ ਬਣਾਉਂਦੇ ਹੋ, 127.0.0.1 ਅਤੇ ਇਸਦਾ ਪੋਰਟ ਬ੍ਰਾਊਜ਼ਰ ਦੀਆਂ ਪ੍ਰੌਕਸੀ ਸੈਟਿੰਗਾਂ ਵਿੱਚ ਪਾਉਂਦੇ ਹੋ, ਅਤੇ ਕੁਝ ਵੀ ਲੋਡ ਨਹੀਂ ਹੁੰਦਾ। ਸਰੋਤਾ ਪੂਰੀ ਤਰ੍ਹਾਂ ਠੀਕ ਕੰਮ ਕਰ ਰਿਹਾ ਹੋ ਸਕਦਾ ਹੈ। ਸ਼ਾਇਦ ਇਹ ਸਿਰਫ਼ ਗ਼ਲਤ ਕਿਸਮ ਦੇ ਟ੍ਰੈਫ਼ਿਕ ਦੀ ਉਡੀਕ ਕਰ ਰਿਹਾ ਹੈ।
| ਫਾਰਵਰਡ | ਲੋਕਲ ਐਪਲੀਕੇਸ਼ਨ ਕੀ ਭੇਜਦੀ ਹੈ | ਮੰਜ਼ਿਲ ਦੀ ਚੋਣ |
|---|---|---|
-L | ਟਾਰਗਿਟ ਸੇਵਾ ਦਾ ਆਮ ਪ੍ਰੋਟੋਕੋਲ | SSH ਕਮਾਂਡ ਵਿੱਚ ਸਥਿਰ |
-D | SOCKS ਗੱਲਬਾਤ, ਫਿਰ ਐਪਲੀਕੇਸ਼ਨ ਟ੍ਰੈਫ਼ਿਕ | SOCKS ਕਲਾਇੰਟ ਵੱਲੋਂ ਬੇਨਤੀ |
ਇੱਕ ਵੈੱਬ ਸਰਵਰ ਲਈ, ਇਹ ਸਥਿਰ ਫਾਰਵਰਡ ਹੈ:
ssh -N -L 127.0.0.1:9080:web.example.com:80 [email protected]
http://127.0.0.1:9080/ ਨੂੰ ਵੈੱਬਸਾਈਟ ਵਜੋਂ ਵੇਖੋ। ਪੋਰਟ 9080 ਨੂੰ SOCKS ਨਾ ਲੇਬਲ ਕਰੋ: ਇਹ ਕਮਾਂਡ ਵਿੱਚ ਨਾਮਿਤ ਇੱਕੋ ਵੈੱਬ ਸਰਵਰ ਨੂੰ ਬਾਈਟ ਫਾਰਵਰਡ ਕਰਦਾ ਹੈ। ਵੱਖਰੇ ਹੋਸਟਨਾਮ ਹੇਠ ਸਾਈਟ ਖੋਲ੍ਹਣਾ ਇਸਦੀ ਵਰਚੁਅਲ ਹੋਸਟਿੰਗ, ਰੀਡਾਇਰੈਕਟ ਜਾਂ ਕੂਕੀਜ਼ ਨੂੰ ਵੀ ਪ੍ਰਭਾਵਿਤ ਕਰ ਸਕਦਾ ਹੈ।
SOCKS ਸਰੋਤਾ ਲਈ ਆਕਾਰ ਬਦਲਦਾ ਹੈ:
ssh -N -D 127.0.0.1:1080 [email protected]
ਐਪਲੀਕੇਸ਼ਨ ਨੂੰ 127.0.0.1:1080 ਉੱਤੇ SOCKS ਵਰਤਣ ਲਈ ਕੌਂਫਿਗਰ ਕਰੋ। ਉਹ ਸਿਰਨਾਵਾਂ ਸਿੱਧਾ ਬ੍ਰਾਊਜ਼ਰ ਦੀ ਸਿਰਨਾਵਾਂ ਪੱਟੀ ਵਿੱਚ ਪਾਉਣ ਨਾਲ ਵੈੱਬ ਬੇਨਤੀ SOCKS ਸਰੋਤੇ ਕੋਲ ਜਾਂਦੀ ਹੈ, ਇਹ ਇੱਕ ਹੋਰ ਪ੍ਰੋਟੋਕੋਲ ਬੇਮੇਲ ਹੈ।
OpenSSH ਮੈਨੂਅਲ ਦੋਵੇਂ ਰੂਪਾਂ ਨੂੰ ਦਰਜ ਕਰਦਾ ਹੈ। ਇੱਕ ਲਾਭਦਾਇਕ ਅਪਵਾਦ ਹੈ: ਮੌਜੂਦਾ HTTP ਪ੍ਰੌਕਸੀ ਨੂੰ -L ਨਾਲ ਫਾਰਵਰਡ ਕਰਨ ਨਾਲ ਇੱਕ ਲੋਕਲ ਪੋਰਟ ਬਣਦਾ ਹੈ ਜੋ HTTP ਪ੍ਰੌਕਸੀ ਪ੍ਰੋਟੋਕੋਲ ਬੋਲਦਾ ਹੈ, ਕਿਉਂਕਿ ਇਸਦੀ ਸਥਿਰ ਮੰਜ਼ਿਲ ਆਪ ਹੀ HTTP ਪ੍ਰੌਕਸੀ ਹੈ। ਸਥਿਰ ਫਾਰਵਰਡ ਵਿੱਚ ਕੀ ਆਉਂਦਾ ਹੈ, ਇਹ ਦੂਰਲੇ ਸਿਰੇ ਦੀ ਸੇਵਾ ਤੈਅ ਕਰਦੀ ਹੈ। ਮੌਜੂਦਾ ਪ੍ਰੌਕਸੀ ਨੂੰ SSH ਰਾਹੀਂ ਫਾਰਵਰਡ ਕਰਨਾ ਉਸ ਪ੍ਰੌਕਸੀ ਦਾ ਪ੍ਰੋਟੋਕੋਲ ਅਤੇ ਖਾਤਾ ਬਚਾਉਂਦਾ ਹੈ।