-{Secure Socket Tunneling Protocol (SSTP)}- je protokol koji je razvila kompanija Majkrosoft sa željom da prevaziđe probleme koje su virtuelne privatne mreže bazirane na -{PPTP}- protokolu imale sa -{NAT}--om (-{Network Adress Translation}-). -{PPTP}- virtualne privatne mreže koriste -{TCP}- konekciju na portu 1723 za održavanje tunelovane konekcije i razmenu -{GRE}- enkapsuliranih paketa. Ali, -{PPTP}- može imati problema sa -{NAT}--om, veb proksijima i zaštitnim zidovima (engl. -{firewall}-). Da bi se sprečili ovi problemi, zaštitni zid se mora konfigurisati da propušta -{GRE}- enkapsulirani saobraćaj, kao i da se dozvole -{TCP}- konekcije. Iako je -{GRE}- skoro standardni metod enkapsulacije -{IP}- paketa, mnogi internet servis provajderi odbacuju ove pakete, što rezultuje gubitkom podataka. Često su i konekcije u hotelima i drugim „hot spotovima“ konfigurisane za tipičan veb i -{e-mail}- saobraćaj i dešava se da neće dozvoliti -{PPTP}- pakete. Takođe, ako se naš kompjuter nalazi iza -{NAT}--a, -{NAT}- će morati da bude sposoban da prevede -{GRE}- saobraćaj. Za kraj, -{PPTP}- paketi ne mogu da prođu preko veb proksija.
Drugi protokol koji se koristio za -{Windows}- -{XP}- i -{Server}- 2003, -{L2TP}- u kombinaciji sa -{IPSec}- protokolom, koristi -{IKE (Internet Key Exchange)}- i takođe može imati problema sa -{NAT}--om, veb proksijima i zaštitnim zidovima. U ovom slučaju, zaštitni zid mora da propušta -{ESP}- enkapsulirane pakete i -{IKE}- saobraćaj. Ako se naš računar nalazi iza -{NAT}--a, -{VPN}- klijent i -{VPN}- server moraju da podržavaju -{IPSec NAT-Traversal (NAT-T)}-. -{L2TP/IPsec}- paketi takođe ne mogu da prolaze preko veb proksija.
Kao što možemo da vidimo, postoji mnogo problema sa -{VPN}- operacijama kod operativnih sistema -{Windows XP}- i -{Server 2003}-. Stoga se od pojave operativnih sistema -{Windows Vista}- i -{Server 2008}- koristi -{SSTP}-. Korišćenje ovog protokola rešava sve probleme – proksi, -{NAT}- i zaštitni zid. Razlog je prost: -{HTTP}- preko -{SSL}- je veoma rasprostranjen tip saobraćaja. -{HTTP}- preko -{SSL}- može značajno da smanji troškove održavanja „-{remote access}-” rešenja jer eliminiše probleme sa -{NAT}--om i radi u skoro svakom okruženju. Takođe, -{SSTP}- je ugrađen u -{Windows}- i nema potrebe za instalacijom dodatnog klijentskog softvera. -{SSTP}- obezbeđuje i bolje balansiranje saobraćaja (-{load balancing}-) -{VPN}- konekcija putem -{SSL}- „-{load balancer}-“-a. Za razliku od -{PPTP}- i -{L2TP}- protokola, -{SSTP}- ne podržava -{site-to-site}- -{VPN}- konekcije.
Proces konekcije
-{SSTP}- -{VPN}- klijent ostvaruje -{TCP}- konekciju sa -{SSTP}- -{VPN}- mrežnim prolazom (-{gateway}-) na -{TCP}- portu 443 Klijent šalje -{SSL}- -{CLIENT-HELLO}- poruku -{VPN}- mrežni prolaz šalje sertifikat klijentu Klijent verifikuje sertifikat tako što proveri svoje -{Trusted Root Certification Authorities}- sertifikate i vidi da li se među njima nalazi -{CA}- sertifikat potpisan od strane servera. Nakon toga, klijent se odlučuje za metodu enkripcije -{SSL}- sesije, generiše -{SSL}- ključ i enkriptuje ga sa javnim ključem -{VPN}- mrežnog prolaza i šalje enkriptovanu formu -{SSL}- ključa -{VPN}- mrežnom prolazu Mrežni prolaz dekriptuje -{SSL}- ključ sa privatnim ključem servera. Sva buduća komunikacija između klijenta i mrežnog prolaza je enkriptovana dogovorenom enkripcionom metodom i -{SSL}- ključem sesije. Klijent šalje -{HTTP}- preko -{SSL}- (tj. -{HTTPS}-) -{REQUEST}- poruku Klijent dogovara -{SSTP}- tunel sa mrežnim prolazom Klijent ostvaruje -{PPP}- konekciju sa -{SSTP}- serverom. Ovo uključuje standardne -{PPP}- autentifikacione metode i konfiguraciju za -{IPv4}- ili -{IPv6}- saobraćaj Klijent počinje da šalje -{IPv4}- ili -{IPv6}- saobraćaj preko -{PPP}- linka
Struktura paketa
Zaglavlje
+SSTP Header Ofset bit Bitovi 0–7 8–14 15 16–31 0 Verzija Rezervisano -{C}- Veličina 32+ Podaci
Verzija (8 bita) – Za dogovor -{SSTP}- verzije koja će se koristiti. Rezervisano (7 bita) – Rezervisano za buduću upotrebu. -{C}- (1 bit) – Kontrolni bit koji označava da li je -{SSTP}- paket kontrolni ili paket podataka. Ovaj bit je setovan ukoliko je paket kontrolni. Veličina (16 bita) – Polje za veličinu paketa, sastoji se od dva dela: rezervisani deo i deo za veličinu paketa. Rezervisano (4 bita) – Rezervisano za buduću upotrebu. Veličina (12 bita) – Sadrži veličinu celog paketa, uključujući i -{SSTP}- zaglavlje. Podaci (promenljiva) – Kada je kontrolni bit -{C}- setovan, ovo polje sadrži kontrolnu poruku. U suprotnom, ovo polje bi sadržalo podatke protokola višeg nivoa. Trenutno, jedini mogući je -{PPP}- protokol.
Kontrolna poruka
Polje podataka sadrži kontrolnu poruku samo kada je kontrolni bit -{C}- setovan.
+SSTP Kontrolna poruka Ofset bit Bitovi 0–15 16–31 0 Tip poruke Broj atributa 32+ Atributi
Tip poruke (16 bita) – Označava tip -{SSTP}- poruke koja se koristi za komunikaciju. Određuje broj i tip atributa -{SSTP}- poruka. Broj atributa (16 bita) – Određuje broj atributa dodatih -{SSTP}- poruci. Atributi (promenljiva) – Sadrži listu atributa vezanih za -{SSTP}- kontrolnu poruku.
Vidi još Virtuelna privatna mreža -{NAT}- -{PPTP}- -{GRE}- -{L2TP}- -{PPP}-
Категорија:Интернет