Kif tuża SSH ProxyJump u SSH ProxyCommand fil-Linux


Qosor: F'din il-gwida, aħna nuru kif tuża l-kmandi SSH ProxyJump u SSH ProxyCommand meta tikkonnettja ma' server jump.

Fil-gwida preċedenti tagħna dwar kif twaqqaf SSH Jump Server, koprejna l-kunċett ta 'Bastion Host. Host Bastion jew Jump Server huwa mezz intermedjarju li klijent SSH jgħaqqad miegħu l-ewwel qabel ma jaċċessa s-sistema Linux remota fil-mira. Server SSH Jump jaġixxi bħala portal għar-riżorsi tal-IT tiegħek, u b'hekk inaqqas il-wiċċ tal-attakk.

Il-kmandi SSH ProxyJump u ProxyCommand jiddeterminaw kif klijent jgħaqqad mas-server remot permezz tal-jump server, jump host, jew bastion server.

Din il-gwida tagħti l-attenzjoni fuq SSH ProxyJump u SSH Proxy Command fil-Linux.

Werrej

Ikkonnettja Remote Linux billi tuża SSH ProxyJump Command

Il-kmand ProxyJump huwa indikat bil-bandiera -J. Ġie introdott fil-verżjoni tas-server OpenSSH 7.3 u jgħinek tagħmel konnessjoni ma 'mira remota billi taqbeż minn bastjun jew server jaqbżu.

Is-sintassi hawn taħt turi kif tintuża din l-għażla:

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

Fil-każ ta 'servers ta' bastion jew jump multipli, is-sintassi tieħu l-format li ġej.

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

Fiż-żewġ każijiet, inti tkun illoggjat bħala l-utent root kull pass tat-triq. Dan mhuwiex ideali minħabba raġunijiet ta 'sigurtà, għalhekk tista' tkun trid toħloq utenti differenti f'kull każ.

Tista' tispeċifika b'mod espliċitu utenti differenti u portijiet SSH kif muri.

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

Biex nuru l-bandiera ProxyJump fl-azzjoni, għandna setup sempliċi kif muri.

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

Biex tikkonnettja mal-mira remota billi tuża s-server Jump, il-kmand se jidher kif ġej.

$ ssh -J [email  [email 

Il-kmand iqanqlek għall-password tal-utent tas-server tal-qabża, imbagħad segwita mill-password tas-sistema fil-mira li fuqha tingħata aċċess għas-sistema fil-mira.

Jekk tuża b'mod regolari bastjun speċifiku biex tikkonnettja ma 'mira remota speċifika, tista' tehmeż il-konfigurazzjoni ProxyJump li ġejja fil-fajl ~/.ssh/config biex tagħmel il-konnessjoni bla xkiel. Meta jiġri dan, inti tkun awtentikat darba biss u dan jiġri biss fuq il-mira remota.

Host host-jump
User james
Hostname 173.82.232.55

Host host_destination
User tecmint
Hostname 173.82.227.89
Port 22

Bl-użu tal-konfigurazzjoni ta 'hawn fuq, tista' tagħmel il-konnessjoni mal-mira kif muri.

$ ssh -J host_destination

Ikkonnettja Remote Linux billi tuża SSH ProxyCommand Command

Qabel SSH Proxy Jump, ProxyCommand kien l-uniku mod kif jaqbeż l-ospiti biex tilħaq il-mira remota. Jaħdem billi jgħaddi l-stdin (standard in) u stdout (standard out) mill-mira remota permezz tas-server tal-qabża jew is-swar.

Il-ProxyCommand jieħu s-sintassi li ġejja.

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

Hawnhekk, il--W għall-argumenti %h:%p jgħaddu l-stdin u 'l barra lill-host remot (%h) u l-remot port tal-host (%p).

Biex tpoġġi l-kmand fl-azzjoni, hekk ikun jidher il-kmand tagħna

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

Naturalment, ittajpjar tal-kmand kollu huwa tedious u jieħu ħafna ħin. Biex tevita li ttajpja kmand daqshekk twil, żid il-linji ta' kodiċi li ġejjin mal-fajl ~/.ssh/config tiegħek.

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

Issejvja u oħroġ.

Issa kull ma għandek tagħmel hu li tħaddem il-kmand li ġej biex tikkonnettja mas-server remot.

$ ssh host-destination

F'din il-gwida, urejna kif jaħdmu l-kmandi ProxyJump u ProxyCommand. Ġeneralment, ProxyJump joħroġ bħala alternattiva aħjar għal ProxyCommand u jipprovdi mod eħfef u bla xkiel biex tikkonnettja ma 'mira remota permezz ta' jump host.