Servergebonnenen Profil schléit hannert engem TLS-Proxy feel: wéi eng Generatioun?
Access Server 2.8 an 2.9 bauen servergebonnen Profiler ënnerschiddlech. Entscheet, wéi ee Wee Äre Proxy brécht, ier Dir de Frontend ännert.
Een Benotzer kann sech verbannen an en aneren net, iwwer dee selwechte Portal, um selwechten Dag. Béid hunn servergebonnen Profiler, béid sinn op der selwechter Access Server-Build, an den eenzegen Ënnerscheed ass wéini hire Profil generéiert gouf. Dat ass d'Muster dat et wäert ass ze erkennen, well "servergebonnen" eng Politik bezeechent an net eng Verbindungssequenz. Access Server huet zwou Generatiounen vun deem Artefakt geliwwert, an en TLS-Reverse-Proxy steet just virun engem vun hire Weeër. Dräi Bedingunge bestëmmen, op wéi enger Branche Dir sidd.
Zwou Generatiounen, zwou Verbindungssequenzen
Am eelere Design, dee bis 2.8 gëlt, ass déi importéiert Datei e Pseudoprofil. OpenVPN Connect benotzt se fir sech iwwer HTTPS bei der Web-API vum Access Server z'authentifizéieren, kritt e temporäre benotzergebonnenen Profil an e Sessiounstoken, an eréischt duerno baut en de VPN op. Zwou Transporte lafen noeneen, an déi éischt ass eng gewéinlech Webufro.
De Format, dee mat 2.9 agefouert gouf, mécht dee Bootstrap pro Verbindung net. Et ass en native Profil, dee kompatibel OpenVPN Cliente kënnen notzen, net just OpenVPN Connect. E roflueden oder iwwer URL importéieren kann nach ëmmer HTTPS enthalen — dat ass e Verëffentlechungsschrëtt, keen Ofruff vun engem temporäre Profil pro Verbindung.
| Older server-locked (≤2.8) | Newer server-locked (2.9+) | |
|---|---|---|
| Before the tunnel | Web API call with credentials | Nothing; the profile is already local |
| Client requirement | OpenVPN Connect | Any compatible client |
| What a TLS web proxy can break | The bootstrap, before any VPN attempt | Download only, not the connection |
| Expected HTTP log on connect | A request from the client | Often nothing at all |
En Upgrade schreift net onbedéngt Profiler ëm, déi schonn ausgestallt goufen, sou datt eng aktuell Serverversioun nach ëmmer den ale Artefakt ausgëtt. D'Server-Build seet Iech wat méiglech ass, net wat dëse Benotzer importéiert huet.
Dräi Bedingunge, déi Är Branche wielen
Déi éischt Bedingung ass d'Generatioun vum Artefakt. Frot d'Datei un, kuckt wéi se produzéiert gouf, a notéiert d'Clientversioun, déi se importéiert huet. Wann Dir d'Generatioun net aus der Datei bestëmme kënnt, seet Iech en neie Profil, dee fir e Testkont ausgestallt gouf, wat de Server haut produzéiert, an dat ass aner Informatioun wéi déi, déi de Benotzer mat der Feelung huet.
Déi zweet ass, wat Äre Frontend tatsächlech terminéiert. En HTTP-Reverse-Proxy op Schicht siwen, deen TLS ofleisst, ass net dat selwecht Objet wéi en TCP-Viruleiter op Schicht véier, an en UDP-Viruleiter och net. Déi üblech Arrangement vum Access Server um Port 443 bréngt den OpenVPN TCP-Daemon dozou, Browserverkéier z'erkennen an en un d'Webservicer ze ginn, sou datt en onverbonnen HTTPS-Terminator virun net d'Protokollbehandlung vun deem Daemon erhällt. D'Nummer 443 ze deelen mécht zwou Designe net gläichwäerteg.
Déi drëtt ass wou de Feeler landt. E Feeler virum VPN an e Feeler am Steierkanal gesinn änlech aus an engem Client, deen nëmme "verbënnt" seet, awer si loossen Beweiser op verschiddene Plazen. Wann den ale Format am Spill ass, ass de Bootstrap e Kandidat. Wann den neie Format am Spill ass, ass en eidele Webzougriffslog erwaart a bewäist näischt an eng Richtung.
Wann den Artefakt al ass: de Bootstrap schléit als éischten feel
Liest de tatsächleche Feeler vum Client amplaz vu sengem Ennzoustand. Déi interessant Felder sinn den HTTPS-Feeler, d'Serveridentitéit déi de Client erwaart huet, d'Zil wou d'Ufro higaangen ass, an ob d'Zertifikatspréifung ofgeschloss gouf. Vergläicht se duerno mat de Logge vum Webservice a vum Proxy op der Serversäit.
Datt e Browser d'Login-Säit erreecht ass kee Beweis datt d'API-Authentifizéierung vun dësem Client gelongen ass. Et sinn ënnerschiddlech Ufroen, mat ënnerschiddlechen Zertifikatserwaardungen an dacks ënnerschiddlechen Hostnimm. Wann de Portal korrekt zerwéiert gëtt an de Client nach ëmmer feelt, läit den Dissens am Bootstrap-Wee, net am Passwuert vum Benotzer.
Maacht de Verglach net duerch, andeem Dir d'TLS-Préifung ausschalt oder d'Authentifizéierungspolitik lockert. Dat verwandelt eng diagnostizéierbar Konfiguratiounsdifferenz an e Wee dee funktionéiert awer net gepréift ass, an et ass genee déi Ännerung déi en temporäre Test an en dauerhaft Lach verwandelt. D'Dokumentatioun vum Access Server iwwer Verbindungsprofiler beschreift béid Generatiounen an de Floss vum temporäre Profil, an et ass d'Referenz déi ze préife ass ier Dir unhëlt datt e Proxy schëlleg ass.
Wann den Artefakt nei ass: liest amplaz de Steierkanal
Mat engem Profil am 2.9-Stil geet de Client direkt op den nativen VPN-Endpunkt. Ënnersicht d'Endpunkten am Profil, den Transport deen benotzt gëtt, an de Feeler vum Steierkanal. Wann de Client ni eng HTTP-Ufro stellt, ass dat mam Design konform an net e Symptom.
Hei ännert sech och d'Form vun der Proxy-Fro. Eng HTTPS-Ofleeschtung kann en TCP-nëmme Stroum net briechen deen se ni gesäit, awer se kann nach ëmmer den Download briechen deen de Profil verëffentlecht, an en TCP-nëmme Viruleiter dréit UDP guer net. Préift wéi en Transport de Profil verlaangt ier Dir schléisst datt de Frontend irrelevéiert ass.
TLS-Passthrough fir een eenzege Stroum ass eng enk Arrangement. Et bitt keng UDP-Viruleedung a reproduzéiert net d'Service-Viruleedungsverhalen vum Daemon selwer um 443. Wann Äre Frontend eng vun deenen Saachen mécht, sot wéi eng, well d'Behandlung ënnerschiddlech ass.
Behandlungen déi enk bleiwen
Déi mannst invasiv Préifung ass, en neien ënnerstëtzten Profil fir e Testkont ze generéieren an sech iwwer den intended nativen Endpunkt mat deenen selwechten Authentifizéierungsufuerderungen ze verbannen. Wann dat funktionéiert an de behalen ale Profil net, hutt Dir den Artefakt an engem Schrëtt vum Server a vum Proxy getrennt.
D'Verbreedung vun engem benotzergebonnenen Profil hieft d'Ofhängegkeet vum ale Bootstrap komplett op, well et keen Austausch vun engem temporäre Profil gëtt dee kéint feelen. Et muss fir den intended Benotzer ausgestallt ginn, ni vun engem Administrateur kopéiert, an et ännert wat de Client autoriséiert ass, behandelt et also als Politikentscheedung an net als Ëmwee.
Da fixéiert de Verëffentlechungslayout sou datt all erfuerderleche Wee existéiert: de Webwee fir Downloads a Portalnotzung, an den nativen VPN-Wee op deem Transport deen d'Profiler erwaarden. Halt d'Aarbecht vum Proxy op enger Schicht. En funktionéierende benotzergebonnenen Tunnel beweist datt dee Wee funktionéiert; et beweist net datt all Proxy-Arrangement all Generatioun ënnerstëtzt, an e ale Bootstrap-Feeler verurteelt den neie Format net.
- Bestëmmt d'Generatioun vum Artefakt ier Dir de Proxy beréiert.
- Bestëmmt ob de Feeler virum Tunnel oder dodran geschitt.
- Bestätegt wat de Frontend terminéiert: HTTP, TCP-Stroum oder UDP.
- Testt en nei ausgestallte Profil géint den nativen Endpunkt mat onverännerter Politik.