AWS Client VPN: servercertificaat versus de rol van het clientcertificaat
Het servercertificaat van het endpoint bewijst de dienst. Wederzijdse authenticatie voegt identiteiten per client en CA-vertrouwen toe zonder de serversleutel te delen.
Een Client VPN-endpoint heeft altijd een TLS-servercertificaat nodig. Dat is de identiteit die het beheerde endpoint toont wanneer een client verbinding maakt. Het is een ander object dan de certificaten die individuele clients tonen wanneer wederzijdse authenticatie wordt gebruikt. Die twee door elkaar halen is de meest voorkomende reden waarom een verder correcte ACM-configuratie toch bij de eerste verbinding mislukt.
Hier volgt een rondgang van de console naar buiten, in de volgorde die een verbinding werkelijk doorloopt.
Twee rollen, één endpoint
Het endpoint bezit een serveridentiteit en optioneel een manier om clientidentiteiten te verifiëren. Die worden afzonderlijk geconfigureerd. De ene bepaalt of de client de dienst kan vertrouwen; de andere bepaalt of de dienst de client accepteert.
| Material | Purpose | Where it lives |
|---|---|---|
| Server certificate and private key | The managed endpoint proves its TLS identity | ACM, in the endpoint's Region |
| Client certificate and matching key | An individual client proves its identity | On the device |
| CA trust material | The verifier checks the issuer chain | Selected for the client role |
Lees de tabel als drie onafhankelijke vereisten in plaats van als één certificaat. Het servercertificaat en de bijbehorende privésleutel blijven bij de dienst. Een clientcertificaat en de bijbehorende privésleutel staan op het apparaat. Het CA-materiaal is wat een verificateur gebruikt om de keten te controleren. Alleen de middelste rij hoort ooit op een laptop.
Wat het ACM-servercertificaat doet
Wanneer u het endpoint aanmaakt, moet het servercertificaat beschikbaar zijn in ACM in dezelfde regio als het endpoint. De console vraagt om een ARN, en die ARN moet daar worden herleid. ACM kan een certificaat bevatten dat u met domeinvalidatie hebt ingericht, of een dat u samen met de sleutel en keten hebt geïmporteerd. Beide werken in deze rol; ze verschillen in verlenging en in wie de privésleutel heeft.
Kies het inrichtingspad dat past bij wie het certificaat kan verlengen, niet datgene dat toevallig een geldig uitziend bestand opleverde.
Wat wederzijdse authenticatie toevoegt
Het kiezen van certificaatgebaseerde clientauthenticatie voegt een tweede vraag toe: welke clients mogen überhaupt verbinden. Elke client toont een eigen certificaat en bewijst het bezit van de bijbehorende privésleutel. Aparte identiteiten zijn wat selectieve intrekking later mogelijk maakt. Eén clientsleutel naar elk apparaat kopiëren gooit die eigenschap stilzwijgend weg, zelfs wanneer het servercertificaat perfect is verkregen.
De authenticatiemethode van het endpoint is een keuze, geen universele vereiste.
Active Directory en federatieve authenticatie beantwoorden dezelfde vraag met andere middelen. Een recept met wederzijdse certificaten is niet automatisch het aanmeldingsontwerp voor die implementaties, en de TLS-verificatie van de server blijft van kracht ongeacht hoe de gebruiker wordt toegelaten.
Waarom dezelfde CA-ARN geen sleuteldeling is
AWS documenteert dat wanneer de server- en clientcertificaten door dezelfde CA zijn uitgegeven, de ARN van het servercertificaat ook kan worden gebruikt voor de selectie van het clientcertificaat. Die zin gaat over welke keten het endpoint bij verificatie vertrouwt. Hij zegt clients niet dat ze de privésleutel van de server moeten gebruiken. Een laptop heeft nog steeds een eigen clientcertificaat en een eigen bijbehorende sleutel nodig.
Wanneer de CA van de client een andere uitgever is, is het gedocumenteerde pad die CA in ACM te importeren en voor de clientrol te selecteren.
Leid de storing terug naar een fase
Bepaal welke fase faalt voordat u iets vervangt. Als de client het endpoint weigert, zijn de ARN van de server of de keten de verdachte. Als het endpoint de client weigert, kijk dan naar het clientcertificaat, de uitgever en de gekozen authenticatiemethode. Als de tunnel opkomt en het verkeer nog steeds faalt, bent u voorbij de certificaten.
Vervang één object per keer, want beide uiteinden tegelijk wisselen reproduceert de dubbelzinnigheid waarmee u begon.
Controleer ook de ondersteunde sleutelalgoritmen en vereiste extensies van de dienst voor de specifieke rol. Een certificaat dat een openbare website voldoet, is geen bewijs dat aan alle identiteitseisen van Client VPN is voldaan.
Schrijf op welke ARN elk veld bevat, welke CA het clientcertificaat heeft uitgegeven en welke authenticatiemethode het endpoint feitelijk gebruikt. Drie regels vastlegging maken de volgende verlenging een taak in plaats van een onderzoek.