Hur man kommer åt en fjärrserver med en Hoppvärd

en hoppvärd (även känd som en hoppserver) är en mellanvärd eller en ssh-gateway till ett fjärrnätverk, genom vilket en anslutning kan göras till en annan värd i en annan säkerhetszon, till exempel en demilitariserad zon (DMZ). Det överbryggar två olika säkerhetszoner och erbjuder kontrollerad åtkomst mellan dem.

en hoppvärd bör vara mycket säkrad och övervakad, särskilt när den sträcker sig över ett privat nätverk och en DMZ med servrar som tillhandahåller tjänster till användare på internet.

ett klassiskt scenario är att ansluta från din stationära eller bärbara dator från ditt företags interna nätverk, vilket är mycket säkert med brandväggar till en DMZ. För att enkelt hantera en server i en DMZ kan du komma åt den via en hoppvärd.

i den här artikeln kommer vi att visa hur du kommer åt en fjärr Linux-server via en jump host och vi kommer också att konfigurera nödvändiga inställningar i dina SSH-klientkonfigurationer per användare.

Tänk på följande scenario.

SSH Jump Host
ssh Jump Host

i ovanstående scenario vill du ansluta till värd 2, men du måste gå igenom värd 1 på grund av brandvägg, routing och åtkomstbehörighet. Det finns ett antal giltiga skäl till varför jumphosts behövs..

dynamisk Jumphost-lista

det enklaste sättet att ansluta till en målserver via en hoppvärd använder flaggan -J från kommandoraden. Detta berättar för ssh att ansluta till hoppvärden och sedan upprätta en TCP-vidarebefordran till målservern, därifrån (se till att du har Lösenordslös SSH-inloggning mellan maskiner).

$ ssh -J host1 host2

om användarnamn eller portar på maskiner skiljer sig, ange dem på terminalen som visas.

$ ssh -J username@host1:port username@host2:port 

flera Jumphosts lista

samma syntax kan användas för att göra hopp över flera servrar.

$ ssh -J username@host1:port,username@host2:port username@host3:port

statisk Jumphost lista

statisk jumphost lista betyder, att du vet jumphost eller jumphosts som du behöver för att ansluta en maskin. Därför måste du lägga till följande statiska jumphost ’routing’ i ~/.ssh/config fil och ange värd alias som visas.

### First jumphost. Directly reachableHost vps1 HostName vps1.example.org### Host to jump to via jumphost1.example.orgHost contabo HostName contabo.example.org ProxyJump contabo

försök nu ansluta till en målserver via en hoppvärd som visas.

$ ssh -J vps1 contabo
logga in på Target Host via Jumphost
logga in på Target Host via Jumphost

den andra metoden är att använda alternativet ProxyCommand för att lägga till jumphost-konfigurationen i din ~.ssh/config eller $HOME/.ssh/config fil som visas.

i det här exemplet är målvärden contabo och jumphost är vps1.

Host vps1HostName vps1.example.orgIdentityFile ~/.ssh/vps1.pemUser ec2-userHost contaboHostName contabo.example.orgIdentityFile ~/.ssh/contabovpsPort 22User adminProxy Command ssh -q -W %h:%p vps1

där kommandot Proxy Command ssh -q -W %h:%p vps1 betyder kör ssh i tyst läge (med -q) och i stdio forwarding (med -W) läge, omdirigera anslutningen via en mellanliggande värd (vps1).

försök sedan komma åt din målvärd som visas.

$ ssh contabo

ovanstående kommando öppnar först en ssh-anslutning till vps1 i bakgrunden som utförs av ProxyCommand, och därefter startar ssh-sessionen till målserverns contabo.

för mer information, se SSH man-sidan eller hänvisa till: OpenSSH/Cookbxook/Proxies och Jump Hosts.

det är allt för nu! I den här artikeln har vi visat hur man kommer åt en fjärrserver via en hoppvärd. Använd feedbackformuläret nedan för att ställa frågor eller dela dina tankar med oss.

Lämna ett svar

Din e-postadress kommer inte publiceras.