SSH-tunell som et alternativ til VPN

Tenk deg at du har et nettverk som kjører diverse tjenester, som du av og til trenger å koble til utenifra. Her er vanlige løsninger å enten slå på port forwarding i routeren eller å benytte VPN. Å direkte tilgjengeliggjøre en maskin på nettet er en potensiell sikkerhetsrisiko, og i mitt tilfelle trengte jeg tilgang til remote desktop på en windows 2008 server, definitivt ikke ei maskin jeg ønsker å gjøre tilgjengelig på internett. Routeren på det aktuelle nettverket var en Cisco VPN-router beregnet på små og mellomstore bedrifter, så i utgangspunktet var planen klar: VPN. Problemet ble imidlertid at Cisco’s VPN-protokoll er proprietær, og man er avhengig av Ciscos klient, QuickVPN. Denne fungerer for det første kun i Windows, og for det andre kun på omtrent 50% av nettverkene jeg prøvde den fra, jeg fant aldri noen sammenheng mellom nettverkene som feilet. Etter mye prøving og feiling i lange tider ble det til slutt at jeg som en nødløsning åpnet port 3389, og forwardet denne til 2008-serveren. Risikosport…

Men, så en slo det meg, hvorfor ikke sette opp en ssh-tunell ved behov, effekten blir den samme som med VPN, man slipper gjennom brannmurer, og all trafikk ute på nettet er kryptert. Etter noe googling fant jeg ut at det finnes OpenSSH implementasjoner for windows, bl.a. vha. Cygwin. Jeg fikk SSH tjenesten opp å gå, men slet veldig både med autentifisering og å få tunellene til å fungere.

Løsningen ble til slutt å finne en gammel rask-pc, installere Ubuntu server, og voila! Så fungerte det. Jeg hadde ingen tilgjengelig skjerm som gikk overens med skjermkortet i den gamle pc-en, så installasjonen ble faktisk gjort i blinde. Jeg installerte paralellt i en VM, så jeg så hvordan skjermbildet så ut, trykte i blinde, og håpte på det beste. Så fort Ubuntu-serveren var oppe og gikk, var det bare å sette opp ssh-tuneller i hytt og pine, alt fungerer knirkefritt! Ingen konfigurasjon er nødvendig på Ubuntu-serveren, du trenger bare å sørge for at pakken ssh er installert, så er du i gang.

På klientene er løsningen litt forskjellig, avhengig av OS. De som benytter dette nettverket til daglig er alle windowsbrukere, jeg opprettet derfor en tunnelier profil til hver av dem, og sendte dem den i en mail, sammen med en lenke til installasjonsfilen for tunnelier. Tunnelier viste seg å være en ganske genial GUI-applikasjon for terminal-, filoverførings- og tunelltjenester. Du kan til og med legge inn separate innstillinger for remote desktop server.

På linux har f.eks. Remmina remote desktop client innebygget støtte for å opprette ssh tuneller. Du kan også lage nøyaktig den tunellen du trenger med ssh kommandoen.

ssh brukernavn@server.dyndns.org -C -L 3389:192.168.1.2:3389

Kommandoen over lager en tunell fra localhost:3389 til 192.168.1.2:3389 i nettverket som ssh-serveren på server.dyndns.org befinner seg i. Bryteren -C er for å skru på komprimering, noe som forbedrer overføringshastigheten om du ikke har ubegrenset båndbredde.

Tags: , , , , , , , ,

2 Responses to “SSH-tunell som et alternativ til VPN”

  1. bamvpn.netNo Gravatar Says:

    Jo, det funker fint. Det bare å bruke TCP(CCPORT i cli) istedenfor UDP.
    Fungerer også i linux. KVPNC eller Screwsoft sin, men ,ja, det er litt knot. Har selv Cisco 2811 og bruker KVPNC(linux) og Cisco VPN client. 256 AES SHA

    Det jeg egentlig skulle si var at Transmission Remote GUI fryser på LXDE install. Hva kan det være?

  2. adminNo Gravatar Says:

    Hvilke pakker bruker du? Pakkene her inne er for lengst utdaterte, da Transgui nå er blitt en del av Debian og Ubuntu. Om du finner feil i de ofisielle pakkene så er en bugreport på launchpad mest konstruktivt.
    Takker for info om Cisco VPN. Jeg har nå forelsket meg i Remmina, og benytter det daglig for å administrere en rekke windowsservere, både med og uten ssh-tuneller.

Leave a Reply

Spam Protection by WP-SpamFree

Spam protection by WP Captcha-Free

Vote for Launchpad to add usage statistics.
Bloggurat
Bloggurat
Twitter: anoteng

BalleClorins geekblog is using WP-Gravatar