Wéi Zougang zu engem Remote Server mat engem Jump Host
E Spronghost (och bekannt als Sprongserver) ass en Tëschestatiounshost oder e SSH Paart zu engem Fernnetz, duerch deen eng Verbindung mat engem aneren Host an enger ongläicher Sécherheetszone gemaach ka ginn, zum Beispill eng demilitariséierter Zone (DMZ). Et iwwerbréckt zwou ongläiche Sécherheetszonen a bitt e kontrolléierten Zougang tëscht hinnen.
E Spronghost soll héich geséchert a iwwerwaacht ginn, besonnesch wann et e privaten Netzwierk an en DMZ mat Serveren déi Servicer u Benotzer um Internet ubidden.
E klassesche Szenario ass d'Verbindung vun Ärem Desktop oder Laptop vu bannent Ärem internen Netzwierk vun Ärer Firma, wat mat Firewalls op en DMZ héich geséchert ass. Fir e Server an engem DMZ einfach ze managen, kënnt Dir et iwwer e Spronghost zougräifen.
An dësem Artikel wäerte mir demonstréieren wéi een Zougang zu engem Remote Linux Server iwwer e Spronghost kritt an och mir konfiguréieren déi néideg Astellungen an Äre Per-Benotzer SSH Client Konfiguratiounen.
Betruecht de folgende Szenario.
Am uewe Szenario wëllt Dir mat HOST 2 verbannen, awer Dir musst duerch HOST 1 goen, wéinst Firewalling, Routing an Zougangsprivilegien. Et gëtt eng Zuel vu gültege Grënn firwat Jumphosts gebraucht ginn.
Dynamesch Jumphost Lëscht
Deen einfachste Wee fir mat engem Zilserver iwwer e Spronghost ze verbannen ass de -J
Fändel vun der Kommandozeil ze benotzen. Dëst erzielt ssh fir eng Verbindung mam Spronghost ze maachen an dann en TCP Forwarding op den Zilserver opzebauen, vun do aus (vergewëssert Iech datt Dir Passwuertlos SSH Login tëscht Maschinnen hutt).
$ ssh -J host1 host2
Wann Benotzernimm oder Ports op Maschinnen ënnerscheeden, spezifizéiert se um Terminal wéi gewisen.
$ ssh -J [email :port [email :port
Multiple Jumphosts Lëscht
Déi selwecht Syntax ka benotzt ginn fir Spréng iwwer verschidde Serveren ze maachen.
$ ssh -J [email :port,[email :port [email :port
Statesch Jumphost Lëscht
Statesch jumphost Lëscht heescht, datt Dir de jumphost oder jumphosts kennt, datt Dir eng Maschinn ze konnektéieren brauchen. Dofir musst Dir déi folgend statesch Jumphost 'Routing' an ~/.ssh/config
Datei addéieren an d'Host Aliasen spezifizéieren wéi gewisen.
### First jumphost. Directly reachable Host vps1 HostName vps1.example.org ### Host to jump to via jumphost1.example.org Host contabo HostName contabo.example.org ProxyJump vps1
Probéiert elo mat engem Zilserver iwwer e Spronghost ze verbannen wéi gewisen.
$ ssh -J vps1 contabo
Déi zweet Method ass d'Optioun ProxyCommand ze benotzen fir d'Jumphost Konfiguratioun an Ärem ~.ssh/config
oder $HOME/.ssh/config
Datei ze addéieren wéi gewisen.
An dësem Beispill ass den Zilhost contabo an de Jumphost ass vps1.
Host vps1 HostName vps1.example.org IdentityFile ~/.ssh/vps1.pem User ec2-user Host contabo HostName contabo.example.org IdentityFile ~/.ssh/contabovps Port 22 User admin Proxy Command ssh -q -W %h:%p vps1
Wou de Kommando Proxy Kommando ssh -q -W %h:%p vps1
heescht ssh am rouege Modus lafen (benotzt -q
) an am stdio Forwarding (benotzt -W
) Modus, redirect d'Verbindung duerch en Zwëschenhost (vps1).
Da probéiert Zougang zu Ärem Zilhost wéi gewisen.
$ ssh contabo
Deen uewe genannte Kommando öffnet als éischt eng ssh Verbindung op vps1 am Hannergrond ausgefouert vum ProxyCommand, an duerno fänkt d'ssh Sessioun op den Zilserver Contabo un.
Fir méi Informatioun, kuckt d'ssh Man Säit oder kuckt op: OpenSSH/Cookbxook/Proxies a Jump Hosts.
Dat ass alles fir elo! An dësem Artikel hu mir bewisen wéi een Zougang zu engem Fernserver iwwer e Spronghost kritt. Benotzt de Feedbackformular hei ënnen fir Froen ze stellen oder Är Gedanken mat eis ze deelen.