SSTP kontra OpenVPN: samme port 443, forskellig protokol
SSTP pakker PPP ind i HTTPS og følger med Windows. OpenVPN medbringer sin egen klient og kan bruge UDP. Portnummeret er ikke protokollen.
Begge muligheder kan ligge bag TCP 443, så folk antager, at de er udskiftelige endepunkter. Det er de ikke: SSTP server taler PPP inde i HTTPS, mens en OpenVPN-server taler sin egen protokol over TLS eller en rå UDP-strøm. At pege én klient mod den andens port giver en forbindelse, der aldrig når en loginprompt. Valget handler om hvilken klient og transport du kan understøtte, ikke om nummeret.
En delt port gør ikke en delt protokol
TLS-håndtrykket kan fuldføres og alligevel føre ingen steder hen, fordi klienten og serveren derefter er uenige om, hvad der skal siges næste gang. I en pakkeoptagelse ser du et rent håndtryk efterfulgt af applikationsdata, som modparten afviser eller ignorerer. Det mønster er signaturen på en protokol-uoverensstemmelse og ikke en blokering fra firewallen.
Hverken en omdøbt profil eller et andet menupunkt gør den ene til den anden. En SSTP-forbindelse oprettes fra Windows' VPN-indstillinger med en serveradresse og operatørens godkendelsesoplysninger, mens en OpenVPN-forbindelse kræver klienten og den matchende konfigurationsfil. Microsofts SSTP-specifikation beskriver det første og beskriver ikke et OpenVPN-håndtryk.
Port 443 er en politikbekvemmelighed. Den slipper gennem netværk, der kun tillader lidt andet, og det er en reel fordel, men den siger intet om, hvilken protokol der kører bag den.
SSTP tunnelerer PPP inde i HTTPS
Navnet beskriver konstruktionen: PPP-rammer båret inde i en HTTPS-session, hvilket betyder TLS nedenunder og et certifikat, som klienten kan kontrollere. Windows inkluderer dette som en oprindelig VPN-type, så en administreret bærbar kan ofte forbinde uden ekstra software ud over den profil, operatøren leverer.
Andre platforme er en anden historie. En Linux- eller macOS-klient kræver en vedligeholdt implementering, og de varierer i, hvad de understøtter, og hvordan de rapporterer fejl. Kontroller den klient, du faktisk agter at bruge, i stedet for at antage, at Windows' indbyggede evne overføres, og bekræft, at servernavnet i profilen svarer til det certifikat, serveren præsenterer.
SSTP er typisk kun TCP. Den ene transport påvirker, hvordan den opfører sig på et link med tab, fordi gensendelse sker inde i tunnelen såvel som nedenunder.
OpenVPN medbringer sin egen klient og et transportvalg
OpenVPN leverer sin egen klient og profil, hvilket giver dig diagnostik, som en oprindelig Windows-dialog ikke viser. Serveren kan lytte på UDP eller TCP, og operatørens konfiguration afgør, hvilken din klient skal bruge. En profil rettet mod den forkerte transport fejler før godkendelsen.
Godkendelse styres lige så meget af konfigurationen. En udrulning kan kræve kun certifikater, certifikater plus et brugernavn og en adgangskode eller en anden faktor oveni, og klienten skal matche den ordning præcist. At en forbindelse når TLS-fasen, siger ikke, hvilke legitimationsoplysninger den vil bede om næste gang.
UDP er standarden, fordi det undgår at indlejre en pålidelig strøm i en anden pålidelig strøm. TCP-tilstand findes til netværk, der blokerer UDP, og den virker, men store tab kan få den til at føles værre end den UDP-vej, den erstattede. Vælg TCP, når du skal, ikke fordi det lyder mere pålideligt.
Vælg efter klient, transport og support
Tre spørgsmål afgør de fleste af disse beslutninger. Har hver klientenhed brug for en forbindelse, der virker uden ekstra software? Tillader det netværk, du er afhængig af, UDP, eller er TCP 443 den eneste udgang? Og hvem supporterer klienten, dens opdateringer og dens genopretning, når en profil udløber?
Når du sammenligner de to, så test på samme enhed og samme adgangsnetværk. Hvis SSTP-endepunktet og OpenVPN-endepunktet er forskellige servere eller forskellige steder, indeholder dit resultat de ruter og maskiner i stedet for at isolere protokollen. Det er den mest almindelige måde, hvorpå sådanne sammenligninger giver et selvsikkert, men forkert svar.
Bekræft derefter, hvilken du faktisk etablerede, før du fejlfinder noget andet:
> Get-VpnConnection -Name "Office SSTP" | Select-Object TunnelType, ServerAddress
> openvpn --config office.ovpn --verb 4
Uanset hvad, så afslut med at teste den ressource og det DNS, du har brug for, i stedet for at erklære succes ved tunnelens tilstand. Begge protokoller kan konfigureres til kun at bære udvalgt privat trafik, og en tilsluttet tunnel uden fungerende navneoversættelse ligner et ødelagt VPN, når det i virkeligheden er et split-tunnel- eller DNS-design.
I en administreret flåde afgør profildistribution og opdateringssupport normalt spørgsmålet længe før nogen transportmåling.