To design kan kjøre TLS på port 443 og mene helt forskjellige ting med det. En innpakning beskytter én konfigurert forbindelse mellom en lokal port og en ekstern backend. Et nettverkstilgangsdesign bærer utvalgt trafikk og endrer hva klienten kan nå. Gå gjennom de fire kontrollene nedenfor i rekkefølge, og du vet hvilken av dem du ser på, noe som vanligvis er nok til å vite hvilket lag som sviktet.

Start med forbindelsen du faktisk konfigurerte

Skriv ned frontenden og backenden før du sammenligner produkter. En innpakning lytter på en lokal adresse og videresender til en ekstern, eller starter et program på den eksterne siden, og det paret er hele kontrakten. Klientens andre programmer vet ingenting om den med mindre du peker dem dit. Det er ikke en mangel ved verktøyet, det er det verktøyet er til.

Et nettverksdesigns kontrakt er annerledes, og den uttrykkes i ruter og policy, ikke i et portpar.

Legg merke til hvilken av de to beskrivelsene som passer diagrammet ditt. Hvis svaret er én portmapping med et sertifikat i midten, har du en innpakning selv når produktnavnet sier VPN. Hvis svaret er et tunellgrensesnitt og ruteendringer, har du et nettverksdesign selv når det kjører på 443.

Kontroller hva innpakningen kobler til

Les lytte- og tilkoblingsinnstillingene og følg dem til den virkelige backenden. En innpakning som videresender til en databaseport åpner ikke en webapplikasjon, og en innpakning som kjører et program starter det programmet i stedet for å publisere alt annet verten kjører. Backenden er det eneste innpakningen vet om.

Avgjør deretter om den videresendte strømmen er klartekst når TLS slutter. En innpakket forbindelse beskytter segmentet mellom de to innpakningene, og det som skjer etter den eksterne innpakningen er et eget spørsmål. Derfor er det noen ganger fornuftig å pakke inn noe som allerede har sin egen beskyttelse, og noen ganger bare ekstra bevegelige deler. Undersøk neste hopp i stedet for å anta ett av de to svarene.

openssl s_client -connect wrapper.lab.example:443 -servername wrapper.lab.example -verify_return_error
sudo ss -ltnp | grep 443

Den første kommandoen viser sertifikatet en klient faktisk tilbys, og den andre viser hva som lytter på verten. Sammenlign det sertifikatnavnet med det du forventet før du leser noe annet.

Kontroller hvilken trafikk designet bærer

Nettverkstilgangsdesign bærer utvalgt trafikk og integreres med klientens ruting og tilgangspolicy. Adgang er ikke autorisasjon, så en autentisert forbindelse trenger fortsatt en avgjørelse om hvilke ressurser den kan nå. En klientløs portal er en tredje modell som proxier støttede operasjoner uten noen gang å opptre som et tun-grensesnitt.

Produktets etikett forteller deg ikke hvilken av modellene du kjøpte, og portnummeret forteller enda mindre.

Lagdeling er mulig og bør ikke forvirre sammenligningen. En tunnelprotokoll kan selv pakkes inn i TLS i et støttet TCP-oppsett, noe som legger et lag rundt tunnelen uten å gjøre innpakningen til tunnelen. Det er et designvalg med egen ytelse og feilatferd, og det fortjener en linje i diagrammet. Noter det, og sammenlign deretter de underliggende modellene i stedet for den ytre innpakningen.

Kontroller den sviktende grensen, ikke etiketten

Skriv ned fakta for ett mislykket forsøk: frontendadresse, lytter, identiteten klienten verifiserte, backend-målet og operasjonen som ble bedt om. Et vellykket håndtrykk beviser at den ytre TLS-en ble fullført og sier ingenting om backenden. En avvisning fra backenden er en annen hendelse enn en identitetsfeil i frontenden, og ingen av dem blir bedre av å fjerne -verify_return_error fra klienten. Sammenlign likt med likt, fordi en suksess gjennom et annet vertsnavn eller en annen port ikke viser at betingelsene var de samme.

Port 443 er en konvensjon som slipper TLS gjennom mellomledd. Den får ikke vilkårlig trafikk til å ligne en webforespørsel for en policy-enhet.

Avslutt med én setning som navngir endepunktparet, hva som bæres, hvilke applikasjoner som bruker det og hvilken tillatelse destinasjonen håndhever. Et design som ikke kan fylle de fire hullene, er ikke ferdig, uansett hva etiketten hevder. Den setningen er også den raskeste måten å forklare designet til den som eier brannmuren.

Relaterte artikler