Azure Key Vault integrálása "Azure Arc enabled servers"-el
A tanúsítvány terítés az üzemeltetés egy kötelezően velejáró feladata. Az indokot nem is firtatnám, csupán egy lehetőséget mutatnék be, amely segítségével könnyedén teríthetjük a tanúsítványokat. Természetesen most is Azure-os megoldásban gondolkozok, ami szerencsére még ingyenes is. Szép hosszú lista van a támogatott kliensekről, mely lehet Windows vagy linux, így ha nem túl régi és egzotikus operációs rendszerünk van, jó eséllyel támogatott lesz. Azure Arc enabled server-el gyorsan oldjuk is meg, hogy egy tanúsítvány jelenjen meg a Windows server-en.
Előfeltételek
- Jogosultság Azure előfizetésben (owner)
- Azure előfizetés, amiben van pár $
- Rendszergazdai jog
On-Boarding
Az első lépés, hogy az Azure számára valahogyan láthatóvá kell tennünk a gépünket.
Tömegesen vagy egyesével is van lehetőségünk on-boardol-ni a gépeket, a példában azonban csak egy Windows server-t fogok most erre felhasználni.
Nyissuk meg a https://portal.azure.com -ot -> fenti keresőben írjuk be hogy “Azure Arc” majd kezdeményezzük egy új szerver hozzáadását
A szokásos adatok, mint előfizetés, resource group és régión kívül fontos, hogy a megfelelő operációs rendszert válasszuk ki, hiszen annak megfelelően fogja generálni a script-et. Proxy-s környezet esetén van lehetőségünk megadni ezt is, hiszen valahogy a kliensnek el kell érnie az Azure-t!
Töltsük/másoljuk le a generált script-et a gépre, amit szeretnénk on-boardol-ni, majd egy rendszergazda módban indított powershell ablakba futtassuk le.
Jelentkezzük be azzal az Azure-os felhasználóval, akinek joga van az előfizetésben erőforráskat létrezni, a többit a script már megoldja.
Ha mindent jól csináltunk, pár perc és a szerverek alatt meg is jelenik az on-boardol-t szerverünk.
Key vault létrehozása
Következő fontos szereplő az Azure Key Vault, melyben kezelni fogjuk magukat a tanúsítványokat. A következőkben létre kell hoznunk egyet, majd generálni egy tanúsítványt és jogsultságot adni a gépnek, hogy lekérhesse azt.
Felület helyett most CLI-ban fogom létrehozni:
1
2
3
4
5
6
7
8
9
10
11
$kvname="arckeyvaultgudszento"
$location="westeurope"
$rg="ARC-RG"
$cert="gudszenthu"
az group create --name $rg --location $location
az keyvault create --name $kvname --location $location --resource-group $rg
az keyvault certificate create --vault-name $kvname -n $cert -p "$(az keyvault certificate get-default-policy)"
Ezzel elkészült a tanúsítvány is.
Mielőtt elindítanánk a “terítést”, szükséges egy jogosultságosztás, hogy ténylegesen hozzá is férjen a computer objektum. Ellenkező esetben csak várakozunk, de nem fog történni semmi.
Jogosultság kiválasztásánál fontos, hogy Secret-et válasszunk annak ellenére, hogy cert-et generáltunk.
Ki kell választanunk a gépet, akinek lesz jogosultsága a tanúsítványhoz.
Next->Next-> Finish
Ezzel készen állunk az összekapcsolásra.
Bővítmény telepítés
Extension-ként telepítünk az Azure-os objektumra egy bővítményt, ezzel kezdeményezzük is a szinkronizálást.
“observedCertificates” Részt át kell írni a sajátunkra! (Itt ismét furcsa lehet, hogy “secrets” kell, de jól írtam :) )
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
$location="westeurope"
$rg="ARC-RG"
$cert="gudszenthu"
$vmname="WIN-I7PLM4BHDF1"
$settings='{
"secretsManagementSettings": {
"observedCertificates": ["https://arckeyvaultgudszento.vault.azure.net/secrets/gudszenthu"],
"certificateStoreLocation": "LocalMachine",
"certificateStore" : "My",
"pollingIntervalInS": "60"
},
"authenticationSettings": {
"msiEndpoint" : "http://localhost:40342/metadata/identity"
}
}'
az connectedmachine extension create --resource-group $rg --machine-name $vmname --location $location --publisher "Microsoft.Azure.KeyVault" --type "KeyVaultForWindows" --name "KeyVaultForWindows" --settings $settings
Pár perc után mmc-ben már láthatjuk is…