Ga naar inhoud

Groep Protected Users, Kerberos-authenticatie, AD-segmentering en PAW-werkstation

Het beveiligen van de Active Directory-directory's is een belangrijke uitdaging voor de veiligheid van de infrastructuur.

De ANSSI (het Franse nationale agentschap voor cyberveiligheid) legt bijzondere nadruk op het belang van compartimentering voor deze veiligheid en op het invoeren van een segmentering van de servers met Kerberos-authenticatie. Dit wordt vermeld in haar aanbevelingen voor het veilige beheer van op AD gebaseerde IS.

Onze oplossingen CyberElements bieden grote flexibiliteit bij het invoeren van deze veiligheid, die kan worden opgedeeld in vier verschillende integratieniveaus die geleidelijk kunnen worden toegepast:

RDP-applicaties configureren voor de ondersteuning van Kerberos

Waarschuwing!

Om een geprivilegieerde RDP-applicatie of een geprivilegieerde HTML5 RDP-applicatie voor de ondersteuning van Kerberos te configureren, moet u eerst configuratie 1 uitvoeren voor de Edge Gateways die voor de RDP-verbinding met Kerberos worden gebruikt.

Om een geprivilegieerde RDP- of HTML5 RDP-applicatie met Kerberos verbinding te laten maken met een RDP-server, moet aan vier configuratievoorwaarden zijn voldaan:

  1. De SSO-parameter mag niet op Disabled staan, hij moet dus Enabled, Fixed of Request zijn
  2. De modus zonder agent moet zijn ingeschakeld
  3. De ingevoerde servernaam moet een FQDN zijn (het invoeren van het IP-adres van de server laat de authenticatie mislukken).
  4. Kerberos mag niet zijn uitgeschakeld in de geavanceerde instellingen van de RDP- of HTML5 RDP-applicatie.
Example

Om een geprivilegieerde RDP-applicatie zo te configureren dat deze via Kerberos verbinding maakt met de RDP-server my-rds-server, moet u:

  • Het SSO-niveau op een andere waarde dan Disabled zetten, hier op Enabled (1), daarna de modus zonder agent inschakelen (2) en tot slot de FQDN van de RDP-server invoeren (3).
  • Ervoor zorgen dat Kerberos niet is uitgeschakeld (4)
Stroomdiagram
flowchart LR 
    subgraph WAN 
        USER(Werkstation van de gebruiker)
    end 
    subgraph Cloud of DMZ
        MEDIA(Mediation Controller) 
    end 
    subgraph LAN 
        GW(Edge Gateway) 
        KDC(Kerberos Domain Controller) 
        RDP(RDP-server)
    end

    USER --- |1| MEDIA --> |1| GW
    GW -.- |2| MEDIA -.-> |2| USER
    GW --> |3| KDC
    KDC -.-> |4| GW
    GW --> |5| KDC
    KDC -.-> |6| GW
    GW --> |7| RDP
    RDP -.-> |8| GW
Hold "Ctrl" to enable pan & zoom
  1. De gebruiker opent een geprivilegieerde RDP- of HTML5 RDP-applicatie met ondersteuning van de Kerberos-authenticatie.
  2. De gebruiker wordt in de modus zonder agent met de Edge Gateway verbonden
  3. De Edge Gateway vraagt bij de Kerberos Domain Controller (KDC) een TGT-token aan.
  4. De KDC geeft een versleuteld en ondertekend TGT terug
  5. De Edge Gateway vraagt een serviceticket aan dat het vorige TGT bevat
  6. De KDC geeft het met de servicesleutel versleutelde serviceticket terug
  7. De Edge Gateway stuurt een toegangsverzoek naar de RDP-server, met inbegrip van het serviceticket.
  8. De RDP-server keurt de toegang tot de dienst goed en de RDP-verbinding wordt opgezet.

RDP-applicaties configureren voor de ondersteuning van Kerberos armoring

Waarschuwing!

