SSH1 pret SSH2
SSH (Secure Shell) ir protokols, ko izmanto, lai nodrošinātu datu pārraides drošību tīklos. SSH atrada Tatu Ilonens (SSH Communications Security Corporation) 1995. gadā. Šis protokols nodrošina infrastruktūru drošai datu transportēšanai, attālai komandu izpildei un drošības iespējotiem tīkla pakalpojumiem starp diviem datoriem tīklā. Komunikācija tiek pārvaldīta atbilstoši klienta – servera arhitektūrai (SSH klients un SSH serveris). SSH protokols ir izstrādāts ar divām versijām ar nosaukumu SSH1 un SSH2.
SSH1 (Secure Shell versija 1)
SSH protokola 1. versija tika atrasta 1995. gadā, un tā sastāv no trim galvenajiem protokoliem, ko sauc par SSH-TRANS, SSH-USERAUTH un SSH-CONNECT.
SSH-TRANS: tas ir transporta slāņa protokols (TCP/IP), kas pamatā nodrošina servera autentifikāciju, konfidencialitāti un integritāti.
SSH-USERAUTH: tas ir protokols, ko izmanto lietotāja autentifikācijai sakaru iestādē. Šis protokols autentificē SSH klientu SSH serverī. Šis protokols darbojas arī pār transporta slāni.
SSH-CONNECT: tas ir savienojuma protokols, kas multipleksē šifrētos datus dažās loģiskās straumēs. Šis protokols darbojas papildus SSH-USERAUTH protokolam.
Lai uzsāktu drošu savienojumu, klients nosūta savu autentifikācijas informāciju SSH serverim ar 128 bitu šifrēšanu. Katram servera resursdatoram ir resursdatora atslēga, kas ir paredzēta, lai pārbaudītu pareizo klienta servera saziņu. Tam jābūt arī attiecīgā SSH servera publiskajai atslēgai. Katrs pārsūtītais datu segments tiek šifrēts, izmantojot šifrēšanas algoritmus (DES, 3DES, IDEA, Blowfish).
Izņemot attālo pieteikšanos SSH var izmantot tunelēšanai, X11 savienojumam, SFTP (SSH failu pārsūtīšanas protokolam), SCP (drošai kopēšanai) un arī TCP porta pārsūtīšanai. TCP portu 22 pēc noklusējuma izmanto SSH protokols. Datu saspiešanu atbalsta arī SSH. Šī funkcija ir noderīga, ja klients-serveris ir savienots ar mazu joslas platumu, un to var izmantot, lai uzlabotu savienojuma caurlaidspēju.
SSH versijā 1.5 izstrādātāji ir atklājuši kādu ievainojamību. Šajā versijā bija iespējama nesankcionēta datu ievietošana šifrētas datu straumes vidū, kas var radīt augstu risku datu drošībai. 2001. gadā tika konstatēta arī nesankcionēta, ļaunprātīga autentifikācijas servera ievainojamība, lai pārsūtītu autentifikāciju uz citu serveri.
SSH2 (Secure Shell 2. versija)
SSH2 tika ieviests 2006. gadā ar daudziem būtiskiem uzlabojumiem salīdzinājumā ar SSH1. Lai gan tas ir SSH1 uzlabojums, SSH2 nav saderīgs ar SSH1. SSH2 ir pārrakstīts, pievienojot vairāk aizsardzības mehānismu, lai izvairītos no ievainojamībām.
SSH2 izmanto citu uzlabotu un spēcīgāku algoritmu kopu šifrēšanai un autentifikācijai, piemēram, DSA (digitālā paraksta algoritms). SSH2 vairs nav bezmaksas programmatūra, piemēram, SSH1; SSH2 izstrādātājs ir ierobežojis bezmaksas SSH2 izmantošanu. Atšķirībā no SSH1, SFTP (Secure File Transfer) programma ir iebūvēta SSH2 pakotnē, un tā izmanto tos pašus šifrēšanas protokolus, ko izmanto SSH2, lai šifrētu datu straumes.
Kāda ir atšķirība starp SSH1 un SSH2?
Daudzām operētājsistēmām, kuru pamatā ir UNIX, ir iebūvēta SSH iespēja, un daudzas SSH konsoles ir izstrādātas arī Windows sistēmām (TeraTerm, Putty, OpenSSH, WinSCP utt.).
• Kā minēts iepriekš, SSH2 ir uzlabota SSH1 versija.
• SSH1 ir dažas zināmas dokumentētas problēmas, kas tiek labotas un atkārtoti kodētas SSH2.
• Parasti jebkuras lietojumprogrammas jaunākā versija atbalsta tās vecākās versijas, taču SSH2 nav pilnībā saderīgs ar SSH1 un arī SSH2, kam nepieciešama licence.