Kā piekļūt attālajam serverim, izmantojot


Lēciena resursdators (pazīstams arī kā lēciena serveris) ir starpniekserveris vai SSH vārteja uz attālo tīklu, caur kuru var izveidot savienojumu ar citu resursdatoru atšķirīgā drošības zonā, piemēram, ar demilitarizēto zonu (DMZ). Tas savieno divas atšķirīgas drošības zonas un piedāvā kontrolētu piekļuvi starp tām.

Lēciena resursdatoram jābūt ļoti drošam un uzraudzītam, jo īpaši, ja tas aptver privātu tīklu un DMZ ar serveriem, kas lietotājiem piedāvā pakalpojumus internetā.

Klasisks scenārijs ir savienojums no darbvirsmas vai klēpjdatora no uzņēmuma iekšējā tīkla, kas ar ugunsmūri ir ļoti nodrošināts ar DMZ. Lai ērti pārvaldītu serveri DMZ, varat tam piekļūt, izmantojot lēciena resursdatoru.

Šajā rakstā mēs parādīsim, kā piekļūt attālajam Linux serverim, izmantojot lēciena resursdatoru, kā arī mēs konfigurēsim nepieciešamos iestatījumus katra lietotāja SSH klienta konfigurācijās.

Apsveriet šādu scenāriju.

Iepriekš minētajā scenārijā vēlaties izveidot savienojumu ar HOST 2, taču jums ir jāiziet HOST 1 ugunsmūra, maršrutēšanas un piekļuves privilēģiju dēļ. Ir vairāki pamatoti iemesli, kāpēc nepieciešami jumfosti.

Dinamiskā jumphost saraksts

Vienkāršākais veids, kā izveidot savienojumu ar mērķa serveri, izmantojot lēciena resursdatoru, ir izmantot karodziņu -J no komandrindas. Tas liek ssh izveidot savienojumu ar lēciena resursdatoru un pēc tam izveidot TCP pārsūtīšanu uz mērķa serveri no turienes (pārliecinieties, vai starp mašīnām esat bez SSH pieteikšanās ar paroli).

$ ssh -J host1 host2

Ja mašīnu lietotājvārdi vai porti atšķiras, norādiet tos terminālā, kā parādīts.

$ ssh -J [email :port [email :port	  

Vairāku jumphosts saraksts

To pašu sintaksi var izmantot, lai veiktu lēcienus vairākos serveros.

$ ssh -J [email :port,[email :port [email :port

Statiskais jumphost saraksts

Statiskais jumphost saraksts nozīmē, ka jūs zināt jumphost vai jumphosts, kas jums nepieciešams, lai pievienotu mašīnu. Tāpēc failā ~/.ssh/config jāpievieno šāds statiskais jumphost ‘maršrutēšana’ un jānorāda resursdatora aizstājvārdi, kā parādīts.

### 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

Tagad mēģiniet izveidot savienojumu ar mērķa serveri, izmantojot lēciena resursdatoru, kā parādīts.

$ ssh -J vps1 contabo

Otrā metode ir izmantot opciju ProxyCommand, lai pievienotu lēciena konfigurāciju failā ~ .ssh/config vai $HOME/.ssh/config , kā parādīts.

Šajā piemērā mērķa resursdators ir contabo un lēciens ir 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

Ja komanda Starpniekservera komanda ssh -q -W% h:% p vps1 nozīmē ssh palaišanu klusajā režīmā (izmantojot -q ) un stdio pārsūtīšanā (izmantojot -W ) režīmā, novirziet savienojumu caur starpniek resursdatoru (vps1).

Pēc tam mēģiniet piekļūt mērķa resursdatoram, kā parādīts.

$ ssh contabo

Iepriekš minētā komanda vispirms atvērs ssh savienojumu ar vps1 fonā, ko veicis ProxyCommand, un tur pēc tam sāciet ssh sesiju mērķa servera contabo.

Papildinformāciju skatiet ssh man lapā vai skatiet: OpenSSH/Cookbxook/Proxies and Jump Hosts.

Tas pagaidām ir viss! Šajā rakstā mēs esam parādījuši, kā piekļūt attālajam serverim, izmantojot lēciena resursdatoru. Izmantojiet zemāk esošo atsauksmju veidlapu, lai uzdotu jautājumus vai dalītos savās domās.