Delen via


Configuratie-extensie voor Azure Automanage-machine

De machineconfiguratie-extensie is een functie van Azure Automanage waarmee controle- en configuratiebewerkingen worden uitgevoerd binnen virtuele machines (VM's).

Als u beleidsregels in VM's wilt controleren, zoals definities van azure-rekenbeveiligingsbasislijnen voor Linux en Windows, moet de configuratie-extensie voor de machine worden geïnstalleerd.

Vereisten

Als u wilt dat uw VIRTUELE machine kan worden geverifieerd bij de machineconfiguratieservice, moet uw VM een door het systeem toegewezen beheerde identiteit hebben. U kunt voldoen aan de identiteitsvereiste voor uw VIRTUELE machine door de "type": "SystemAssigned" eigenschap in te stellen:

"identity": {
   "type": "SystemAssigned"
}

Besturingssystemen

Ondersteuning van besturingssystemen voor de computerconfiguratie-extensie is hetzelfde als gedocumenteerde besturingssysteemondersteuning voor de end-to-end-oplossing.

Verbinding met internet

De agent die door de machineconfiguratie-extensie is geïnstalleerd, moet inhoudspakketten kunnen bereiken die worden vermeld door gastconfiguratietoewijzingen en de status rapporteren aan de machineconfiguratieservice. De VIRTUELE machine kan verbinding maken met behulp van uitgaande HTTPS via TCP-poort 443 of een verbinding via privénetwerken.

Zie de volgende artikelen voor meer informatie over privénetwerken:

De extensie installeren

U kunt de configuratie-extensie voor de machine rechtstreeks installeren en implementeren vanuit de Azure CLI of PowerShell. Implementatiesjablonen zijn ook beschikbaar voor Azure Resource Manager (ARM), Bicep en Terraform. Zie Microsoft.GuestConfiguration guestConfigurationAssignments voor meer informatie over de implementatiesjabloon.

Notitie

Vervang in de volgende implementatievoorbeelden <placeholder> parameterwaarden door specifieke waarden voor uw configuratie.

Implementatieoverwegingen

Bekijk de volgende overwegingen voordat u de configuratie-extensie voor de machine installeert en implementeert.

  • Exemplaarnaam. Wanneer u de computerconfiguratie-extensie installeert, moet de exemplaarnaam van de extensie worden ingesteld op AzurePolicyforWindows of AzurePolicyforLinux. Voor het definitiebeleid voor de beveiligingsbasislijn die eerder is beschreven, zijn deze specifieke tekenreeksen vereist.

  • Versies. Standaard worden alle implementaties bijgewerkt naar de nieuwste versie. De waarde van de autoUpgradeMinorVersion eigenschap wordt standaard ingesteld op true tenzij anders opgegeven. Met deze functie kunt u zich zorgen maken over het bijwerken van uw code wanneer nieuwe versies van de computerconfiguratie-extensie worden uitgebracht.

  • Automatische upgrade. De configuratie-extensie voor de machine ondersteunt de enableAutomaticUpgrade eigenschap. Wanneer deze eigenschap is ingesteld op true, wordt Azure automatisch bijgewerkt naar de nieuwste versie van de extensie zodra toekomstige releases beschikbaar komen. Zie Automatische extensie-upgrade voor VM's en virtuele-machineschaalsets in Azure voor meer informatie.

  • Azure Policy. Als u de nieuwste versie van de machineconfiguratie-extensie op schaal wilt implementeren, inclusief identiteitsvereisten, volgt u de stappen in Een beleidstoewijzing maken om niet-compatibele resources te identificeren. Maak de volgende toewijzing met Azure Policy:

  • Andere eigenschappen. U hoeft geen instellingen of eigenschappen voor beveiligde instellingen op te nemen in de configuratie-extensie van de computer. De agent haalt deze informatieklasse op uit de toewijzingsbronnen van de Azure REST API-gastconfiguratie. De , Modeen ConfigurationSetting eigenschappen worden bijvoorbeeld ConfigurationUrielk beheerd per configuratie in plaats van op de VM-extensie.

Azure-CLI

De extensie voor Linux implementeren:

az vm extension set  --publisher Microsoft.GuestConfiguration --name ConfigurationForLinux --extension-instance-name AzurePolicyforLinux --resource-group <myResourceGroup> --vm-name <myVM> --enable-auto-upgrade true

De extensie voor Windows implementeren:

az vm extension set  --publisher Microsoft.GuestConfiguration --name ConfigurationforWindows --extension-instance-name AzurePolicyforWindows --resource-group <myResourceGroup> --vm-name <myVM> --enable-auto-upgrade true

Powershell

De extensie voor Linux implementeren:

Set-AzVMExtension -Publisher 'Microsoft.GuestConfiguration' -ExtensionType 'ConfigurationForLinux' -Name 'AzurePolicyforLinux' -TypeHandlerVersion 1.0 -ResourceGroupName '<myResourceGroup>' -Location '<myLocation>' -VMName '<myVM>' -EnableAutomaticUpgrade $true

De extensie voor Windows implementeren:

Set-AzVMExtension -Publisher 'Microsoft.GuestConfiguration' -ExtensionType 'ConfigurationforWindows' -Name 'AzurePolicyforWindows' -TypeHandlerVersion 1.0 -ResourceGroupName '<myResourceGroup>' -Location '<myLocation>' -VMName '<myVM>' -EnableAutomaticUpgrade $true

ARM-sjabloon

De extensie voor Linux implementeren:

{
  "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": {}
  }
}

De extensie voor Windows implementeren:

{
  "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-sjabloon

De extensie voor Linux implementeren:

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: {}
  }
}

De extensie voor Windows implementeren:

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-sjabloon

De extensie voor Linux implementeren:

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"
}

De extensie voor Windows implementeren:

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"
}

Foutberichten

De volgende tabel bevat mogelijke foutberichten met betrekking tot het inschakelen van de extensie Gastconfiguratie.

Foutcode Beschrijving
NoComplianceReport De VM heeft de nalevingsgegevens niet gerapporteerd.
GCExtensionMissing De extensie voor computerconfiguratie (gastconfiguratie) ontbreekt.
ManagedIdentityMissing De beheerde identiteit ontbreekt.
UserIdentityMissing De door de gebruiker toegewezen identiteit ontbreekt.
GCExtensionManagedIdentityMissing De extensie voor machineconfiguratie (gastconfiguratie) en beheerde identiteit ontbreken.
GCExtensionUserIdentityMissing De extensie voor computerconfiguratie (gastconfiguratie) en door de gebruiker toegewezen identiteit ontbreken.
GCExtensionIdentityMissing De extensie voor machineconfiguratie (gastconfiguratie), beheerde identiteit en door de gebruiker toegewezen identiteit ontbreekt.

Volgende stappen