WSS cez Squid nie je to isté ako bežný upgrade WebSocket
Oddeľte šifrované WebSockety v CONNECT od spracovania bežného HTTP Upgrade v doprednom proxy.
Vidí Squid požiadavku HTTP Upgrade, alebo len tunel s šifrovanou prevádzkou? To určuje, či jeho ovládanie HTTP Upgrade rieši zlyhanie.
| Bežná cesta explicitným proxy | S čím sa Squid stretáva |
|---|---|
wss:// | Zvyčajne CONNECT, potom TLS cieľa, ktorý nesie WebSocket handshake |
ws:// | Bežná požiadavka HTTP Upgrade, ktorú proxy dokáže spracovať |
Ovládanie upgradu v Squide sa týka požiadaviek, ktoré spracúva. Neodhaľuje šifrované hlavičky HTTP v bežnom nepriehľadnom tuneli WSS. Zachytávanie TLS alebo iné špeciálne spracovanie v proxy mení viditeľnosť a môže priniesť vlastné požiadavky na kompatibilitu.
Pri WSS zistite, kde sa postupnosť zastaví: pripojenie k proxy, prijatý CONNECT, overený TLS, potom handshake aplikácie. Odmietnutie pred TLS je iné zlyhanie než odmietnutá bežná požiadavka Upgrade.
Ak je potrebná zmena politiky upgradu, použite direktívu pre nainštalovanú verziu Squidu a konkrétne povoľte požadované správanie. Povolenie všetkých protokolov upgradu rozširuje politiku nad rámec konkrétnej aplikácie.
Úspešná požiadavka na stránku HTTPS ustanoví len časť cesty. Dlhodobá prevádzka WebSocket môže stále zlyhať pre požiadavky aplikácie, životnosť spojenia alebo obmedzenia sprostredkovateľov, aj pre rovnaké meno hostiteľa.