SSL-VPN of TLS-wrapper? Vergelijk de grens die faalde
Twee ontwerpen kunnen TLS op 443 zetten en verschillende dingen betekenen. Vier controles: het geconfigureerde pad, de backend, het gedragen verkeer en de falende grens.
Twee ontwerpen kunnen TLS op poort 443 draaien en daarmee heel verschillende dingen bedoelen. Een wrapper beschermt één geconfigureerde verbinding tussen een lokale poort en een externe backend. Een netwerktoegangsontwerp draagt geselecteerd verkeer en verandert wat de client kan bereiken. Werk de vier controles hieronder in volgorde af en je weet welke van de twee je ziet, wat meestal genoeg is om te weten welke laag faalde.
Begin met de verbinding die je werkelijk hebt geconfigureerd
Schrijf de front-end en de back-end op voordat je producten vergelijkt. Een wrapper luistert op een lokaal adres en stuurt door naar een extern adres, of start een programma aan de externe kant, en dat paar is het hele contract. De andere toepassingen van de client weten er niets van tenzij je ze erop wijst. Dat is geen tekortkoming van het gereedschap, daar is het gereedschap voor.
Het contract van een netwerkontwerp is anders, en het wordt uitgedrukt in routes en beleid, niet in een poortenpaar.
Let op welke van de twee beschrijvingen bij je diagram past. Is het antwoord één poortmapping met een certificaat in het midden, dan heb je een wrapper, zelfs als de productnaam VPN zegt. Is het antwoord een tunnelinterface en routewijzigingen, dan heb je een netwerkontwerp, zelfs als het op 443 draait.
Controleer waar de wrapper verbinding mee maakt
Lees de luister- en verbindingsinstellingen en volg ze naar de echte backend. Een wrapper die naar een databasepoort doorstuurt, opent geen webapplicatie, en een wrapper die een programma uitvoert, start dat programma in plaats van alles te publiceren wat de host nog meer draait. De backend is het enige dat de wrapper kent.
Beslis daarna of de doorgestuurde stroom platte tekst is zodra TLS eindigt. Een omhulde verbinding beschermt het segment tussen de twee wrappers, en wat er na de verre wrapper gebeurt, is een aparte vraag. Daarom is het omhullen van iets dat al zijn eigen bescherming heeft soms verstandig en soms alleen extra bewegende delen. Onderzoek de volgende hop in plaats van een van beide antwoorden aan te nemen.
openssl s_client -connect wrapper.lab.example:443 -servername wrapper.lab.example -verify_return_error
sudo ss -ltnp | grep 443De eerste opdracht toont het certificaat dat een client werkelijk wordt aangeboden, en de tweede toont wat er op de host luistert. Vergelijk die certificaatnaam met de naam die je verwachtte voordat je iets anders leest.
Controleer welk verkeer het ontwerp draagt
Netwerktoegangsontwerpen dragen geselecteerd verkeer en integreren met de routering en het toegangsbeleid van de client. Toelating is geen autorisatie, dus een geauthenticeerde verbinding heeft nog steeds een beslissing nodig over welke bronnen zij mag bereiken. Een cliëntloos portaal is een derde model dat ondersteunde bewerkingen proxyt zonder ooit als tun-interface te verschijnen.
Het productlabel vertelt je niet welk van die modellen je hebt gekocht, en het poortnummer vertelt nog minder.
Gelaagdheid is mogelijk en mag de vergelijking niet verwarren. Een tunnelprotocol kan zelf in TLS worden gehuld in een ondersteunde TCP-opstelling, wat een laag rond de tunnel toevoegt zonder de wrapper tot de tunnel te maken. Dat is een ontwerpkeuze met eigen prestatie- en foutgedrag, en zij verdient een regel in het diagram. Leg het vast en vergelijk daarna de onderliggende modellen in plaats van de buitenste wrapper.
Controleer de falende grens, niet het label
Schrijf de feiten op voor één mislukte poging: front-endadres, listener, de identiteit die de client heeft geverifieerd, het backend-doel en de gevraagde bewerking. Een geslaagde handshake bewijst dat de buitenste TLS is voltooid en zegt niets over de backend. Een afwijzing door de backend is een andere gebeurtenis dan een identiteitsfout aan de front-end, en geen van beide wordt beter door -verify_return_error bij de client weg te laten. Vergelijk gelijksoortig met gelijksoortig, want een succes via een andere hostnaam of poort toont niet aan dat de omstandigheden dezelfde waren.
Poort 443 is een conventie die TLS door tussenkasten laat. Zij maakt willekeurig verkeer niet tot een webverzoek voor een beleidsapparaat.
Sluit af met één zin die het eindpuntpaar noemt, wat er wordt gedragen, welke toepassingen het gebruiken en welke toestemming de bestemming afdwingt. Een ontwerp dat die vier gaten niet kan vullen, is niet af, wat het label ook beweert. Die zin is ook de snelste manier om het ontwerp uit te leggen aan wie de firewall bezit.