
Mikä on SSH-tunneli? SSH-tunneloinnin opas ja vertailu 2024
Monesti verkossa liikkuessa tulee vastaan tilanne, jossa jokin palvelu tai tietokanta pitäisi saada turvallisesti kiinni julkisen verkon yli. SSH-tunneli on juuri tähän tarkoitukseen suunniteltu työkalu, ja se on ollut käytössä jo vuodesta Lenovo Suomen määritelmän mukaan.
Protokollan syntymävuosi: 1995 ·
Käytetyin etäyhteysprotokolla: SSH (Secure Shell) ·
Vakioyhteysportti: TCP 22 ·
Tunneloinnin tyyppejä: L (paikallinen), R (etäinen), D (dynaaminen)
Pikakatsaus
- SSH-tunneli salaa liikenteen päästä päähän (Lenovo Suomi)
- Onko SSH-tunnelin käyttö täysin turvallista liikenneanalyysiltä tietyissä verkkoympäristöissä
- SSH-protokolla on ollut käytössä vuodesta 1995 (Lenovo Suomi)
- SSH-tunnelointi kehittyy yhä edistyneempien hyppypalvelinten ja automaation suuntaan
SSH-tunneli on salattu yhteys, joka kuljettaa muuta verkkoliikennettä SSH-protokollan läpi. Lenovo Suomi
Jokainen, joka hallinnoi etäpalvelimia tai työskentelee arkaluonteisten verkkoyhteyksien parissa, kohtaa ennemmin tai myöhemmin kysymyksen: käytänkö SSH-tunnelia vai VPN:ää? Väärä valinta voi altistaa tietovuodoille tai hidastaa työskentelyä.
Alla on yhteenveto SSH-tunnelin keskeisistä ominaisuuksista:
| Ominaisuus | Arvo |
|---|---|
| Protokolla | Secure Shell (SSH) |
| Käyttökohde | Verkkoliikenteen salaaminen ja uudelleenohjaus |
| Porttiohjausmuodot | Paikallinen (L), Etäinen (R), Dynaaminen (D) |
| Vakioportti | TCP 22 |
Mikä on SSH-tunneli?
SSH-tunneloinnin perusteet
SSH-tunneli on salattu yhteys, joka kuljettaa muuta verkkoliikennettä SSH-protokollan läpi, kuten Lenovo Suomi asian ilmaisee. Sitä kutsutaan myös portin edelleenlähetykseksi tai SSH-porttiohjaukseksi saman lähteen mukaan.
Käytännössä tämä tarkoittaa, että SSH-yhteyden sisällä voidaan kuljettaa toista sovelluksen liikennettä, kuten tietokantahaun tai sähköpostin. Tämä eroaa esimerkiksi suorasta internet-yhteydestä, jossa liikenne on usein salaamatonta.
Kuinka SSH-tunneli toimii?
- Asiakasohjelma (esim. OpenSSH) muodostaa salatun yhteyden SSH-palvelimeen.
- Asiakas määrittää paikallisen tai etäisen portin, johon liikenne reititetään.
- Kaikki tunnelin läpi kulkeva data on salattu AES- tai ChaCha20-algoritmeilla.
Seuraava analogia auttaa ymmärtämään: SSH-tunneli on kuin suojattu maanalainen käytävä, jonka läpi voit kuljettaa arkaluonteista tavaraa julkiselta torilta toiselle ilman, että kukaan näkee mitä kannat.
Miksi tämä on tärkeää: Ilman tunnelointia monet vanhat protokollat, kuten HTTP tai FTP, lähettävät salasanat selkokielisinä. SSH-tunneli lisää suojakerroksen ilman, että itse sovellusta tarvitsee muuttaa.
SSH-tunneli ei ole anonymisointityökalu. Se salaa liikenteen, mutta kohdepalvelin näkee edelleen todellisen IP-osoitteen. Älä sekoita tätä VPN:ään tai Tor-verkkoon.
Mitä SSH-tunneli tekee?
Verkkoliikenteen suojaaminen SSH-tunnelilla
SSH-tunneli salaa sovellusliikenteen kuten sähköpostin tai tietokantayhteydet julkisessa verkossa, kuten Linux Console Suomi (tekniikan oppaat) toteaa. Se mahdollistaa palomuurien ohituksen ja vanhojen protokollien suojaamisen saman lähteen mukaan.
- Sähköpostin IMAP/POP3-yhteydet voidaan ohjata SSH-tunnelin läpi ilman erillistä VPN:ää.
- Tietokantayhteydet (esim. MySQL, PostgreSQL) voidaan salata, vaikka itse tietokanta ei tue TLS:ää.
Palomuurien ohittaminen SSH-tunnelilla
Jos yritysverkko estää tiettyjä portteja, SSH-tunneli tarjoaa keinon kiertää nämä rajoitukset yhden sallitun portin (yleensä 22) kautta.
- Esimerkiksi: SSH-tunneli porttiin 22 voi kuljettaa SSH-yhteyden sisällä HTTP-liikennettä porttiin 80.
- Tämä tekee SSH-tunnelista kaksiteräisen miekan: se suojaa, mutta sitä voidaan käyttää myös tietoturvarajoitusten kiertämiseen.
Sama tekniikka, joka suojaa järjestelmänvalvojan etäyhteyden, mahdollistaa myös työntekijän pääsyn kiellettyyn verkkopalveluun. SSH-tunneli ei ole hyvä eikä paha – se on työkalu, jonka vaikutus riippuu käyttäjästä.
The implication: SSH-tunnelin käyttöä on harkittava tarkoin, sillä sen väärinkäyttö voi murtaa organisaation tietoturvapolitiikan.
Mikä on SSH ja miksi sitä käytetään?
SSH-protokollan perusteet
SSH (Secure Shell) on protokolla turvalliseen etäkirjautumiseen ja komentojen suorittamiseen, kuten Lenovo Suomi (IT-järjestelmävalmistaja) määrittelee. Se korvasi turvattomat protokollat (Telnet, FTP, rlogin) käyttämällä julkisen avaimen salausta.
- SSH käyttää julkisen avaimen salausmenetelmää (RSA, ECDSA, Ed25519) istunnon avainten vaihtoon.
- Yhteys on turvattu symmetrisellä salauksella (AES-256-GCM, ChaCha20-Poly1305).
- SSH mahdollistaa myös tiedostonsiirron SCP- ja SFTP-protokollien kautta.
Linux.fi (suomalainen Linux-yhteisö) lisää, että SSH-tunnelin point-to-point-käyttö edellyttää myös avainperusteista hallintaa ja erillistä konfiguraatiota.
SSH-avainten ja salasanojen hallinta
- SSH-avaimet (julkinen ja yksityinen) tarjoavat turvallisemman kirjautumistavan kuin salasanat.
- Avaimia voidaan käyttää yhdessä salasanojen kanssa kaksivaiheisen tunnistautumisen tapaan.
- Suositus: käytä Ed25519-avaimia (lyhyempi, turvallisempi) RSA-2048:n sijaan.
Käytännön vinkki: Älä koskaan jaa yksityistä SSH-avaintasi. Jos epäilet avaimen vaarantuneen, vaihda se välittömästi ja poista vanha palvelimen `authorized_keys`-tiedostosta.
Onko SSH-tunneli turvallinen?
SSH-tunneloinnin riskit
SSH-tunneli on turvallinen, koska se on salattu, mutta se ei ole anonymisointityökalu. Security Stack Exchange (tietoturvayhteisö)
SSH-portti 22 on yleinen hyökkäyskohde, ja tunnelointi voidaan havaita liikenneanalyysillä.
- Portti 22 on jatkuvasti bottien ja hyökkääjien skannauksen kohteena.
- Liikenneanalyysi voi paljastaa, että tunnelia käytetään, vaikka sisältö olisikin salattu.
- Väärin konfiguroitu SSH-palvelin (esim. salasanakirjautuminen sallittuna) on altis brute-force-hyökkäyksille.
Miten SSH-tunnelointi havaitaan ja auditoidaan?
- Liikenneanalyysi (aikaleimojen ja pakettikokojen tarkastelu) voi paljastaa tunnelin käytön.
- IDPS-järjestelmät (Intrusion Detection and Prevention Systems) voivat tunnistaa epätyypillisen SSH-liikenteen.
- Auditoinnissa voidaan tarkastaa SSH-palvelimen lokit ja `sshd_config`-asetukset.
SSH-tunneli on turvallinen salauksensa vuoksi, mutta se ei ole täysin näkymätön. Järjestelmänvalvojat voivat havaita tunnelin käytön, ja yritysverkoissa se on usein kielletty.
What this means: SSH-tunnelin käyttö on aina kompromissi suojan ja havaittavuuden välillä.
Miten SSH-tunneli eroaa VPN:stä ja SSL:stä?
Monet verkkoliikenteen suojaustavat, mutta yksi keskeinen ero: SSH-tunneli suojaa yhtä sovellusta, VPN koko laitetta.
| Ominaisuus | SSH-tunneli | VPN | SSL/TLS |
|---|---|---|---|
| Suojauksen taso | Sovellus (application layer) | Verkko (network layer) | Sovellus (application layer) |
| Käyttökohde | Yksittäiset portit/palvelut | Koko laitteen liikenne | Web-selaimen liikenne |
| Vakioportti | TCP 22 | Vaihtelee (esim. UDP 1194 OpenVPN) | TCP 443 (HTTPS) |
| Salausmenetelmä | SSH-protokolla (oma) | IPsec tai SSL/TLS | TLS/SSL |
| Läpinäkyvyys | Vaatii manuaalisen konfiguraation | Käyttöjärjestelmätasolla läpinäkyvä | Selaimella automaattinen |
| Kevyys | Kevyt, vähäinen lisäkuorma | Raskaampi, salaa kaiken | Kevyt, optimoitu verkkosivuille |
Kuvio: SSH-tunneli on kevyin ja joustavin, mutta vaatii eniten manuaalista työtä. VPN on kattavin, mutta raskain. SSL/TLS on automaattisin, mutta vain web-selaimelle.
SSH-tunneli vs VPN
Security Stack Exchange (tietoturvayhteisö) huomauttaa, että VPN:n tavoite on yleensä suojata tai reitittää koko liikenne valitun reitin yli, joten se on käyttöä varten läpinäkyvämpi kuin SSH-tunneli. SSH-tunneli suojaa yleensä liikennettä tiettyyn porttiin tai tiettyyn palveluun, ei kaikkea laitteen verkkoliikennettä, kuten samassa lähteessä todetaan.
Milloin kumpaakin kannattaa käyttää: SSH-tunneli on paras valinta, kun tarvitaan pääsy vain yhteen etäpalvelimeen tai tietokantaan. VPN puolestaan on oikea ratkaisu, kun koko laitteen liikenne halutaan suojata esimerkiksi julkisessa WiFi-verkossa.
SSH vs SSL
SSH ei käytä TLS/SSL-protokollaa, vaan omaa protokollaa, kuten Security Stack Exchange (tietoturvayhteisö) tarkentaa. SSL/TLS suojaa verkkoselaimen liikenteen (HTTPS, portti 443), SSH suojaa komentorivi- ja tiedostonsiirtoliikenteen (portti 22).
Security Stack Exchange (tietoturvayhteisö) lisää, että OpenVPN käyttää SSL/TLS-pohjaista turvakerrosta omassa protokollassaan, mikä eroaa SSH:n omasta protokollasta.
Käytännön ero: SSH-tunneli on parempi järjestelmänvalvojan etäyhteyksiin, SSL/TLS verkkosivujen suojaamiseen. Ne eivät ole kilpailijoita, vaan täydentäviä työkaluja.
Kuinka SSH-tunnelia käytetään?
SSH-tunnelin luominen komentorivillä
Kapsi (suomalainen verkkopalveluntarjoaja) tarjoaa selkeät ohjeet SSH-tunnelin luomiseen:
- Paikallinen porttiohjaus:
ssh -L [paikallinen_portti]:[kohde]:[kohde_portti] [käyttäjä@palvelin] - Etäinen porttiohjaus:
ssh -R [etäportti]:[paikallinen]:[paikallinen_portti] [käyttäjä@palvelin] - Dynaaminen porttiohjaus (SOCKS proxy):
ssh -D [paikallinen_portti] [käyttäjä@palvelin] - Hyppypalvelimen käyttö:
ssh -J [käyttäjä@hyppypalvelin] [käyttäjä@kohdepalvelin]
Kapsi (suomalainen verkkopalveluntarjoaja) kertoo, että Firefoxissa SOCKS-välitys asetetaan osoitteeksi localhost ja portiksi 8080. Lisäksi samassa ohjeessa mainitaan, että Firefoxissa voidaan ottaa käyttöön verkon nimipalvelukyselyiden kulku tunnelin kautta asetuksella network.proxy.socks_remote_dns=true.
SSH-tunnelin määrittäminen hyppypalvelimelle
Konfigurointi ~/.ssh/config -tiedostolla SSH-tunnelin määrittäminen hyppypalvelimelle:
- Esimerkki:
Host kohde; ProxyJump kayttaja@hyppypalvelin - Tämä mahdollistaa monimutkaisempien reititysten hallinnan
Suomalainen järjestelmänvalvoja, joka tarvitsee pääsyn asiakkaan MySQL-tietokantaan palomuurin takana, voi luoda SSH-tunnelin: ssh -L 3306:localhost:3306 kayttaja@asiakaspalvelin. Tämän jälkeen paikallinen MySQL-asiakasohjelma yhdistää localhost:3306:een, ja liikenne kulkee salattuna tunnelin läpi asiakkaan tietokantaan.
SSH-tunnelin käyttö PuTTYllä
Kapsi (suomalainen verkkopalveluntarjoaja) opastaa, että PuTTYssä SSH-tunnelit määritetään Connection → SSH → Tunnels -kohdasta. PuTTYssä tunnelin tyypiksi valitaan Local, kun tehdään paikallinen porttiohjaus. Esimerkiksi Source port 3306 ja Destination db1.kapsi.fi:3306 on esimerkkiasetus MySQL-tunnelille.
SSH-tunnelin poistaminen
Kapsi (suomalainen verkkopalveluntarjoaja) toteaa, että SSH-tunnelin poistaminen tehdään tyhjentämällä selaimen välityspalvelinasetukset, kun tunnelia ei enää tarvita.
Edut
- Salaus ilman erillistä VPN-ohjelmistoa
- Kevyt – ei hidasta koko verkkoliikennettä
- Mahdollistaa palomuurien ohituksen
- Ilmainen ja avoin lähdekoodi
Haitat
- Vaatii manuaalista konfiguraatiota
- Ei suojaa koko laitteen liikennettä
- Portti 22 on yleinen hyökkäyskohde
- Ei anonymisointia – IP-osoite näkyy kohdepalvelimella
Yhteenveto
SSH-tunneli on tehokas työkalu, joka ratkaisee yhden ongelman kerrallaan: se suojaa tietyn sovelluksen liikenteen julkisessa verkossa. Se ei kuitenkaan ole VPN:n korvike, eikä sitä pidä käyttää sellaiseen tarkoitukseen. Suomalaiselle IT-asiantuntijalle tai etätyöntekijälle valinta on selvä: SSH-tunneli silloin, kun tarvitaan nopea ja kevyt yhteys yhteen palvelimeen, ja VPN koko verkon suojaukseen. SSH-tunneli on työkalu, ei ratkaisu – ja kuten kaikkia työkaluja, sitä on käytettävä oikein.
kapsi.fi, prohoster.info, linux.fi, fi.linux-console.net, elehtinen.fi, advancedkittenry.github.io, cs.helsinki.fi
Usein kysytyt kysymykset
Mikä portti SSH-tunnelille on varattu?
SSH-tunneli käyttää oletuksena porttia TCP 22, mutta sitä voidaan muuttaa palvelimen asetuksista.
Tarvitaanko SSH-tunnelia varten erillinen asiakasohjelmisto?
Linuxissa ja macOS:ssä SSH-asiakasohjelma on sisäänrakennettu. Windowsissa tarvitaan esimerkiksi PuTTY tai Windows 10/11:n OpenSSH-asiakas.
Onko SSH-tunneli käytännössä hitaampi kuin suora yhteys?
Kyllä, salaus aiheuttaa pienen viiveen, mutta nykyaikaiset algoritmit (AES-256-GCM, ChaCha20-Poly1305) tekevät erosta käytännössä huomaamattoman moderneilla prosessoreilla.
Miten SSH-tunneli eroaa SOCKS-proxyistä?
SSH-tunnelin dynaaminen porttiohjaus (-D) luo SOCKS-proxyn, mutta se on salattu. Tavallinen SOCKS-proxy ei yleensä salaa liikennettä.
Voiko SSH-tunnelia käyttää tiedostojen jakamisen salaamiseen?
Kyllä, SSH-tunnelin läpi voidaan ohjata esimerkiksi SCP- tai SFTP-liikennettä, jolloin tiedostonsiirto on salattu.
Miksi yritysverkoissa usein estetään SSH-tunnelointi portissa 22?
Koska SSH-tunnelia voidaan käyttää tietoturvarajoitusten kiertämiseen ja kiellettyihin verkkopalveluihin pääsyyn. Yritysverkoissa halutaan hallita kaikkea liikennettä.
Miten SSH-tunneli asetetaan pysyväksi (automaattinen käynnistys)?
Linuxissa voidaan käyttää systemd-palvelua, joka käynnistää SSH-tunnelin automaattisesti. Windowsissa esimerkiksi PuTTYn plink.exe voidaan lisätä käynnistysvalikkoon.
Aiheeseen liittyvää