Om een geprivilegieerde RDP- of HTML5 RDP-applicatie met succes te configureren voor de ondersteuning van Kerberos armoring, moet u eerst de configuraties 1 en 2 uitvoeren voor de Edge Gateways die voor de RDP-verbinding met Kerberos armoring worden gebruikt.

Om een geprivilegieerde RDP- of HTML5 RDP-applicatie met Kerberos armoring verbinding te laten maken met een RDP-server, moet aan vijf configuratievoorwaarden zijn voldaan:

  1. De SSO-parameter mag niet op Disabled staan, hij moet dus Enabled, Fixed of Request zijn
  2. De modus zonder agent moet zijn ingeschakeld
  3. De ingevoerde servernaam moet een FQDN zijn (het invoeren van het IP-adres van de server laat de authenticatie mislukken).
  4. Kerberos mag niet zijn uitgeschakeld in de geavanceerde instellingen van de RDP- of HTML5 RDP-applicatie.
  5. De naam opgeven van het servicecomputeraccount dat voor Kerberos armoring wordt gebruikt, met een $ aan het einde
Example

Om een geprivilegieerde RDP-applicatie zo te configureren dat deze in de modus Kerberos armoring verbinding maakt met de RDP-server my-rds-server met behulp van het computeraccount svc_cyberelements, moet u:

  • Het SSO-niveau op een andere waarde dan Disabled zetten, hier op Enabled (1), daarna de modus zonder agent inschakelen (2) en tot slot de FQDN van de RDP-server invoeren (3).
  • Ervoor zorgen dat Kerberos niet is uitgeschakeld (4) en dat de naam van het servicecomputeraccount is opgegeven, waarbij u het teken $ niet mag vergeten (5).
Stroomdiagram
flowchart LR 
    subgraph WAN 
        USER(Werkstation van de gebruiker)
    end 
    subgraph Cloud of DMZ
        MEDIA(Mediation Controller) 
    end 
    subgraph LAN 
        GW(Edge Gateway) 
        KDC(Kerberos Domain Controller) 
        RDP(RDP-server)
    end

    USER --- |1| MEDIA --> |1| GW
    GW -.- |2| MEDIA -.-> |2| USER
    GW --> |3| KDC
    KDC -.-> |4| GW
    GW --> |5| KDC
    KDC -.-> |6| GW
    GW --> |7| RDP
    RDP -.-> |8| GW
Hold "Ctrl" to enable pan & zoom
  1. De gebruiker opent een geprivilegieerde RDP- of HTML5 RDP-applicatie met ondersteuning van de Kerberos-authenticatie.
  2. De gebruiker wordt in de modus zonder agent met de Edge Gateway verbonden
  3. De Edge Gateway vraagt bij de Kerberos Domain Controller (KDC) een TGT-token aan met behulp van de gegevens van het servicecomputeraccount
  4. De KDC geeft een versleuteld en ondertekend TGT terug
  5. De Edge Gateway vraagt een serviceticket aan dat het vorige TGT bevat
  6. De KDC geeft het met de servicesleutel versleutelde serviceticket terug
  7. De Edge Gateway stuurt een toegangsverzoek naar de RDP-server, met inbegrip van het serviceticket.
  8. De RDP-server keurt de toegang tot de dienst goed en de RDP-verbinding wordt opgezet.

Bijzonderheden van de architectuur in een gesegmenteerde AD-omgeving

Waarschuwing!

In een gesegmenteerde Active Directory-omgeving is Kerberos armoring normaal gesproken geconfigureerd voor de beheerdersaccounts. Daarom moeten de configuraties 1 en 2 worden uitgevoerd voor de Edge Gateways die voor de verbinding met de RDP-servers worden gebruikt.

Wanneer CyberElements in een gesegmenteerde AD-omgeving wordt gebruikt, moet het voor Kerberos armoring gebruikte servicecomputeraccount aan een silo worden toegewezen.
Dat betekent dat als er toegang nodig is tot RDP-machines die tot verschillende tiers behoren, er evenveel servicecomputeraccounts moeten worden aangemaakt, geplaatst in de verschillende doel-tiers.

