Dynamisk port forwarding (SOCKS proxy og VPN-lignende)
Kapittel 14
Dynamisk port forwarding lar deg bruke SSH som en midlertidig proxy-tjeneste. Det fungerer som en SOCKS-proxy, der du kan sende all trafikk fra programmer (som nettlesere) gjennom serveren din.
Kommando
ssh -D [bind_addr:]port brukernavn@server
Eksempel
ssh -D 3000 user@server1
Dette starter en lokal SOCKS-proxy på port 3000.
Du kan deretter konfigurere nettleseren din til å bruke
SOCKS-proxy: localhost port 3000
All nettverkstrafikk fra nettleseren vil da rutes gjennom SSH-forbindelsen og ut via serveren, slik at du får samme IP-adresse som serveren. Du kan fortsatt koble til serveren interaktivt i samme forbindelse.
Når du avslutter SSH-sessionen, opphører også proxytjenesten. Husk å sette nettleseren tilbake til normal proxy-innstilling etterpå, ellers vil den ikke få vanlig internettforbindelse.
Fordeler
- Sikker og kryptert nettverkstunnel.
- Brukes for tilgang til tjenester som krever IP-whitelisting.
- En enkel måte å surfe med en dedikert IP uten å påvirke resten av maskinen.
Viktig
"localhost" i dynamisk forwarding refererer til den lokale proxy-porten på din egen maskin, der programmer (som nettlesere) kobler til.
Kjøre i bakgrunn (uten åpen terminal)
Du kan kjøre SSH-tunnelen som bakgrunnsprosess ved å kombinere flaggene -f -n -N -T
Forklaring
-fkjør i bakgrunnen etter pålogging-nikke les fra standard input-Nikke kjør noen kommando på serveren-Tikke alloker TTY
Eksempel
ssh -fnNT -D 3000 user@server
Dette oppretter en SOCKS-proxy i bakgrunnen uten at det åpnes noe SSH-shell.
For å finne og stoppe prosessen senere
ps x | grep ssh
kill PID
Konfigurasjon i ~/.ssh/config
Host server1
Hostname 10.0.1.110
# Access remote port through local port 3333
LocalForward 3333:localhost:3306
# Access local port 22 through remote port 5432
RemoteForward 22:localhost:5432
# Start a SOCKS proxy on port 3000
DynamicForward 3000
Bruksområder
- Midlertidig “VPN” via ekstern server for trygg surfing.
- Tilgang til tjenester via dedikert IP fra server.
- Forbinde interne nettverk uten å åpne porter i brannmur.
Høydepunkt – dynamisk forwarding
Starte SOCKS proxy
ssh -D 3000 brukernavn@server
Starte proxy i bakgrunnen
ssh -fnNT -D 3000 brukernavn@server
Sjekke aktive prosesser
ps x | grep ssh
Stoppe tunnel
kill PID
