Configuraties voor de ondersteuning van Kerberos armoring¶
Waarschuwing!
Om Kerberos armoring te gebruiken, moeten de beheerdersaccounts in de groep Protected Users worden geplaatst.
Daardoor wordt het authenticatieprotocol Kerberos gebruikt in plaats van NTLM. De Edge Gateway moet eerst worden geconfigureerd voor de ondersteuning van Kerberos-authenticatie.
Kerberos armoring biedt een aanvullende versleuteling van de eerste uitwisselingen tussen de client en de KDC (Kerberos Domain Controller), op basis van informatie die aan een computeraccount is gekoppeld.
CyberElements Bastion werkt bij voorkeur op Debian-machines die niet met een AD-domein zijn verbonden, wat betekent dat het geen enkele informatie over een computeraccount in de AD heeft.
De configuratie voor de ondersteuning van Kerberos armoring bestaat uit twee stappen:
- Het aanmaken van een computeraccount voor de service in de AD
- Het configureren van Kerberos armoring op de Edge Gateway op basis van het eerder aangemaakte account
Een computeraccount voor de service aanmaken¶
Informatie
Op deze pagina wordt als voorbeeld een serviceaccount met de naam svc_cyberelements gebruikt. Pas de volgende opdrachten aan de naam van uw serviceaccount aan.
Waarschuwing!
Als u PAW-werkstations wilt gebruiken, plaats dit serviceaccount dan in hetzelfde silo als de PAW-doelwerkstations.
Maak vanaf de domeincontroller eerst een computeraccount aan met een wachtwoord dat wordt gebruikt om de Kerberos-tickets te genereren.
Om dit account aan te maken, kunt u vanaf een domeincontroller de volgende Powershell-opdracht gebruiken (pas de naam van het serviceaccount, in het voorbeeld svc_cyberelements, en de gewenste OU, in het voorbeeld OU=Service_accounts,DC=domain,DC=local, aan om het serviceaccount aan te maken):
1 | |
Gebruik de volgende opdracht om te controleren of het computeraccount is aangemaakt (vervang svc_cyberelements door de naam van het eerder aangemaakte account):
1 | |
Gebruik daarna het Windows-hulpmiddel ktpass om een keytab-bestand te exporteren dat de versleutelingssleutels bevat waarmee de gateway het TGT kan ophalen.
Voorbeeld
Voorbeeld van het aanmaken van een bestand svc_cyberelements.keytab met het computeraccount:
1 | |
$ aan het einde van de accountnamen op te nemen en de domeinnaam in hoofdletters te schrijven (verplicht).
Accepteer de eventuele bevestigingsverzoeken door y in te voeren.
Stel daarna de waarde van het attribuut UserPrincipalName opnieuw in met de volgende PowerShell-opdracht:
1 | |
Kerberos armoring op de Edge Gateway configureren¶
Haal het eerder gegenereerde bestand keytab op en kopieer het naar de Edge Gateway-server.
In een context waarin meerdere bestanden keytab zijn gegenereerd en op dezelfde Edge Gateway moeten worden gebruikt, voegt u de bestanden keytab samen in één enkel bestand.
Waarschuwing
Het bestand keytab bevat versleutelingssleutels. Als een aanvaller het in handen krijgt, kan hij zich voordoen als het bijbehorende computeraccount en zo de veiligheid van de infrastructuur verminderen.
Dit bestand mag daarom nergens anders worden bewaard dan op de Edge Gateway.
Plaats het bestand in de map /etc/ipdiva/cleanroom/.
Wijzig de eigenaren van het bestand keytab naar ipdivacareuser voor de gebruiker en carerecord voor de groep, en wijzig daarna de rechten van het bestand (pas de naam van het bestand keytab aan uw eigen bestand aan):
1 2 | |
Wijzig het configuratiebestand /etc/ipdiva/cleanroom/xrdprecord.ini van de Edge Gateway om via de parameter keytab= het pad naar het eerder voorbereide bestand keytab op te geven.
Voorbeeld
2 | |
In dit stadium zou de verbinding met geprivilegieerde RDP-applicaties in de modus zonder agent (HTML5 of niet) moeten werken met gebruikersaccounts die tot Protected Users behoren en die daardoor een sterke Kerberos-authenticatie vereisen. De configuratie van de RDP-applicatie moet aan bepaalde voorwaarden voldoen.
De Kerberos-configuratie testen¶
Foutopsporing
De volgende opdrachten kinit kunnen meer logs opleveren nadat de volgende opdracht is uitgevoerd (geldig totdat de SSH- of consolesessie wordt verbroken):
1 | |
Begin met het ophalen van een Kerberos-ticket met een opdracht die vergelijkbaar is met de volgende:
1 | |
Vergeet niet de locatie van het keytab-bestand, de naam van het aangemaakte serviceaccount en het bijbehorende domein te vervangen.
Als het ophalen van het Kerberos-ticket is gelukt, zou de volgende opdracht het bestaan van een ticket voor het serviceaccount moeten aangeven:
1 | |
Als het ophalen lukt, moet worden geprobeerd een ticket voor een gebruiker op te halen met een opdracht die vergelijkbaar is met de volgende:
1 | |
Vervang user@DOMAIN.LOCAL door een gebruiker die zich waarschijnlijk via RDP en Kerberos armoring verbindt. Let erop dat het wachtwoord van deze gebruiker wordt gevraagd.
Als het ophalen van het ticket lukt, geeft de volgende opdracht het weer:
1 | |
Als de fout KDC policy rejects request while getting initial credentials wordt weergegeven, betekent dit dat de KDC de ticketaanvraag heeft geweigerd. Mogelijke oorzaken:
kinitkon het ticket/tmp/test_kerberosniet gebruiken (alskinithet niet kan gebruiken, gaat het zonder foutmelding verder met een eenvoudige ticketaanvraag)- Het serviceaccount is niet aanwezig in het silo van de geteste gebruiker. Dat komt voor wanneer de AD in silo's is opgedeeld, en vereist dat het computeraccount voor de service in het juiste silo wordt geplaatst.
Aanvullende informatie is te vinden in de gebeurtenislogs Security van de gebruikte domeincontroller (KDC).
Na de tests wordt aanbevolen de gegenereerde tickets te verwijderen:
1 2 | |
Meerdere keytab-bestanden in één enkel bestand samenvoegen¶
Als de architectuur CyberElements Bastion berust op één enkele Edge Gateway die toegang zal geven aan meerdere derde partijen, moeten alle keytab-bestanden die voor de verschillende serviceaccounts zijn gegenereerd in één enkel keytab-bestand worden samengevoegd.
Opmerking
In deze sectie wordt uitgegaan van de volgende keytab-bestanden: /root/t0.keytab, /root/t1.keytab en /root/t2.keytab.
Deze bestanden moeten naar de Edge Gateway zijn verzonden.
Om de bestanden keytab samen te voegen, meldt u zich als root aan bij de Edge Gateway en gebruikt u daarna de volgende opdrachten:
1 2 3 4 5 | |
Met de opdrachten rkt kunt u zoveel bestanden keytab laden als nodig is, en de opdracht wkt genereert een nieuw bestand keytab.
Pas de paden van de bestanden aan die van uzelf aan.
Druk op de toets q om het hulpmiddel ktutil te verlaten.
Haal het bestand unified.keytab op en volg de sectie Kerberos armoring op de Edge Gateway configureren.