Kihagyás

A Kerberos armoring támogatásához szükséges konfigurációk

Figyelem!

A Kerberos armoring használatához a rendszergazdai fiókokat a Protected Users csoportba kell helyezni.
Ez kikényszeríti, hogy az NTLM helyett a Kerberos hitelesítési protokoll legyen használatban. Előzőleg konfigurálni kell az Edge Gateway komponenst a Kerberos-hitelesítés támogatására.

Az Edge Gateway komponens konfigurálása a Protected Users csoportba helyezett fiókokkal végzett Kerberos-hitelesítés támogatására

A Kerberos armoring további titkosítást biztosít az ügyfél és a KDC (Kerberos Domain Controller) közötti kezdeti üzenetváltásokhoz, egy számítógépfiókhoz kapcsolódó információk felhasználásával.

A CyberElements Bastion lehetőleg olyan Debian rendszerű számítógépeken fut, amelyek nincsenek AD-tartományhoz csatlakoztatva, vagyis nem rendelkeznek számítógépfiók-információval az AD-ben.
A Kerberos armoring támogatásához szükséges konfiguráció két lépésből áll:

  • Szolgáltatási számítógépfiók létrehozása az AD-ben
  • A Kerberos armoring konfigurálása az Edge Gateway komponensen az előzőleg létrehozott fiók alapján

Szolgáltatási számítógépfiók létrehozása

Információ

Ez az oldal példaként egy svc_cyberelements nevű szolgáltatásfiókot használ. Igazítsa a következő parancsokat a saját szolgáltatásfiókja nevéhez.

Figyelem!

Ha PAW-munkaállomásokat szeretne használni, helyezze ezt a szolgáltatásfiókot ugyanabba a silóba, mint a cél PAW-munkaállomásokat.

A tartományvezérlőn először hozzon létre egy számítógépfiókot egy olyan jelszóval, amely a Kerberos-jegyek létrehozására szolgál.

A fiók létrehozásához egy tartományvezérlőn a következő PowerShell-parancsot használhatja (a szolgáltatásfiók létrehozásához igazítsa a szolgáltatásfiók nevét – a példában svc_cyberelements – és a kívánt OU-t – a példában OU=Service_accounts,DC=domain,DC=local):

1
New-ADComputer -Name svc_cyberelements -SAMAccountName 'svc_cyberelements$' -AccountPassword $Null -Path 'OU=Service_accounts,DC=domain,DC=local'-KerberosEncryptionType AES256 -PasswordNeverExpires $True -Enabled $True

A következő paranccsal ellenőrizheti, hogy a számítógépfiók létrejött-e (cserélje le az svc_cyberelements nevet az előzőleg létrehozott fiók nevére):

1
Get-ADComputer -Identity svc_cyberelements -Properties Enabled

Ezután a Windows ktpass eszközével exportáljon egy keytab-fájlt, amely azokat a titkosítási kulcsokat tartalmazza, amelyekkel az átjáró lekérheti a TGT-t.

Példa

Példa egy svc_cyberelements.keytab fájl létrehozására a számítógépfiókkal:

1
ktpass /princ 'svc_cyberelements$@DOMAIN.LOCAL' /mapuser 'svc_cyberelements$@DOMAIN.LOCAL' +rndPass /out svc_cyberelements.keytab /crypto AES256-SHA1 /ptype KRB5_NT_SRV_HST /mapop set
Ne felejtse el feltüntetni a $ szimbólumot a fióknevek végén, és nagybetűvel írni a tartománynevet (kötelező).

Fogadja el az esetleg megjelenő megerősítő kérdéseket az y beírásával.

Ezután állítsa be újra a UserPrincipalName attribútum értékét a következő PowerShell-paranccsal:

1
Set-ADComputer 'svc_cyberelements$' -UserPrincipalName 'svc_cyberelements$@DOMAIN.LOCAL'

A Kerberos armoring konfigurálása az Edge Gateway komponensen

Kérje le az előzőleg létrehozott keytab fájlt, és másolja az Edge Gateway kiszolgálóra.
Ha több keytab fájl jött létre, és ezeket ugyanazon az Edge Gateway komponensen kell használni, egyesítse a keytab fájlokat egyetlen fájlba.

Figyelmeztetés

A keytab fájl titkosítási kulcsokat tartalmaz. Ha egy támadó megszerzi, kiadhatja magát a hozzá tartozó számítógépfióknak, és ezzel csökkentheti az infrastruktúra biztonságát.
Ezt a fájlt ezért kizárólag az Edge Gateway komponensen szabad tárolni.