Ook de productarchitectuur kan hierdoor worden beïnvloed.
Deze wijziging betreft vooral het aantal geïmplementeerde Edge Gateways: het is aan te raden er ten minste één te hebben die is voorbehouden aan de toegang van een bepaalde tier. Als de context de implementatie van zoveel Edge Gateways echter niet toelaat, kan er ook een architectuur met één enkele Edge Gateway worden gebruikt:

flowchart LR
    subgraph WAN
        USER(Werkstation van de gebruiker)
    end
    subgraph Cloud of DMZ
        MED(Mediation Controller)
    end
    subgraph LAN
        subgraph T2
            GW-T2(Edge Gateway T2)
            RDP-T2(RDP-server T2)
        end
        subgraph T1
            GW-T1(Edge Gateway T1)
            RDP-T1(RDP-server T1)
        end
        subgraph T0
            GW-T0(Edge Gateway T0)
            KDC(Kerberos Domain Controller)
            RDP-T0(RDP-server T0)
        end
    end

    USER ==TLS/HTTPS==> MED

    MED ~~~ GW-T0
    MED ~~~ GW-T1
    MED ~~~ GW-T2

    GW-T0 ==TLS==> MED
    GW-T0 ~~~ MED
    GW-T0 ~~~ MED
    GW-T0 ~~~ MED
    GW-T0 --Kerberos/LDAPS--> KDC
    GW-T0 -..-> |RDP| RDP-T0

    GW-T1 ==TLS==> MED
    GW-T1 ~~~ MED
    GW-T1 ~~~ MED
    GW-T1 --Kerberos/LDAPS--> KDC
    GW-T1 -..-> |RDP| RDP-T1

    GW-T2 ==TLS==> MED
    GW-T2 ~~~ MED
    GW-T2 --Kerberos/LDAPS--> KDC
    GW-T2 -..-> |RDP| RDP-T2
Hold "Ctrl" to enable pan & zoom

Bij deze architectuur is de configuratie van de RDP-applicaties dezelfde als die voor de ondersteuning van Kerberos armoring.

flowchart LR
    subgraph WAN
        USER(Werkstation van de gebruiker)
    end
    subgraph Cloud of DMZ
        MED(Mediation Controller)
    end
    subgraph LAN
        GW(Edge Gateway)
        subgraph T2
            RDP-T2(RDP-server T2)
        end
        subgraph T1
            RDP-T1(RDP-server T1)
        end
        subgraph T0
            KDC(Kerberos Domain Controller)
            RDP-T0(RDP-server T0)
        end
    end

    USER ==TLS/HTTPS==> MED

    MED ~~~ GW

    GW ==TLS==> MED
    GW ~~~ MED
    GW --Kerberos/LDAPS--> KDC
    GW-.-> |RDP| RDP-T0
    GW -.-> |RDP| RDP-T1
    GW -.-> |RDP| RDP-T2
Hold "Ctrl" to enable pan & zoom

Bij deze architectuur is de configuratie van de RDP-applicaties dezelfde als die voor de ondersteuning van Kerberos armoring.
U moet echter ook voorzien in het toepassen van een bestand keytab met meerdere serviceaccounts op de Edge Gateway van de verbinding.

Bijzonderheden van de verbinding met een PAW-werkstation

Een PAW (Privileged Access Workstation) is een werkstation die is voorbehouden aan de beheertaken van een bepaalde tier.
Vanwege het kritieke karakter van deze werkstation worden er zeer vaak verscherpte veiligheidsinstellingen toegepast. Tot deze verscherpingen behoort het principe om geen diensten op het netwerk beschikbaar te stellen, waardoor is gewaarborgd dat er geen achterdeuren en geen diensten met veiligheidslekken kunnen worden misbruikt.

