Jinsi ya kutumia SSH ProxyJump na SSH ProxyCommand katika Linux
Muhtasari: Katika mwongozo huu, tunaonyesha jinsi ya kutumia amri za SSH ProxyJump na SSH ProxyCommand wakati wa kuunganisha kwenye seva ya kuruka.
Katika mwongozo wetu wa awali wa jinsi ya kusanidi Seva ya Kuruka ya SSH, tuliangazia dhana ya Mpangishi wa Bastion. Seva ya Bastion au Seva ya Rukia ni kifaa cha kati ambacho kiteja cha SSH huunganisha nacho kwanza kabla ya kufikia mfumo wa Linux wa mbali unaolengwa. Seva ya SSH Rukia hufanya kama lango la rasilimali zako za TEHAMA, hivyo basi kupunguza sehemu ya mashambulizi.
Amri za SSH ProxyJump na ProxyCommand huamua jinsi mteja anavyounganisha kwenye seva ya mbali kupitia seva ya kuruka, seva pangishi au seva ya bastion.
Mwongozo huu unaangazia SSH ProxyJump na Amri ya Wakala ya SSH katika Linux.
Unganisha Linux ya Mbali Ukitumia Amri ya SSH ProxyJump
Amri ya ProxyJump inaashiria -J bendera. Ilianzishwa katika toleo la 7.3 la seva ya OpenSSH na hukusaidia kuunganisha kwa lengo la mbali kwa kuruka kituo au seva ya kuruka.
Syntax hapa chini inaonyesha jinsi chaguo hili linatumika:
$ ssh -J <jump-server> <remote-target>
Katika kesi ya seva nyingi za bastion au kuruka, syntax inachukua umbizo lifuatalo.
$ ssh -J <jump-server-1> <jump-server-2> <remote-target>
Katika visa vyote viwili, utaingia kama mtumiaji wa mizizi kila hatua ya njia. Hii si bora kwa sababu ya usalama, kwa hivyo unaweza kutaka kuunda watumiaji tofauti katika kila tukio.
Unaweza kubainisha watumiaji tofauti na milango ya SSH kama inavyoonyeshwa.
$ ssh -J <[email :port> <[email :port>
Ili kuonyesha bendera ya ProxyJump, tunayo usanidi rahisi kama inavyoonyeshwa.
Jump Server IP: 173.82.232.55 User: james
Remote Target IP: 173.82.227.89 User: tecmint
Ili kuunganisha kwa lengo la mbali kwa kutumia seva ya Rukia, amri itaonekana kama ifuatavyo.
$ ssh -J [email [email
Amri itakuuliza upate nenosiri la mtumiaji wa seva ya kuruka, kisha ikifuatiwa na nenosiri la mfumo unaolengwa ambao utapewa ufikiaji wa mfumo unaolengwa.

Ukitumia mara kwa mara ngome maalum kuunganisha kwa lengo mahususi la mbali, unaweza kuambatisha usanidi ufuatao wa ProxyJump katika ~/.ssh/config faili ili kufanya muunganisho usiwe na mshono. Hili likitokea, utathibitishwa mara moja tu na hii hutokea kwenye lengo la mbali pekee.
Host host-jump
User james
Hostname 173.82.232.55
Host host_destination
User tecmint
Hostname 173.82.227.89
Port 22
Kwa kutumia usanidi ulio hapo juu, unaweza kufanya muunganisho kwa lengo kama inavyoonyeshwa.
$ ssh -J host_destination

Unganisha Linux ya Mbali Ukitumia Amri ya ProxyCommand ya SSH
Kabla ya Kuruka Wakala wa SSH, ProxyCommand ilikuwa njia pekee ya kuruka wapangishi kufikia lengo la mbali. Inafanya kazi kwa kusambaza stdin (kiwango ndani) na stdout (kiwango cha nje) kutoka kwa lengo la mbali kupitia seva ya kuruka au kituo.
ProxyCommand inachukua sintaksia ifuatayo.
$ ssh -o ProxyCommand="ssh -W %h:%p <jump server>" <remote target>
Hapa, hoja za -W hadi %h:%p hoja za mbeleza stdin na kutoka kwa seva pangishi ya mbali (%h) na kidhibiti cha mbali. lango la mwenyeji (%p).
Ili kuweka amri katika vitendo, hivi ndivyo amri yetu ingeonekana kama
$ ssh -o ProxyCommand="ssh -W %h:%p 173.82.232.55" 173.82.227.89

Kwa kweli, kuandika amri nzima ni ya kuchosha na hutumia wakati. Ili kuepuka kuandika amri ndefu kama hiyo, ongeza mistari ifuatayo ya msimbo kwenye faili yako ya ~/.ssh/config.
Host host-destination
Hostname 173.82.227.89
ProxyCommand ssh -q -W %h:%p host-jump
Hifadhi na uondoke.
Sasa unachotakiwa kufanya ni kuendesha amri ifuatayo ili kuunganisha kwenye seva ya mbali.
$ ssh host-destination
Katika mwongozo huu, tulionyesha jinsi amri za ProxyJump na ProxyCommand zinavyofanya kazi. Kwa ujumla, ProxyJump huja kama mbadala bora kwa ProxyCommand na hutoa njia rahisi na isiyo na mshono ya kuunganisha kwa lengo la mbali kupitia seva pangishi ya kuruka.