SSTP vs OpenVPN: mateix port 443, protocol diferent
SSTP embolcalla PPP dins d’HTTPS i ve amb Windows. OpenVPN aporta el seu propi client i pot fer servir UDP. El número de port no és el protocol.
Totes dues opcions poden seure darrere de TCP 443, així que la gent assumeix que són punts finals intercanviables. No ho són: SSTP servidor parla PPP dins d’HTTPS, mentre que un servidor OpenVPN parla el seu propi protocol sobre TLS o per un flux UDP cru. Apuntar un client al port de l’altre produeix una connexió que mai arriba a una pantalla d’inici de sessió. L’elecció tracta de quin client i quin transport podeu suportar, no del número.
Un port compartit no fa un protocol compartit
L’handshake TLS pot completar-se i tot i així no portar enlloc, perquè llavors el client i el servidor no es posen d’acord sobre què dir després. En una captura de paquets veieu un handshake net seguit de dades d’aplicació que l’altra banda rebutja o ignora. Aquest patró és la signatura d’un desacord de protocol, no d’un bloqueig del firewall.
Ni un perfil reanomenat ni una entrada de menú diferent converteixen l’un en l’altre. Una connexió SSTP es crea des de la configuració de VPN de Windows amb una adreça de servidor i les dades d’autenticació de l’operador, mentre que una connexió OpenVPN necessita el client i el fitxer de configuració corresponent. L’especificació SSTP de Microsoft descriu la primera, i no descriu un handshake OpenVPN.
El port 443 és una comoditat de política. Passa per xarxes que permeten poca cosa més, i això és un avantatge real, però no us diu res sobre quin protocol hi corre al darrere.
SSTP fa túnel de PPP dins d’HTTPS
El nom descriu la construcció: trames PPP portades dins d’una sessió HTTPS, cosa que significa TLS a sota i un certificat que el client pot comprovar. Windows ho inclou com a tipus de VPN natiu, així que un portàtil gestionat sovint es pot connectar sense cap programari addicional més enllà del perfil que subministra l’operador.
Les altres plataformes són una altra història. Un client de Linux o macOS necessita una implementació mantinguda, i aquestes varien en què suporten i com informen dels errors. Comproveu el client que realment pensau fer servir en lloc d’assumir que la capacitat integrada de Windows es trasllada, i confirmeu que el nom del servidor del perfil coincideix amb el certificat que presenta el servidor.
SSTP normalment és només TCP. Aquest únic transport afecta com es comporta en un enllaç amb pèrdues, perquè la retransmissió passa dins del túnel i també a sota.
OpenVPN aporta el seu propi client i una tria de transport
OpenVPN distribueix el seu propi client i perfil, cosa que us dona diagnòstics que un diàleg natiu de Windows no exposa. El servidor pot escoltar en UDP o TCP, i la configuració de l’operador decideix quin ha de fer servir el vostre client. Un perfil apuntat al transport equivocat falla abans de l’autenticació.
L’autenticació depèn igualment de la configuració. Un desplegament pot exigir només certificats, certificats més un nom d’usuari i una contrasenya, o un segon factor a sobre, i el client ha de coincidir exactament amb aquesta disposició. El fet que una connexió arribi a l’etapa TLS no us diu quines credencials demanarà després.
UDP és el valor per defecte habitual perquè evita niar un flux fiable dins d’un altre flux fiable. El mode TCP existeix per a xarxes que bloquegen UDP, i funciona, però una pèrdua important pot fer-lo semblar pitjor que el camí UDP que ha substituït. Trieu TCP quan hàgiu de fer-ho, no perquè soni més fiable.
Trieu per client, transport i suport
Tres preguntes resolen la majoria d’aquestes decisions. Cada dispositiu client necessita una connexió que funcioni sense cap programari addicional? La xarxa de la qual depeneu permet UDP, o TCP 443 és l’única sortida? I qui dona suport al client, a les seves actualitzacions i a la seva recuperació quan un perfil caduca?
Quan compareu els dos, proveu-ho al mateix dispositiu i a la mateixa xarxa d’accés. Si l’extrem SSTP i l’extrem OpenVPN són servidors diferents o llocs diferents, el vostre resultat inclou aquelles rutes i màquines en lloc d’aïllar el protocol. Aquesta és la manera més habitual que aquestes comparacions donin una resposta segura però equivocada.
Després confirmeu quin heu establert realment abans de depurar qualsevol altra cosa:
> Get-VpnConnection -Name "Office SSTP" | Select-Object TunnelType, ServerAddress
> openvpn --config office.ovpn --verb 4
De qualsevol manera, acabeu provant el recurs i el DNS que necessiteu en lloc de declarar èxit a l’estat del túnel. Tots dos protocols es poden configurar per portar només trànsit privat seleccionat, i un túnel connectat sense resolució de noms funcionant sembla una VPN trencada quan en realitat és un disseny de túnel dividit o de DNS.
En una flota gestionada, la distribució de perfils i el suport d’actualitzacions solen decidir la qüestió molt abans que qualsevol mesura de transport.