Helyezze a fájlt a /etc/ipdiva/cleanroom/ könyvtárba.

Módosítsa a keytab fájl tulajdonosait (felhasználó: ipdivacareuser, csoport: carerecord), majd módosítsa a fájl engedélyeit (a keytab fájlnevet igazítsa a saját fájlja nevéhez):

1
2
chown ipdivacareuser:carerecord /etc/ipdiva/cleanroom/svc_cyberelements.keytab
chmod 640 /etc/ipdiva/cleanroom/svc_cyberelements.keytab

Módosítsa az Edge Gateway komponens /etc/ipdiva/cleanroom/xrdprecord.ini konfigurációs fájlját, és a keytab= paraméterrel adja meg az előzőleg előkészített keytab fájl elérési útját.

Példa

2
keytab=/etc/ipdiva/cleanroom/svc_cyberelements.keytab

Ezen a ponton az ügynök nélküli módban (HTML5 vagy egyéb) a kiemelt jogosultságú RDP-alkalmazásokhoz való csatlakozásnak működnie kell a Protected Users csoportba tartozó, ezért erős Kerberos-hitelesítést igénylő felhasználói fiókokkal. Az RDP-alkalmazás konfigurációjának bizonyos előfeltételeknek kell megfelelnie.

A Kerberos-konfiguráció tesztelése

Hibakeresés

A következő kinit parancsok több naplót szolgáltathatnak az alábbi parancs végrehajtása után (az SSH- vagy konzolmunkamenet bontásáig érvényes):

1
export KRB5_TRACE=/dev/stdout

Először kérjen le egy Kerberos-jegyet az alábbihoz hasonló paranccsal:

1
kinit -k -t /etc/ipdiva/cleanroom/svc_cyberelements.keytab 'svc_cyberelements$@DOMAIN.LOCAL' -c /tmp/test_kerberos

Ügyeljen arra, hogy lecserélje a keytab-fájl helyét, a létrehozott szolgáltatásfiók nevét és a hozzá tartozó tartományt.

Ha a Kerberos-jegy lekérése sikeres volt, a következő parancsnak jeleznie kell, hogy létezik jegy a szolgáltatásfiókhoz:

1
klist -c /tmp/test_kerberos

Ha a lekérés sikeres, meg kell próbálni egy felhasználó számára is jegyet lekérni az alábbihoz hasonló paranccsal:

1
kinit -T /tmp/test_kerberos user@DOMAIN.LOCAL

Cserélje le a user@DOMAIN.LOCAL értéket egy olyan felhasználóra, aki várhatóan RDP-n keresztül, Kerberos armoring használatával fog csatlakozni. Vegye figyelembe, hogy a rendszer bekéri a felhasználó jelszavát.
Ha a jegy lekérése sikeres, a következő parancs megjeleníti:

1
klist -c

Ha KDC policy rejects request while getting initial credentials hiba jelenik meg, az azt jelenti, hogy a KDC elutasította a jegykérést. Lehetséges okok:

További információkat a használt tartományvezérlő (KDC) Security eseménynaplóiban talál.

A tesztelés után ajánlott törölni a létrehozott jegyeket:

1
2
kdestroy
kdestroy -c /tmp/test_kerberos

Több keytab-fájl egyesítése egyetlen fájlba

Ha a CyberElements Bastion architektúra egyetlen Edge Gateway komponensre épül, amely több harmadik fél számára biztosít hozzáférést, az egyes szolgáltatásfiókokhoz generált összes keytab fájlt egyetlen keytab fájlba kell egyesíteni.

Megjegyzés

Ebben a fejezetben a következő keytab-fájlokat feltételezzük: /root/t0.keytab, /root/t1.keytab és /root/t2.keytab. Ezeket a fájlokat előzőleg el kell küldeni az Edge Gateway komponensre.

A keytab fájlok egyesítéséhez jelentkezzen be az Edge Gateway komponensre root felhasználóként, majd használja a következő parancsokat:

1
2
3
4
5
ktutil
rkt /root/t0.keytab
rkt /root/t1.keytab
rkt /root/t2.keytab
wkt /root/unified.keytab

Az rkt parancsokkal tetszőleges számú keytab fájl tölthető be, a wkt parancs pedig új keytab fájlt hoz létre.
Igazítsa a fájlok elérési útját a saját fájljaihoz.

A ktutil segédprogramból a q billentyű lenyomásával léphet ki.

Kérje le a unified.keytab fájlt, és kövesse a Configuring Kerberos shielding on the Edge Gateway fejezetet.