Mikä on SSH? 

Secure Shell eli SSH on salattuun tietoliikenteeseen tarkoitettu protokolla. Yleisin SSH:n käyttötapa on ottaa etäyhteys SSH-asiakasohjelmalla SSH-palvelimeen päästäkseen käyttämään toista konetta merkkipohjaisen konsolin kautta. SSH:lla voidaan myös suojata FTP-, HTTP- tai muuta liikennettä, joka toimii samalla tasolla. Rlogin, telnet, rsh, rcp ja rdist suositellaan korvattavaksi SSH:lla, koska näiden yhteydenottotapojen suojaustaso on varsin heikko.

SSH-protokollan ensimmäisen version (SSH1) kehitti vuonna 1995 tekniikan lisensiaatti Tatu Ylönen, joka työskenteli tuolloin tutkijana teknillisessä korkeakoulussa. Sittemmin hän perusti SSH Communications Security -nimisen yrityksen. Tässä jo hieman vanhentuneessa suojauksessa käytettävät algoritmit kuten RSA ja muut ovat osoittautuneet erittäin hyviksi. Myöhemmin SSH1:n yksinkertaista tiedon oikeellisuuden (CRC) tarkistamista on pidetty suojaustasoltaan heikkona. Tämä on kuitenkin kehittynyt SSH2:ssa, jota nykyään suositellaan käytettäväksi.

SSH-asiakasohjelma kuuluu nykyisin useimpien Unix-sukuisten käyttöjärjestelmien oletusasennukseen, ja se on yleensä käytettävissä komentoriviltä komennolla ssh. Windows-koneilla suosittu SSH-etäkäyttöohjelma on PuTTY.

Huomioitavaa salatun yhteyden muodostamisessa

Suojatun liikenteen yksi tärkeimmistä periaatteista on, että mahdollisimman monessa paikassa käytetään mahdollisimman monta erityyppistä algoritmia. Näin krakkeri ei yhden liikenteen suojaukset murrettuaan osaa purkaa samalla keinolla muita yhteyksiä. Siksi SSH-ohjelmissa on hyvin monia käytettävissä olevia algoritmeja. Vaikka tieto, mitä voisit kuljettaa verkon yli, ei olisikaan arkaluontoista, niin on silti suositeltavaa käyttää salattuja yhteyksiä, koska näin suojaat myös salasanasi, toisin kuin telnet-liikenteessä ja tuot lisää suojattua liikennettä verkkoon. Tämä hankaloittaa osittain krakkereita erottamasta arkaluontoista tietoa triviaalisesta informaatiosta.

Vaikka SSH luokitellaan turvalliseksi, siihen liittyy eräitä haavoittuvuuksia, joita voidaan hyödyntää hyökkäyksissä. Ensimmäistä yhteyttä kahden pisteen välille muodostaessa vaihdetaan salausavaimet hyvin heikon salauksen voimin (ks. Potenssiinkorotusalgoritmi). Jos krakkeri käyttää mies välissä -tekniikkaa, niin hän voi lukea myös tulevat yhteydet mitä näiden pisteiden välillä muodostetaan. Tämä ongelma voidaan välttää kuljettamalla salausavaimet perinteisessä postissa tai kuljettamalla avaimet taskussa pisteiden välillä. On ensiarvoisen tärkeää huomioida, ettei tätä ongelmaa ole kuin SSH-1 -protokollaa käytettäessä. SSH-2:ssa avaimien vaihto tapahtuu tietoturvallisesti.

Kannattaa myös muistaa, ettei SSH-putkea kannata muodostaa missä tahansa. Jos et luota ympäristöön, missä olet, älä ota yhteyttä. Jälleen täytyy salausavain saada molempien pisteiden välille ja liian usein ihmiset jättävät palvelimen avaimen koneelle, jolta yhteys muodostettiin. Tämän jälkeen krakkeri voi perustaa oman valepalvelimensa ja varastaa salasanoja muilta saman palvelimen käyttäjiltä aiemmin mainitulla tekniikalla.

SSH-asiakaspääteohjelmia ja palvelinversioita on hyvin monenlaisia. Yhden valmistajan SSH-pääteohjelma ei välttämättä ole yhteensopiva toisen valmistajan palvelinohjelman kanssa, koska asiakasohjelma ei välttämättä tue palvelimen vaatimia suojausalgoritmeja. Tämä on kuitenkin hyvin harvinaista. Yleensä palvelin ja asiakasohjelma ovat yhteensopivia ja todennäköisempää on, että palvelin ja pääteohjelma löytävät yhteisen sävelen. Tätä varten Internet Engineering Task Force, eli lyhyemmin IETF, on luonut standardin SSH:lle.