ஒரு சாதனத்திற்கான தலைகீழ் SSH: loopback கேட்பவரா அல்லது வழித்தட VPN-ஆ?
வெளியே மட்டுமே அழைக்கக்கூடிய சாதனத்திற்கான ஒரே நிர்வாக போர்ட். தலைகீழ் சுரங்கப்பாதை போதுமா அல்லது உண்மையான வழித்தடப் பாதை தேவையா என்பதை மூன்று நிபந்தனைகள் தீர்மானிக்கின்றன.
உங்கள் சாதனம் கேரியர் NAT-க்குப் பின்னால் உள்ளது, அது வெளிச்செல்லும் இணைப்புகளைத் திறக்க முடியும், யாரும் அணுக முடியாத SSH சேவையகத்தை இயக்குகிறது. வரும் கோரிக்கை பொதுவாக "அதற்கு ஒரு VPN கொடுங்கள்" என்று வடிவமைக்கப்படுகிறது, இது பல பதில்களில் ஒன்று. அதை ஏற்பதற்கு முன், உங்களுக்கு ஒரு நிர்வாக TCP போர்ட் தேவையா அல்லது முழு துணை வலையமைப்பிற்கும் வழித்தடப் பாதை தேவையா என்பதை முடிவு செய்யுங்கள், ஏனெனில் அவை வெவ்வேறு வெளிப்பாட்டைக் கொண்ட வெவ்வேறு திட்டங்கள்.
தலைகீழ் சுரங்கப்பாதை குறுகிய பதிப்பிற்கு நன்றாக பதிலளிக்கிறது. சாதனம் உங்கள் மையத்தை அழைக்கிறது, loopback போர்ட்டில் கேட்க மையத்தைக் கேட்கிறது, அந்த போர்ட்டை அதன் சொந்த SSH சேவைக்குத் திருப்பி அனுப்புகிறது. பின்னர் நிர்வாகிகள் பொது இணையம் வழியாக அல்ல, மையம் வழியாகக் கேட்பவரை அடைகிறார்கள்.
தேர்வைத் தீர்மானிக்கும் மூன்று நிபந்தனைகள்
எந்தவொரு கட்டமைப்பிற்கும் முன் இவற்றை எழுதுங்கள். இவை வரையறுக்கப்பட்ட நிர்வாக நுழைவுக்கும் வலையமைப்பு விரிவாக்கத்திற்கும் இடையிலான எல்லை, இவற்றைக் கலப்பதே ஐந்து வரி சுரங்கப்பாதை உரிமையற்ற தட்டையான வலையமைப்பாக மாறும் வழி.
| Condition | Reverse tunnel fits | Something else is needed |
|---|---|---|
| How many services must be reachable? | One, or a small fixed set on loopback | Anything that needs many ports or dynamic discovery |
| Who connects, and how are they authenticated? | Named administrators with their own hub accounts | Third parties, or anything needing per-flow audit you do not control |
| Does the device's own LAN need to be reachable? | No | Yes, so a routed VPN or a managed platform is the honest answer |
மூன்றாவது வரிசையே மக்கள் வாதிடுவது. ஒரு சாதனத்தின் SSH போர்ட்டுக்கான சுரங்கப்பாதை அதன் அண்டை நாடுகளை உங்கள் வலையமைப்பில் சேர்க்காது, மேலும் கூடுதல் திருப்பிவிடுதல்களின் சங்கிலி வழியாக அப்படித் தோன்றச் செய்யக்கூடாது. தேவை உண்மையில் LAN என்றால், அதைச் சொல்லி அதற்குப் பதிலாக அதை வடிவமைக்கவும்.
மையப் பக்கம்: வரையறுக்கப்பட்ட ரீலே கணக்கு
ஒவ்வொரு சாதனத்திற்கும் பொது விசை அங்கீகாரத்துடன், ஊடாடும் அமர்வு இல்லாமல் அதன் சொந்த ரீலே கணக்கைக் கொடுங்கள். Match அந்தக் கணக்கிற்கு வரையறுக்கப்பட்ட தொகுதி அனுமதியைச் சிறியதாக வைத்திருக்கிறது, தனிப்பட்ட விசை அது சேர வேண்டிய சாதனத்திலேயே இருக்கிறது.
Match User relay-dev-7
AuthenticationMethods publickey
PubkeyAuthentication yes
AllowTcpForwarding remote
PermitListen 127.0.0.1:21022
GatewayPorts no
MaxSessions 0
PermitTTY no
X11Forwarding no
AllowAgentForwarding no
MaxSessions 0 சுவாரஸ்யமான வரி. இது ஷெல் மற்றும் துணை அமைப்பு அமர்வுகளை மறுக்கிறது, அதே நேரத்தில் சாதனத்திற்குத் தேவையான திருப்பிவிடுதலை அனுமதிக்கிறது, எனவே திருடப்பட்ட விசையை ஊடாடும் உள்நுழைவாக மாற்ற முடியாது. PermitListen மையப் பக்கத்தில் கேட்பவரின் முகவரி மற்றும் போர்ட்டைப் பின்னுகிறது, மேலும் GatewayPorts no மையம் இருக்கும் வலையமைப்பிற்குத் திறப்பதற்குப் பதிலாக அதை loopback-இல் வைத்திருக்கிறது.
மீண்டும் ஏற்றுவதற்கு முன் பயனுள்ள கட்டமைப்பைச் சோதிக்கவும், அதைச் செய்யும்போது இரண்டாவது அமர்வைத் திறந்து வைக்கவும். Match தொகுதி தற்செயலாக அனைவருக்கும் பொருந்தினால், அல்லது ஒரு விருப்பத்தின் பெயரில் தட்டச்சுப் பிழை இருந்தால், நீங்கள் கடினப்படுத்தும் பெட்டியிலிருந்து உங்களை வெளியே பூட்டும் பாரம்பரிய வழி அதுவே. இயங்கும் கட்டமைப்பைக் கொட்டி, நீங்கள் இப்போது எழுதிய கோப்பை நம்புவதற்குப் பதிலாக விருப்பங்களை மீண்டும் படியுங்கள். விருப்ப ஆதரவு கட்டுமானங்களுக்கிடையே வேறுபடும் என்பதைக் கவனிக்கவும், எனவே புதிய சேவையகத்தில் ஏற்கப்பட்ட வரி பழையதால் வெறுமனே புறக்கணிக்கப்படலாம்.
சாதனப் பக்கம்: சத்தமாகத் தோல்வியடையும் திருப்பிவிடுதல்
சாதனம் இணைப்பைத் திறந்து கேட்பவரைக் கோருகிறது. வாதத்தில் உள்ள இரண்டு முகவரிகள் -R வெவ்வேறு அர்த்தங்களைக் கொண்டவை, அவற்றை இடமிருந்து வலமாகப் படிப்பதே எது எது என்பதை நினைவில் வைக்கும் விரைவான வழி.
ssh -NT \
-o ExitOnForwardFailure=yes \
-o ServerAliveInterval=30 \
-o ServerAliveCountMax=3 \
-R 127.0.0.1:21022:127.0.0.1:22 \
[email protected]
இடது இணை மையம் கேட்க வேண்டிய இடம். வலது இணை கோரிக்கை வரும்போது சாதனம் இணைக்கும் இலக்கு, அது சாதனத்தின் சொந்தப் பக்கத்திலிருந்து தீர்க்கப்படுகிறது. அவற்றை மாற்றினால் சுத்தமாக மேலெழுந்து தவறான இடத்திற்குத் திருப்பிவிடும் சுரங்கப்பாதை உருவாகும், இது தோல்வியை விட மோசம்.
ExitOnForwardFailure=yes கோரப்பட்ட கேட்பவரை நிறுவ முடியாதபோது கட்டளையை வெளியேறக் கட்டாயப்படுத்துகிறது, எனவே மறுதொடக்க சுழற்சி பாதி வேலை செய்யும் அமர்வை விட்டுச் செல்வதற்குப் பதிலாக உங்களுக்கு உண்மையைச் சொல்கிறது. உள்ளூர் SSH சேவை பின்னர் ஆரோக்கியமாக உள்ளதா என்பதைப் பற்றி எதுவும் சொல்லவில்லை, எனவே அதை ஒரு செயல்முறை மேலாளர் மற்றும் அவ்வப்போது உண்மையான இணைப்புச் சோதனையுடன் இணைக்கவும்.
கூடுதல் தாவலைத் தவிர்க்க loopback கேட்கும் முகவரியை ஒருபோதும் வைல்டுகார்ட்டால் மாற்ற வேண்டாம். அந்த ஒரே மாற்றமே நிர்வாகப் பாதைக்கும் பொதுவில் அணுகக்கூடிய போர்ட்டுக்கும் இடையிலான வேறுபாடு, அது பொதுவாக பிழைத்திருத்தத்தின்போது நிகழ்ந்து பின்னர் நிலைத்திருக்கும். சக ஊழியர் மையம் வழியாகப் போர்ட்டை அடைய முடியவில்லை என்றால், பிணைப்பை விரிவுபடுத்துவதற்குப் பதிலாக தாவல் கட்டமைப்பைச் சரிசெய்யுங்கள். இந்த வடிவமைப்பின் முழு பாதுகாப்பு வாதமும் loopback தான்.
மையம் வழியாக நிர்வாகி அணுகல்
மையத்தில் சாதாரண கணக்கு உள்ள நிர்வாகி அதன் வழியாகத் திருப்பிவிடப்பட்ட போர்ட்டுக்குத் தாவலாம். ரீலே கணக்கு இதற்குப் பயன்படுத்தப்படவில்லை, அவற்றைத் தனித்தனியாக வைத்திருப்பதன் அர்த்தமும் அதுவே.
ssh -J [email protected] -o HostKeyAlias=device-7 \
-p 21022 [email protected]
நீங்கள் தேர்ந்தெடுத்த மாற்றுப் பெயரின் கீழ் சாதனத்தின் புரவலன் விசையைச் சரிபார்க்கவும், ஏனெனில் அந்த விசையே சங்கிலியின் முடிவில் சாதனத்தை அடையாளம் காட்டுகிறது, சுரங்கப்பாதை வெறும் போக்குவரத்து. முனை முதல் முனை வரை உள்நுழைவு இன்னும் இரு முனைகளையும் அங்கீகரிக்கிறது; பகிரப்பட்ட மையத்தில் முடியும் சுரங்கப்பாதை அதைத் தானாக நம்பகமான பாதையாக்காது.
வாழ்க்கைச் சுழற்சியின் உரிமையை எடுத்துக் கொள்ளுங்கள்
சாதனக் கட்டளையை ஒரு செயல்முறை மேலாளரின் கீழ் சரியாக ஒரு செயலில் உள்ள நிகழ்வு மற்றும் நீங்கள் வேண்டுமென்றே தேர்ந்தெடுத்த மறுதொடக்கம் கொள்கையுடன் இயக்கவும். keepalive விருப்பங்கள் இறந்த துணையைக் கண்டறிகின்றன; அவை வெளியேறிய செயல்முறையை உயிர்ப்பிக்காது.
பின்னர் நீக்க நடைமுறையை எழுதுங்கள். ஒவ்வொரு சாதனமும் அதன் சொந்த கேட்பவரையும் சொந்த விசையையும் பெறுகிறது, எனவே நீக்கம் என்பது அந்தக் கணக்கை ரத்து செய்து அந்த விசையை நீக்குவதே, முழு கடற்படையும் பகிரும் ரகசியத்தைச் சுழற்றுவது அல்ல.
கடைசியாக, loopback உங்களுக்கு என்ன தருகிறது என்பதை நினைவில் கொள்ளுங்கள். இது வலையமைப்பு வெளிப்பாட்டைக் கட்டுப்படுத்துகிறது, பகிரப்பட்ட மையத்தில் உள்ள மற்ற உள்ளூர் பயனர்களைப் பற்றி எதுவும் செய்யவில்லை, எனவே மையத்தின் சொந்த அணுகல் கொள்கை இன்னும் சரியாக இருக்க வேண்டும். sshd_config குறிப்பு மேலே பயன்படுத்தப்பட்ட ஒவ்வொரு விருப்பத்தையும் ஆவணப்படுத்துகிறது, அவற்றில் எதையும் விரிவுபடுத்துவதற்கு முன் திருப்பிவிடுதல் பிரிவுகளை முழுமையாகப் படிக்கத் தகும்.