- 2/14/2019
- 2 minuty ke čtení
Tento dokument specifikuje protokol Secure Socket Tunneling Protocol(SSTP). SSTP je mechanismus zapouzdření provozu protokolu PPP (Point-to-Point Protocol)nad protokolem HTTPS, jak je uvedeno v , , a . Tentoprotokol umožňuje uživatelům přístup do soukromé sítě pomocí protokolu HTTPS. Použití protokoluHTTPS umožňuje překonat většinu firewallů a webových proxy serverů.
Mnoho služeb VPN poskytuje mobilním a domácím uživatelům možnost vzdáleného přístupu do podnikové sítě pomocí tunelového protokolu Point-to-Point (PPTP) a protokolu Layer Two Tunneling Protocol/Internet Protocol security(L2TP/IPsec). S rozšířením firewallů a webových proxy serverů však mnozí poskytovatelé služeb, například hotely, neumožňují provoz PPTP a L2TP/IPsec. To vede k tomu, že uživatelé nemají všudypřítomné připojení k firemním sítím. Například blokování portů generického zapouzdření směrování (GRE) mnoha poskytovateli internetových služeb (ISP) je běžným problémem při použití protokolu PPTP.
Tento protokol poskytuje šifrovaný tunel (SSTPtunnel) pomocí protokolu SSL/TLS. Když klient navazujepřipojení VPN založené na protokolu SSTP, naváže nejprve spojení TCP se serverem SSTP přes port TCP 443. V případě, že klient naváže připojení SSTP, naváže spojení TCP se serverem SSTP. Přes toto spojení TCP probíhá SSL/TLS handshake.
Po úspěšném vyjednání SSL/TLS odešle klient požadavek HTTP s kódováním délky obsahu a velkou délkou obsahuna spojení chráněném protokolem SSL (další podrobnosti viz část 3.2.4.1). Server odešle zpět odpověď HTTP se stavemHTTP_STATUS_OK(200). Konkrétní podrobnosti o požadavku a odpovědi, o kterých jsme hovořili dříve, naleznete v části 4.1. Nyní je navázáno spojení HTTPS a klient může na tomto spojení odesílat a přijímat pakety SSTPControl a datové pakety SSTP. Navázání spojení HTTPS při přítomnosti webového proxy serveru je specifikováno v .
SSTP provádí následující funkce:
-
Umožňuje oddělit rámce PPP od souvislého proudu dat, která jsou odesílána pomocí HTTPS. Další informace o protokolu PPP naleznete v části .
-
Vyjednávání parametrů mezi dvěma subjekty. Další podrobnosti viz část 1.7.
-
Rozšiřitelný formát zprávy pro podporu nových parametrů vbudoucnosti. Další informace naleznete v části 2.2.
-
Bezpečnostní operace zabraňující útočníkovi typu man-in-the-middle nevhodně přenášet rámce PPP přes SSTP. SSTP používá klíčový materiálvygenerovaný během ověřování PPP pro kryptografickou vazbu (oddíly 3.2.5.2a 3.3.5.2.3).
Řídicí pakety SSTP obsahují zprávy k vyjednáváníparametrů a k zajištění toho, aby nedošlo k nedůvěryhodnému man-in-the-middle. Pakety SSTPData obsahují jako užitečné zatížení rámce PPP.
V síti VPN založené na protokolu SSTP probíhá vyjednávání na úrovni protokolu v následujícím pořadí:
-
Je navázáno spojení TCP se serverem SSTP přes port TCP443.
-
Je dokončen SSL/TLS handshake.
-
Je dokončen HTTPS request-response.
-
Je zahájeno vyjednávání SSTP.
-
Je zahájeno vyjednávání PPP a je dokončeno nebo obejito ověřování PPP.
-
Je dokončeno vyjednávání SSTP.
-
Vyjednávání PPP je dokončeno.
-
Spojení přechází do stavu připravenosti pro přenos libovolné síťové vrstvy (například paketů IP).
Následující zapouzdřovací operace probíhají na klientovi:
-
Pakety aplikační vrstvy jsou zapouzdřeny přes libovolný transportní protokol (například TCP a UDP).
-
Pakety transportní vrstvy jsou zapouzdřeny přes síťový protokol (například IP).
-
Pakety síťové vrstvy jsou zapouzdřeny přes datovou vrstvu PPP.
-
Pakety PPP jsou zapouzdřeny přes protokol SSTP.
-
Pakety SSTP jsouzapouzdřeny přes protokol SSL/TLS.
-
Záznamy SSL/TLS jsou zapouzdřeny přes protokol TCP.
-
Pakety TCP jsou zapouzdřeny přes IP.
-
Pakety IP jsou odesílány přes libovolnou datovou linkovou vrstvu (například Ethernet neboPPP). Další informace o PPP naleznete v části .
Na straně serveru probíhají operace pro odstranění zapouzdření v opačném pořadí.
.