Hvernig á að nota SSH ProxyJump og SSH ProxyCommand í Linux


Stutt: Í þessari handbók sýnum við hvernig á að nota SSH ProxyJump og SSH ProxyCommand skipanir þegar tengst er við jump server.

Í fyrri handbók okkar um hvernig á að setja upp SSH Jump Server, fórum við yfir hugmyndina um Bastion Host. Bastion gestgjafi eða Jump Server er milliliðstæki sem SSH viðskiptavinur tengist fyrst áður en hann fer inn á ytra Linux kerfið. SSH Jump þjónn virkar sem gátt að upplýsingatækniauðlindum þínum og dregur þannig úr árásaryfirborðinu.

SSH ProxyJump og ProxyCommand skipanirnar ákvarða hvernig viðskiptavinur tengist ytri netþjóninum í gegnum jump server, jump host eða bastion miðlara.

Þessi handbók varpar sviðsljósinu á SSH ProxyJump og SSH Proxy Command í Linux.

Efnisyfirlit

Tengdu Remote Linux með SSH ProxyJump Command

ProxyJump skipunin er auðkennd með -J fánanum. Það var kynnt í OpenSSH miðlara útgáfu 7.3 og hjálpar þér að koma á tengingu við ytra skotmark með því að hoppa í gegnum bastion eða stökkþjón.

Setningafræðin hér að neðan sýnir hvernig þessi valkostur er notaður:

$ ssh -J <jump-server> <remote-target>

Ef um er að ræða marga bastion- eða stökkþjóna tekur setningafræðin eftirfarandi snið.

$ ssh -J <jump-server-1> <jump-server-2> <remote-target>

Í báðum tilfellum verður þú skráður inn sem rótnotandi hvert skref á leiðinni. Þetta er ekki tilvalið vegna öryggisástæðna, svo þú gætir viljað búa til mismunandi notendur í hverju tilviki.

Þú getur sérstaklega tilgreint mismunandi notendur og SSH tengi eins og sýnt er.

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

Til að sýna ProxyJump fánann í aðgerð höfum við einfalda uppsetningu eins og sýnt er.

Jump Server IP:		173.82.232.55		User: james
Remote Target IP:	173.82.227.89		User: tecmint

Til að tengjast ytra skotmarkinu með Jump-þjóninum mun skipunin líta út sem hér segir.

$ ssh -J [email  [email 

Skipunin mun biðja þig um notandalykilorð stökkþjónsins, síðan fylgt eftir með lykilorði markkerfisins sem þú færð aðgang að markkerfinu.

Ef þú notar tiltekið bastion reglulega til að tengjast tilteknu fjarmarkmiði geturðu bætt eftirfarandi ProxyJump stillingum við ~/.ssh/config skrána til að gera tenginguna óaðfinnanlega. Þegar þetta gerist verður þú aðeins auðkenndur einu sinni og þetta gerist aðeins á ytra skotmarkinu.

Host host-jump
User james
Hostname 173.82.232.55

Host host_destination
User tecmint
Hostname 173.82.227.89
Port 22

Með því að nota ofangreindar stillingar geturðu komið á tengingu við markið eins og sýnt er.

$ ssh -J host_destination

Tengdu Remote Linux með SSH ProxyCommand Command

Áður en SSH Proxy Jump var ProxyCommand eina leiðin til að stökkva gestgjafa til að ná ytra markmiðinu. Það virkar með því að framsenda stdin (standard inn) og stdout (standard út) frá ytra skotmarkinu í gegnum stökkþjóninn eða bastion.

ProxyCommand tekur eftirfarandi setningafræði.

$ ssh -o ProxyCommand="ssh -W %h:%p <jump server>" <remote target>

Hér senda -W til %h:%p rökin stdin og út til ytri hýsilsins (%h) og fjarstýringarinnar gátt hýsilsins (%p).

Til að koma skipuninni í framkvæmd, svona myndi skipunin okkar líta út

$ ssh -o ProxyCommand="ssh -W %h:%p 173.82.232.55" 173.82.227.89

Auðvitað er leiðinlegt og tímafrekt að slá inn alla skipunina. Til að forðast að slá inn svo langa skipun skaltu bæta eftirfarandi línum af kóða við ~/.ssh/config skrána þína.

Host host-destination
Hostname 173.82.227.89
ProxyCommand ssh -q -W %h:%p host-jump

Vista og hætta.

Nú er allt sem þú þarft að gera er að keyra eftirfarandi skipun til að tengjast ytri netþjóninum.

$ ssh host-destination

Í þessari handbók sýndum við hvernig ProxyJump og ProxyCommand skipanir virka. Almennt séð kemur ProxyJump fram sem betri valkostur við ProxyCommand og veitir auðveldari og óaðfinnanlega leið til að tengjast ytra skotmarki í gegnum stökkhýsil.