Dit principe maakt toegang op afstand tot het PAW-werkstation dus theoretisch onmogelijk. CyberElements maakt het echter mogelijk een verbinding met het PAW-werkstation op te zetten zonder dat er diensten op het lokale netwerk luisteren, en dat dankzij:

  • De activering van de Remote Desktop-services
  • De configuratie van de lokale firewall om de toegang tot de Remote Desktop-service te verbieden voor alle IP-adressen behalve die van het PAW-werkstation zelf, of localhost
  • De installatie van een ingebedde Edge Gateway die de lokale toegang tot de Remote Desktop-service van het PAW-werkstation mogelijk maakt
flowchart LR
    subgraph WAN
        USER(Werkstation van de gebruiker)
    end
    subgraph Cloud of DMZ
        MED(Mediation Controller)
    end
    subgraph LAN
        subgraph T1
            GW(Edge Gateway T1)
            subgraph PAW_T1 [PAW T1]
                RDP{{RDP-server}}
                GW-WIN{{Embeded Edge Gateway}}
            end
        end
        subgraph T0
            KDC(Kerberos Domain Controller)
        end
    end

    USER ==TLS/HTTPS==> MED

    MED ~~~ GW & GW-WIN
    GW & GW-WIN ==TLS==> MED
    GW & GW-WIN ~~~ MED

    GW & PAW_T1 --> |Kerberos/LDAPS| KDC

    GW-WIN -.-> |RDP| RDP

    GW --x |Geen verbinding beschikbaar| PAW_T1
Hold "Ctrl" to enable pan & zoom
flowchart LR
    subgraph WAN
        USER(Werkstation van de gebruiker)
    end
    subgraph Cloud of DMZ
        MED(Mediation Controller)
    end
    subgraph LAN
        subgraph T1
            GW(Edge Gateway T1)
            subgraph PAW_T1 [PAW T1]
                RDP{{RDP-server}}
                GW-WIN{{Embeded Edge Gateway}}
            end
        end
        subgraph T0
            KDC(Kerberos Domain Controller)
        end
    end

    USER --- |1| MED --> |1| GW
    GW -.- |2| MED -.-> |2| USER
    GW --> |3| KDC
    KDC -.-> |4| GW
    GW --> |5| KDC
    KDC -.-> |6| GW
    MED --> |7| GW & GW-WIN
    GW --- |8| MED --- |8| GW-WIN --> |8| RDP
    RDP -.- |9| GW-WIN -.- |9| MED -.-> |9| GW
Hold "Ctrl" to enable pan & zoom
  1. De gebruiker opent naar een PAW-werkstation een geprivilegieerde RDP- of HTML5 RDP-applicatie met ondersteuning van de Kerberos-authenticatie
  2. De gebruiker wordt in de modus zonder agent met de Edge Gateway verbonden
  3. De Edge Gateway vraagt bij de Kerberos Domain Controller (KDC) een TGT-token aan met behulp van de gegevens van het servicecomputeraccount
  4. De KDC geeft een versleuteld en ondertekend TGT terug
  5. De Edge Gateway vraagt een serviceticket aan dat het vorige TGT bevat
  6. De KDC geeft het met de servicesleutel versleutelde serviceticket terug
  7. De Mediation Controller meldt aan de Edge Gateway en aan de ingebedde Edge Gateway dat er tussen hen een tunnel is geopend, die via de Mediation Controller loopt
  8. De Edge Gateway stuurt via de Mediation Controller en de ingebedde Edge Gateway een toegangsverzoek naar de RDP-server, met inbegrip van het serviceticket
  9. De RDP-server keurt de toegang tot de dienst goed en de RDP-verbinding wordt opgezet

Voorwaarden op het PAW-werkstation

