Poti avea mașinăA pentru a deschide un tunel SSH către mașină B, cu o opțiune de redirecționare de la distanță, care vă va permite să accesați SSH mașinăA din mașină B.
Dacă aveți acces root activat mașină B, apoi setați GatewayPorts opțiunea de configurare pentru da în /etc/ssh/sshd_config, apoi lansați această comandă mașinăA:
ssh -N -R 0.0.0.0:2222:127.0.0.1:22 the_public_ip_of_machine_B
Aceasta va deschide portul 2222 mașină B, și redirecționează orice trafic de pe acel port către el însuși, către portul 22. Rețineți că acesta va asculta pe toate interfețele, inclusiv pe cea publică, așa că este posibil să doriți să utilizați firewall portul numărul 2222 (dar probabil aveți un firewall pe mașină B oricum). În timp ce acest tunel este activ, puteți să faceți SSH mașină B pe portul 2222, iar asta te va duce la mașinăA. De cand mașină B și mașinăC sunt pe aceeași subrețea, vă puteți autentifica mașinăA din mașinăC într-un singur pas.
Dacă nu aveți acces root activat mașină B, atunci procesul este același, cu excepția adresei de ascultare. Dacă GatewayPorts este setat sa Nu (care este implicit), apoi primul argument (0.0.0.0) va fi pur și simplu ignorată, iar adresa de ascultare va fi legată 127.0.0.1. În acest caz, puteți utiliza în continuare comanda de sus, iar redirecționarea va funcționa la fel, dar portul deschis nu va fi disponibil de oriunde decât de la mașină B. Deci trebuie să intrați în SSH mașină B, apoi SSH la gazdă locală, portul 2222, care vă va duce la mașinăA.
Cu toate acestea, poate doriți să luați în considerare utilizarea a ceva mai robust, cum ar fi un VPN.