Erweiterung für die Azure-Computerkonfiguration
Die Erweiterung „Computerkonfiguration“ führt Überprüfungs- und Konfigurationsvorgänge auf VMs (virtuellen Computern) durch.
Zum Überprüfen von Richtlinien auf VMs, z. B. Definitionen für Sicherheitsbaselines von Azure Compute für Linux und Windows, muss die Computerkonfigurationserweiterung installiert sein.
Voraussetzungen
Damit sich Ihre VM beim Computerkonfigurationsdienst authentifizieren kann, muss Ihre VM über eine systemseitig zugewiesene verwaltete Identität verfügen. Sie können die Identitätsanforderung für Ihre VM erfüllen, indem Sie die "type": "SystemAssigned"
-Eigenschaft festlegen:
"identity": {
"type": "SystemAssigned"
}
Betriebssysteme
Die Betriebssystemunterstützung für die Computerkonfigurationserweiterung ist identisch mit der dokumentierten Betriebssystemunterstützung für die End-to-End-Lösung.
Internetkonnektivität
Der von der Computerkonfigurationserweiterung installierte Agent muss Inhaltspakete erreichen können, die unter Gastkonfigurationszuweisungen aufgeführt sind, und den Status an den Computerkonfigurationsdienst melden. Die VM kann eine Verbindung über ausgehenden HTTPS-Datenverkehr über TCP-Port 443 herstellen, oder über eine Verbindung, die über private Netzwerke bereitgestellt wird.
Weitere Informationen zu privaten Netzwerken finden Sie in folgenden Artikeln:
- Azure-Computerkonfiguration, Kommunikation über Azure Private Link
- Verwenden privater Endpunkte für Azure Storage
Installieren der Erweiterung
Sie können die Computerkonfigurationserweiterung direkt über die Azure-Befehlszeilenschnittstelle oder PowerShell installieren und bereitstellen. Bereitstellungsvorlagen sind auch für Azure Resource Manager (ARM), Bicep und Terraform verfügbar. Informationen zur Bereitstellungsvorlage finden Sie unter Microsoft.GuestConfiguration guestConfigurationAssignments.
Hinweis
Ersetzen Sie in den folgenden Bereitstellungsbeispielen <placeholder>
-Parameterwerte durch bestimmte Werte für Ihre Konfiguration.
Überlegungen zur Bereitstellung
Bevor Sie die Computerkonfigurationserweiterung installieren und bereitstellen, lesen Sie die folgenden Überlegungen.
Instanzname. Wenn Sie die Computerkonfigurationserweiterung installieren, muss der Instanzname der Erweiterung auf
AzurePolicyforWindows
oderAzurePolicyforLinux
festgelegt werden. Die zuvor beschriebenen Richtlinien für die Definition der Sicherheitsbaseline erfordern diese spezifischen Zeichenfolgen.Versionen. Standardmäßig werden alle Bereitstellungen auf die neueste Version aktualisiert. Der Wert der
autoUpgradeMinorVersion
-Eigenschaft ist standardmäßig auf „true
“ festgelegt, sofern nichts anderes angegeben ist. Diese Funktion hilft, Bedenken hinsichtlich der Aktualisierung Ihres Codes zu zerstreuen, wenn neue Versionen der Computerkonfigurationserweiterung veröffentlicht werden.Automatisches Upgrade. Die Computerkonfigurationserweiterung unterstützt die
enableAutomaticUpgrade
-Eigenschaft. Wenn diese Eigenschaft auf „true
“ festgelegt ist, führt Azure automatisch ein Upgrade auf die neueste Version der Erweiterung durch, sobald zukünftige Releases verfügbar werden. Weitere Informationen finden Sie unter Automatisches Erweiterungsupgrade für VMs und VM-Skalierungsgruppen in Azure.Azure Policy. Führen Sie die Schritte unter Erstellen einer Richtlinienzuweisung zum Identifizieren nicht konformer Ressourcen aus, um die neueste Version der Computerkonfigurationserweiterung im großen Stil bereitzustellen, einschließlich Identitätsanforderungen. Erstellen Sie die folgende Zuweisung mit Azure Policy:
Weitere Eigenschaften. Sie müssen keine Einstellungen oder Eigenschaften mit geschützten Einstellungen in die Computerkonfigurationserweiterung aufnehmen. Der Agent ruft diese Klasse von Informationen aus den Azure REST-API-Gastkonfigurationszuweisungressourcen ab. Beispielsweise werden die Eigenschaften
ConfigurationUri
,Mode
undConfigurationSetting
pro Konfiguration und nicht in der VM-Erweiterung verwaltet.
Azure CLI
So stellen Sie die Erweiterung für Linux bereit:
az vm extension set --publisher Microsoft.GuestConfiguration --name ConfigurationForLinux --extension-instance-name AzurePolicyforLinux --resource-group <myResourceGroup> --vm-name <myVM> --enable-auto-upgrade true
So stellen Sie die Erweiterung für Windows bereit:
az vm extension set --publisher Microsoft.GuestConfiguration --name ConfigurationforWindows --extension-instance-name AzurePolicyforWindows --resource-group <myResourceGroup> --vm-name <myVM> --enable-auto-upgrade true
PowerShell
So stellen Sie die Erweiterung für Linux bereit:
Set-AzVMExtension -Publisher 'Microsoft.GuestConfiguration' -ExtensionType 'ConfigurationForLinux' -Name 'AzurePolicyforLinux' -TypeHandlerVersion 1.0 -ResourceGroupName '<myResourceGroup>' -Location '<myLocation>' -VMName '<myVM>' -EnableAutomaticUpgrade $true
So stellen Sie die Erweiterung für Windows bereit:
Set-AzVMExtension -Publisher 'Microsoft.GuestConfiguration' -ExtensionType 'ConfigurationforWindows' -Name 'AzurePolicyforWindows' -TypeHandlerVersion 1.0 -ResourceGroupName '<myResourceGroup>' -Location '<myLocation>' -VMName '<myVM>' -EnableAutomaticUpgrade $true
ARM-Vorlage
So stellen Sie die Erweiterung für Linux bereit:
{
"type": "Microsoft.Compute/virtualMachines/extensions",
"name": "[concat(parameters('VMName'), '/AzurePolicyforLinux')]",
"apiVersion": "2020-12-01",
"location": "[parameters('location')]",
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', parameters('VMName'))]"
],
"properties": {
"publisher": "Microsoft.GuestConfiguration",
"type": "ConfigurationForLinux",
"typeHandlerVersion": "1.0",
"autoUpgradeMinorVersion": true,
"enableAutomaticUpgrade": true,
"settings": {},
"protectedSettings": {}
}
}
So stellen Sie die Erweiterung für Windows bereit:
{
"type": "Microsoft.Compute/virtualMachines/extensions",
"name": "[concat(parameters('VMName'), '/AzurePolicyforWindows')]",
"apiVersion": "2020-12-01",
"location": "[parameters('location')]",
"dependsOn": [
"[concat('Microsoft.Compute/virtualMachines/', parameters('VMName'))]"
],
"properties": {
"publisher": "Microsoft.GuestConfiguration",
"type": "ConfigurationforWindows",
"typeHandlerVersion": "1.0",
"autoUpgradeMinorVersion": true,
"enableAutomaticUpgrade": true,
"settings": {},
"protectedSettings": {}
}
}
Bicep-Vorlage
So stellen Sie die Erweiterung für Linux bereit:
resource virtualMachine 'Microsoft.Compute/virtualMachines@2021-03-01' existing = {
name: 'VMName'
}
resource windowsVMGuestConfigExtension 'Microsoft.Compute/virtualMachines/extensions@2020-12-01' = {
parent: virtualMachine
name: 'AzurePolicyforLinux'
location: resourceGroup().location
properties: {
publisher: 'Microsoft.GuestConfiguration'
type: 'ConfigurationForLinux'
typeHandlerVersion: '1.0'
autoUpgradeMinorVersion: true
enableAutomaticUpgrade: true
settings: {}
protectedSettings: {}
}
}
So stellen Sie die Erweiterung für Windows bereit:
resource virtualMachine 'Microsoft.Compute/virtualMachines@2021-03-01' existing = {
name: 'VMName'
}
resource windowsVMGuestConfigExtension 'Microsoft.Compute/virtualMachines/extensions@2020-12-01' = {
parent: virtualMachine
name: 'AzurePolicyforWindows'
location: resourceGroup().location
properties: {
publisher: 'Microsoft.GuestConfiguration'
type: 'ConfigurationforWindows'
typeHandlerVersion: '1.0'
autoUpgradeMinorVersion: true
enableAutomaticUpgrade: true
settings: {}
protectedSettings: {}
}
}
Terraform-Vorlage
So stellen Sie die Erweiterung für Linux bereit:
resource "azurerm_virtual_machine_extension" "gc" {
name = "AzurePolicyforLinux"
virtual_machine_id = "<myVMID>"
publisher = "Microsoft.GuestConfiguration"
type = "ConfigurationForLinux"
type_handler_version = "1.0"
auto_upgrade_minor_version = "true"
}
So stellen Sie die Erweiterung für Windows bereit:
resource "azurerm_virtual_machine_extension" "gc" {
name = "AzurePolicyforWindows"
virtual_machine_id = "<myVMID>"
publisher = "Microsoft.GuestConfiguration"
type = "ConfigurationforWindows"
type_handler_version = "1.0"
auto_upgrade_minor_version = "true"
}
Fehlermeldungen
In der folgenden Tabelle sind mögliche Fehlermeldungen im Zusammenhang mit der Aktivierung der Gastkonfigurationserweiterung aufgeführt.
Fehlercode | BESCHREIBUNG |
---|---|
NoComplianceReport | Die VM hat die Compliancedaten nicht gemeldet. |
GCExtensionMissing | Die Computerkonfigurationserweiterung (Gastkonfiguration) fehlt. |
ManagedIdentityMissing | Die verwaltete Identität fehlt. |
UserIdentityMissing | Die vom Benutzer zugewiesene Identität fehlt. |
GCExtensionManagedIdentityMissing | Die Computerkonfigurationserweiterung (Gastkonfiguration) und die verwaltete Identität fehlen. |
GCExtensionUserIdentityMissing | Die Computerkonfigurationserweiterung (Gastkonfiguration) und die benutzerseitig zugewiesene Identität fehlen. |
GCExtensionIdentityMissing | Die Computerkonfigurationserweiterung (Gastkonfiguration), die verwaltete Identität und die benutzerseitig zugewiesene Identität fehlen. |
Nächste Schritte
- Weitere Informationen zur Computerkonfigurationserweiterung finden Sie unter Grundlegendes zur Azure-Computerkonfiguration.
- Weitere Informationen zur Funktionsweise des Linux-Agents und der Erweiterungen finden Sie unter Erweiterungen und Funktionen für virtuelle Computer für Linux.
- Weitere Informationen zur Funktionsweise des Windows-Gast-Agents und der Erweiterungen finden Sie unter Erweiterungen und Funktionen für virtuelle Computer für Windows.
- Informationen zur Installation des Windows-Gast-Agents finden Sie unter Übersicht über den Agent für virtuelle Azure-Computer.
- Informationen zum Installieren des Linux-Agents finden Sie unter Grundlegendes zu und Verwendung von Azure Linux-Agents.