De specifieke voorwaarden waaraan op het PAW-werkstation (Privileged Access Workstation) moet worden voldaan voor de verbinding met CyberElements, kunnen als volgt worden samengevat:

  1. De Remote Desktop-service inschakelen
  2. De lokale firewall wijzigen zodat de toegang tot de Remote Desktop-service wordt geweigerd voor alle machines behalve het PAW-werkstation zelf
  3. Het gedrag van Kerberos armoring wijzigen zodat er altijd claims worden verstrekt
  4. Een Windows Edge Gateway in ingebedde modus installeren

De Remote Desktop-service inschakelen

De Remote Desktop-service kan handmatig worden ingeschakeld zoals beschreven in de documentatie van Microsoft Enable Remote Desktop on your PC.
Het is echter ook mogelijk de dienst via een GPO in te schakelen:

  • Pad naar de GPO-instelling: Computer Configuration > Policies > Administrative Templates > Windows Components > Remote Desktop Services > Remote Desktop Session Host > Connections
  • Instelling: Allow users to connect remotely by using Remote Desktop Services
  • Waarde: Enabled

De firewallregels wijzigen

Om veiligheidsredenen is het belangrijk de toegang op het niveau van de firewall te beperken, om toegang van buitenaf op de RDP-poort te voorkomen.

Als RDP is ingeschakeld, stelt Windows standaard 2 firewallregels in die de toegang tot poort 3389 via UDP en TCP toestaan.
Deze twee regels moeten worden gewijzigd zodat alleen RDP-verbindingen vanaf het externe IP-adres 127.0.0.1 worden toegestaan.

Als deze regels niet bestaan, moeten ze handmatig op de server of via een GPO worden aangemaakt.

Het gedrag van Kerberos armoring wijzigen

Ook het gedrag van Kerberos moet worden gewijzigd.

Daarvoor kunt u de volgende GPO instellen:

  • Pad naar de GPO-instelling: Computer Configuration > Policies > Administrative Templates > System > KDC
  • Instelling: KDC support for claims, compound authentication and Kerberos armoring
  • Waarde: Enabled, Always provide claims

Deze wijziging heeft geen gevolgen voor de veiligheid van de AD-segmentering en van de versterkte Kerberos-implementatie.

Een Windows Edge Gateway in ingebedde modus installeren

Voorwaarden

Installeer, voordat u verdergaat, een Windows Edge Gateway op het PAW-werkstation en verbind deze met de Mediation Controller: Een Windows Edge Gateway installeren

Na de installatie van de Windows Edge Gateway moet deze in de ingebedde modus worden gezet.

Open de webinterface van uw CyberElements-tenant met de URI /console.

Voorbeelden

Bij een tenant met de naam my-tenant is het platform bereikbaar op https://my-tenant.cyberelements.io.
Het aanmeldformulier van de beheerconsole is ook direct bereikbaar op https://my-tenant.cyberelements.io/console.

Zorg ervoor dat u na het verbinden de declaratie van de Windows Edge Gateway uit de module Gateways Management verwijdert.

De Windows Edge Gateway is nu gereed om als ingebedde Edge Gateway te worden gebruikt.

Bij het openen van een sessie start de monitor van de Windows Edge Gateway automatisch (zichtbaar met het pictogram type:inline in de taakbalk). Aangezien deze automatische start voor PAW-werkstations niet nodig is, moet deze worden uitgeschakeld:

  1. Open de registersleuteleditor regedit.exe als beheerder
  2. Ga naar de registerhive HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run
  3. Verwijder de sleutel IPdivaGateway Monitor
  4. Start het PAW-werkstation opnieuw op

RDP-applicaties configureren voor de verbinding met een PAW-werkstation

Waarschuwing!

Om een geprivilegieerde RDP- of HTML5 RDP-applicatie voor de verbinding met een PAW-werkstation te configureren, moet u eerst de configuraties 1 tot 3 uitvoeren voor de Edge Gateways die voor de verbinding met de PAW-werkstations worden gebruikt.

