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 വഴി ഫോർവേഡ് ചെയ്യുക ആ പ്രോക്സിയുടെ പ്രോട്ടോക്കോളും അക്കൗണ്ടും നിലനിർത്തുന്നു.