Om een geprivilegieerde RDP- of HTML5 RDP-applicatie verbinding te laten maken met een PAW-werkstation, moet aan zes configuratievoorwaarden zijn voldaan:

  1. De SSO-parameter mag niet op Disabled staan, hij moet dus Enabled, Fixed of Request zijn
  2. De modus zonder agent moet zijn ingeschakeld
  3. De ingevoerde servernaam moet een FQDN zijn (het invoeren van het IP-adres van de server laat de authenticatie mislukken).
  4. De routering via een ingebedde Edge Gateway configureren
  5. Kerberos mag niet zijn uitgeschakeld in de geavanceerde instellingen van de RDP- of HTML5 RDP-applicatie.
  6. De naam opgeven van het servicecomputeraccount dat voor Kerberos armoring wordt gebruikt, met een $ aan het einde

Voorwaarde 4 vloeit voort uit de configuratie van de PAW-werkstations, waarop geen enkele dienst op het lokale netwerk mag luisteren. Wanneer er een Edge Gateway in de vorm van een Windows-programma wordt geïnstalleerd, kan deze alleen diensten bereiken die op localhost luisteren.

Example

Om een geprivilegieerde RDP-applicatie zo te configureren dat deze in de modus Kerberos armoring verbinding maakt met de RDP-server my-rds-server met behulp van het computeraccount svc_cyberelements, moet u:

  • Het SSO-niveau op een andere waarde dan Disabled zetten, hier op Enabled (1), daarna de modus zonder agent inschakelen (2), de FQDN van de RDP-server invoeren (3) en tot slot de modus van de ingebedde Edge Gateway inschakelen en de naam opgeven van de Windows Edge Gateway die op het PAW-werkstation is geïnstalleerd (4).
  • Ervoor zorgen dat Kerberos niet is uitgeschakeld (5) en dat de naam van het servicecomputeraccount is opgegeven, waarbij u het teken $ niet mag vergeten (6).

Foutopsporing bij het openen van RDP-applicaties met Kerberos-authenticatie

Voer, om een eerste analyse uit te voeren of de gegevens op te halen die Systancia nodig heeft voor een uitgebreide analyse van mislukte Kerberos-authenticaties, de volgende acties uit:

  1. Schakel de debuglogs in: zet daarvoor de parameter debug onder de tag [Kerberos] op true in het bestand /etc/ipdiva/cleanroom/xrdprecord.ini van de Edge Gateway-server die voor de verbinding wordt gebruikt. Deze actie kan met de volgende opdracht worden uitgevoerd:

    1
    sed -i "3s/false/true/" /etc/ipdiva/cleanroom/xrdprecord.ini
    
  2. Meld u aan bij het gebruikersportaal en start een geprivilegieerde applicatie, RDP of HTML5 RDP, in de modus zonder agent en geconfigureerd voor het gebruik van Kerberos. Noteer de volgende gegevens:

    • Tijdstip waarop de applicatie is geopend
    • De gebruikersnaam die voor de verbinding met de RDP-server is gebruikt
  3. Haal op de Edge Gateway die voor de vorige verbinding is gebruikt, de volgende bestanden op:

    • /var/log/syslog: dit bestand bevat met name de logs voor het starten van de sessie in de modus zonder agent.
    • /var/lib/ipdiva/carerecord/log/freerdpout-<USER>-<DATE>.txt: vervang <USER> door de gebruikersnaam en <DATE> door de datum en het tijdstip waarop de applicatie is geopend, opgehaald in de vorige stap. Dit bestand bevat de logs over het opzetten van de RDP-sessie, met inbegrip van de fase van de Kerberos-authenticatie.
  4. Schakel de debuglogs uit: zet daarvoor de parameter debug onder de tag [Kerberos] op false in het bestand /etc/ipdiva/cleanroom/xrdprecord.ini van de Edge Gateway-server die voor de verbinding wordt gebruikt. Deze actie kan met de volgende opdracht worden uitgevoerd:

    1
    sed -i "3s/true/false/" /etc/ipdiva/cleanroom/xrdprecord.ini