Informatie over Azure Machine Configuration

Let op

In dit artikel wordt verwezen naar CentOS, een Linux-distributie die de status End Of Life (EOL) nadert. Overweeg uw gebruik en planning dienovereenkomstig. Zie de Richtlijnen voor het einde van de levensduur van CentOS voor meer informatie.

De machineconfiguratiefunctie van Azure Policy biedt systeemeigen mogelijkheden om de instellingen van het besturingssysteem te controleren of te configureren als code voor machines die worden uitgevoerd in Azure en hybride Arc-machines. U kunt de functie rechtstreeks per machine gebruiken of op schaal organiseren met behulp van Azure Policy.

Configuratieresources in Azure zijn ontworpen als een extensieresource. U kunt elke configuratie voorstellen als een extra set eigenschappen voor de machine. Configuraties kunnen instellingen bevatten, zoals:

  • Instellingen van besturingssysteem
  • Configuratie of aanwezigheid van toepassingen
  • Omgevingsinstellingen

Configuraties verschillen van beleidsdefinities. Machineconfiguratie maakt gebruik van Azure Policy om configuraties dynamisch toe te wijzen aan machines. U kunt configuraties ook handmatig toewijzen aan machines of met behulp van andere Azure-services, zoals Automanage.

Voorbeelden van elk scenario worden gegeven in de volgende tabel.

Type Description Voorbeeldverhaal
Configuratiebeheer U wilt een volledige weergave van een server, als code in broncodebeheer. De implementatie moet eigenschappen van de server (grootte, netwerk, opslag) en configuratie van besturingssysteem- en toepassingsinstellingen bevatten. "Deze computer moet een webserver zijn die is geconfigureerd voor het hosten van mijn website."
Naleving U wilt instellingen controleren of implementeren op alle machines binnen het bereik reactief op bestaande machines of proactief naar nieuwe machines wanneer ze worden geïmplementeerd. "Alle computers moeten TLS 1.2 gebruiken. Controleer bestaande machines zodat ik wijzigingen kan vrijgeven waar deze nodig zijn, op een gecontroleerde manier, op schaal. Voor nieuwe machines moet u de instelling afdwingen wanneer ze worden geïmplementeerd.

U kunt de resultaten per instelling bekijken van configuraties op de pagina Gasttoewijzingen. Als een Azure Policy-toewijzing die de configuratie heeft ingedeeld, is ingedeeld, kunt u de koppeling 'Laatst geëvalueerde resource' selecteren op de pagina Details van naleving.

Er is een video-overzicht van dit document beschikbaar. (Update binnenkort beschikbaar)

Computerconfiguratie inschakelen

Als u de status van machines in uw omgeving wilt beheren, inclusief machines in Servers met Azure en Arc, raadpleegt u de volgende details.

Resourceprovider

Voordat u de machineconfiguratiefunctie van Azure Policy kunt gebruiken, moet u de Microsoft.GuestConfiguration resourceprovider registreren. Als de toewijzing van een computerconfiguratiebeleid wordt uitgevoerd via de portal of als het abonnement is ingeschreven bij Microsoft Defender voor Cloud, wordt de resourceprovider automatisch geregistreerd. U kunt zich handmatig registreren via de portal, Azure PowerShell of Azure CLI.

Vereisten implementeren voor virtuele Azure-machines

Als u instellingen binnen een machine wilt beheren, wordt een VM-extensie ingeschakeld en moet de machine een door het systeem beheerde identiteit hebben. De extensie downloadt toepasselijke machineconfiguratietoewijzingen en de bijbehorende afhankelijkheden. De identiteit wordt gebruikt om de machine te verifiëren tijdens het lezen en schrijven naar de machineconfiguratieservice. De extensie is niet vereist voor Arc-servers omdat de extensie is opgenomen in de Arc Connected Machine-agent.

Belangrijk

De machineconfiguratie-extensie en een beheerde identiteit zijn vereist voor het beheren van virtuele Azure-machines.

Als u de extensie op schaal op veel computers wilt implementeren, wijst u het beleidsinitiatief toe Deploy prerequisites to enable Guest Configuration policies on virtual machines naar een beheergroep, abonnement of resourcegroep met de machines die u wilt beheren.

Als u de extensie en beheerde identiteit liever op één computer wilt implementeren, raadpleegt u Beheerde identiteiten configureren voor Azure-resources op een VIRTUELE machine met behulp van Azure Portal.

Als u machineconfiguratiepakketten wilt gebruiken die configuraties toepassen, is azure VM-gastconfiguratie-extensie versie 1.26.24 of hoger vereist.

Limieten die zijn ingesteld voor de extensie

Als u de extensie wilt beperken tot toepassingen die op de computer worden uitgevoerd, mag de machineconfiguratieagent niet meer dan 5% van de CPU overschrijden. Deze beperking bestaat voor zowel ingebouwde als aangepaste definities. Hetzelfde geldt voor de machineconfiguratieservice in Arc Verbinding maken ed Machine-agent.

Validatiehulpprogramma's

Op de computer gebruikt de machineconfiguratieagent lokale hulpprogramma's om taken uit te voeren.

In de volgende tabel ziet u een lijst met de lokale hulpprogramma's die in elk ondersteund besturingssysteem worden gebruikt. Voor ingebouwde inhoud verwerkt de computerconfiguratie het automatisch laden van deze hulpprogramma's.

Besturingssysteem Validatieprogramma Notities
Windows PowerShell Desired State Configuration v2 Side-loaded naar een map die alleen wordt gebruikt door Azure Policy. Conflicteren niet met Windows PowerShell DSC. PowerShell wordt niet toegevoegd aan het systeempad.
Linux PowerShell Desired State Configuration v3 Side-loaded naar een map die alleen wordt gebruikt door Azure Policy. PowerShell wordt niet toegevoegd aan het systeempad.
Linux Chef InSpec Installeert Chef InSpec versie 2.2.61 op de standaardlocatie en voegt deze toe aan het systeempad. De afhankelijkheden van InSpec worden ook geïnstalleerd, waaronder Ruby en Python.

Validatiefrequentie

De machineconfiguratieagent controleert elke 5 minuten op nieuwe of gewijzigde gasttoewijzingen. Zodra een gasttoewijzing is ontvangen, worden de instellingen voor die configuratie opnieuw gecontroleerd op een interval van 15 minuten. Als er meerdere configuraties zijn toegewezen, wordt elk configuratie opeenvolgend geëvalueerd. Langlopende configuraties zijn van invloed op het interval voor alle configuraties, omdat de volgende pas kan worden uitgevoerd als de vorige configuratie is voltooid.

Resultaten worden verzonden naar de machineconfiguratieservice wanneer de controle is voltooid. Wanneer een beleidsevaluatietrigger optreedt, wordt de status van de machine naar de resourceprovider voor de machineconfiguratie geschreven. Deze update zorgt ervoor dat Azure Policy de Eigenschappen van Azure Resource Manager evalueert. Met een evaluatie op aanvraag van Azure Policy wordt de meest recente waarde opgehaald van de resourceprovider van de machineconfiguratie. Er wordt echter geen nieuwe activiteit binnen de machine geactiveerd. De status wordt vervolgens naar Azure Resource Graph geschreven.

Ondersteunde clienttypen

Beleidsdefinities voor computerconfiguratie zijn inclusief nieuwe versies. Oudere versies van besturingssystemen die beschikbaar zijn in Azure Marketplace, worden uitgesloten als de gastconfiguratieclient niet compatibel is. In de volgende tabel ziet u een lijst met ondersteunde besturingssystemen in Azure-installatiekopieën. De .x tekst is symbolisch voor nieuwe secundaire versies van Linux-distributies.

Publisher Naam Versies
Alma AlmaLinux 9
Amazon Linux 2
Canonical Ubuntu Server 14.04 - 22.x
Credativ Debian 8 - 10.x
Microsoft CBL-Mariner 1 - 2
Microsoft Windows Client (Windows-client) Windows 10
Microsoft Windows Server 2012 - 2022
Oracle Oracle-Linux 7.x - 8.x
OpenLogic CentOS 7.3 - 8.x
Red Hat Red Hat Enterprise Linux* 7.4 - 9.x
Rocky Rocky Linux 9
SUSE SLES 12 SP3-SP5, 15.x

* Red Hat CoreOS wordt niet ondersteund.

Definities van configuratiebeleid voor machines ondersteunen aangepaste installatiekopieën van virtuele machines zolang ze een van de besturingssystemen in de vorige tabel zijn.

Vereisten voor netwerkfirewall

Virtuele Azure-machines kunnen hun lokale virtuele netwerkadapter (vNIC) of Azure Private Link gebruiken om te communiceren met de machineconfiguratieservice.

Machines met Azure Arc maken verbinding met behulp van de on-premises netwerkinfrastructuur om Azure-services te bereiken en de nalevingsstatus te rapporteren.

Hier volgt een lijst met de Azure Storage-eindpunten die vereist zijn voor virtuele Azure- en Azure Arc-machines om te communiceren met de resourceprovider voor machineconfiguratie in Azure:

  • oaasguestconfigac2s1.blob.core.windows.net
  • oaasguestconfigacs1.blob.core.windows.net
  • oaasguestconfigaes1.blob.core.windows.net
  • oaasguestconfigases1.blob.core.windows.net
  • oaasguestconfigbrses1.blob.core.windows.net
  • oaasguestconfigbrss1.blob.core.windows.net
  • oaasguestconfigccs1.blob.core.windows.net
  • oaasguestconfigces1.blob.core.windows.net
  • oaasguestconfigcids1.blob.core.windows.net
  • oaasguestconfigcuss1.blob.core.windows.net
  • oaasguestconfigeaps1.blob.core.windows.net
  • oaasguestconfigeas1.blob.core.windows.net
  • oaasguestconfigeus2s1.blob.core.windows.net
  • oaasguestconfigeuss1.blob.core.windows.net
  • oaasguestconfigfcs1.blob.core.windows.net
  • oaasguestconfigfss1.blob.core.windows.net
  • oaasguestconfiggewcs1.blob.core.windows.net
  • oaasguestconfiggns1.blob.core.windows.net
  • oaasguestconfiggwcs1.blob.core.windows.net
  • oaasguestconfigjiws1.blob.core.windows.net
  • oaasguestconfigjpes1.blob.core.windows.net
  • oaasguestconfigjpws1.blob.core.windows.net
  • oaasguestconfigkcs1.blob.core.windows.net
  • oaasguestconfigkss1.blob.core.windows.net
  • oaasguestconfigncuss1.blob.core.windows.net
  • oaasguestconfignes1.blob.core.windows.net
  • oaasguestconfignres1.blob.core.windows.net
  • oaasguestconfignrws1.blob.core.windows.net
  • oaasguestconfigqacs1.blob.core.windows.net
  • oaasguestconfigsans1.blob.core.windows.net
  • oaasguestconfigscuss1.blob.core.windows.net
  • oaasguestconfigseas1.blob.core.windows.net
  • oaasguestconfigsecs1.blob.core.windows.net
  • oaasguestconfigsfns1.blob.core.windows.net
  • oaasguestconfigsfws1.blob.core.windows.net
  • oaasguestconfigsids1.blob.core.windows.net
  • oaasguestconfigstzns1.blob.core.windows.net
  • oaasguestconfigswcs1.blob.core.windows.net
  • oaasguestconfigswns1.blob.core.windows.net
  • oaasguestconfigswss1.blob.core.windows.net
  • oaasguestconfigswws1.blob.core.windows.net
  • oaasguestconfiguaecs1.blob.core.windows.net
  • oaasguestconfiguaens1.blob.core.windows.net
  • oaasguestconfigukss1.blob.core.windows.net
  • oaasguestconfigukws1.blob.core.windows.net
  • oaasguestconfigwcuss1.blob.core.windows.net
  • oaasguestconfigwes1.blob.core.windows.net
  • oaasguestconfigwids1.blob.core.windows.net
  • oaasguestconfigwus2s1.blob.core.windows.net
  • oaasguestconfigwus3s1.blob.core.windows.net
  • oaasguestconfigwuss1.blob.core.windows.net

Communiceren via virtuele netwerken in Azure

Voor communicatie met de resourceprovider van de machineconfiguratie in Azure hebben machines uitgaande toegang nodig tot Azure-datacenters op poort 443*. Als een netwerk in Azure uitgaand verkeer niet toestaat, configureert u uitzonderingen met regels voor netwerkbeveiligingsgroepen . De servicetagsAzureArcInfrastructure en Storage kunnen worden gebruikt om te verwijzen naar de gastconfiguratie en opslagservices in plaats van handmatig de lijst met IP-bereiken voor Azure-datacenters te onderhouden. Beide tags zijn vereist omdat Azure Storage als host fungeert voor de inhoudspakketten voor de machineconfiguratie.

Virtuele machines kunnen private link gebruiken voor communicatie met de machineconfiguratieservice. Tag toepassen met de naam EnablePrivateNetworkGC en waarde TRUE om deze functie in te schakelen. De tag kan worden toegepast voor of nadat de beleidsdefinities voor computerconfiguratie op de computer worden toegepast.

Belangrijk

Als u wilt communiceren via private link voor aangepaste pakketten, moet de koppeling naar de locatie van het pakket worden toegevoegd aan de lijst met toegestane URL's.

Verkeer wordt gerouteerd met behulp van het virtuele openbare IP-adres van Azure om een beveiligd, geverifieerd kanaal met Azure-platformbronnen tot stand te brengen.

Communiceren via openbare eindpunten buiten Azure

Servers die zich on-premises of in andere clouds bevinden, kunnen worden beheerd met computerconfiguratie door ze te verbinden met Azure Arc.

Sta verkeer toe met behulp van de volgende patronen voor servers met Azure Arc:

  • Poort: alleen TCP 443 is vereist voor uitgaande toegang tot internet
  • Algemene URL: *.guestconfiguration.azure.com

Zie de netwerkvereisten voor servers met Azure Arc voor een volledige lijst met alle netwerkeindpunten die zijn vereist voor de Azure Verbinding maken ed Machine Agent voor kernscenario's voor Azure Arc- en machineconfiguratiescenario's.

Wanneer u private link gebruikt met servers met Arc, worden ingebouwde beleidspakketten automatisch gedownload via de private link. U hoeft geen tags in te stellen op de server met Arc om deze functie in te schakelen.

Beleid toewijzen aan computers buiten Azure

De controlebeleidsdefinities die beschikbaar zijn voor computerconfiguratie, omvatten het resourcetype Microsoft.HybridCompute/machines . Alle computers die zijn toegevoegd aan servers met Azure Arc die binnen het bereik van de beleidstoewijzing vallen, worden automatisch opgenomen.

Vereisten voor beheerde identiteit

Beleidsdefinities in het initiatief maken een door het systeem Deploy prerequisites to enable guest configuration policies on virtual machines toegewezen beheerde identiteit mogelijk als deze niet bestaat. Er zijn twee beleidsdefinities in het initiatief waarmee het maken van identiteiten wordt beheerd. De if voorwaarden in de beleidsdefinities zorgen voor het juiste gedrag op basis van de huidige status van de machineresource in Azure.

Belangrijk

Deze definities maken een door het systeem toegewezen beheerde identiteit op de doelbronnen, naast bestaande door de gebruiker toegewezen identiteiten (indien van toepassing). Voor bestaande toepassingen, tenzij ze de door de gebruiker toegewezen identiteit in de aanvraag opgeven, wordt op de computer standaard gebruikgemaakt van door het systeem toegewezen identiteit. Meer informatie

Als de machine momenteel geen beheerde identiteiten heeft, is het effectieve beleid: Door het systeem toegewezen beheerde identiteit toevoegen om toewijzingen van gastconfiguraties in te schakelen op virtuele machines zonder identiteiten

Als de machine momenteel een door de gebruiker toegewezen systeemidentiteit heeft, is het effectieve beleid: Door het systeem toegewezen beheerde identiteit toevoegen om gastconfiguratietoewijzingen in te schakelen op VM's met een door de gebruiker toegewezen identiteit

Beschikbaarheid

Klanten die een maximaal beschikbare oplossing ontwerpen, moeten rekening houden met de vereisten voor redundantieplanning voor virtuele machines , omdat gasttoewijzingen extensies zijn van machinebronnen in Azure. Wanneer gasttoewijzingsbronnen zijn ingericht in een Gekoppelde Azure-regio, kunt u gasttoewijzingsrapporten weergeven als er ten minste één regio in het paar beschikbaar is. Wanneer de Azure-regio niet is gekoppeld en deze niet meer beschikbaar is, hebt u geen toegang tot rapporten voor een gasttoewijzing. Wanneer de regio is hersteld, hebt u weer toegang tot de rapporten.

Het is raadzaam om dezelfde beleidsdefinities met dezelfde parameters toe te wijzen aan alle computers in de oplossing voor maximaal beschikbare toepassingen. Dit geldt met name voor scenario's waarin virtuele machines worden ingericht in beschikbaarheidssets achter een load balancer-oplossing. Eén beleidstoewijzing die alle computers beslaat, heeft de minste administratieve overhead.

Voor machines die worden beveiligd door Azure Site Recovery, moet u ervoor zorgen dat de machines op de primaire en secundaire site binnen het bereik van Azure Policy-toewijzingen voor dezelfde definities vallen. Gebruik dezelfde parameterwaarden voor beide sites.

Gegevensresidentie

Met machineconfiguratie worden klantgegevens opgeslagen en verwerkt. Klantgegevens worden standaard gerepliceerd naar de gekoppelde regio. Voor de regio's Singapore, Brazilië - zuid en Azië - oost worden alle klantgegevens opgeslagen en verwerkt in de regio.

Problemen met machineconfiguratie oplossen

Zie Problemen met Azure Policy oplossen voor meer informatie over het oplossen van problemen met de configuratie van machines.

Meerdere toewijzingen

Op dit moment ondersteunen slechts enkele ingebouwde beleidsdefinities voor computerconfiguratie meerdere toewijzingen. Alle aangepaste beleidsregels ondersteunen echter standaard meerdere toewijzingen als u de nieuwste versie van de GuestConfiguration PowerShell-module hebt gebruikt om machineconfiguratiepakketten en -beleid te maken.

Hieronder volgt de lijst met ingebouwde beleidsdefinities voor computerconfiguratie die ondersteuning bieden voor meerdere toewijzingen:

Id DisplayName
/providers/Microsoft.Authorization/policyDefinitions/5fe81c49-16b6-4870-9cee-45d13bf902ce Lokale verificatiemethoden moeten worden uitgeschakeld op Windows-servers
/providers/Microsoft.Authorization/policyDefinitions/fad40cac-a972-4db0-b204-f1b15cced89a Lokale verificatiemethoden moeten worden uitgeschakeld op Linux-machines
/providers/Microsoft.Authorization/policyDefinitions/f40c7c00-b4e3-4068-a315-5fe81347a904 [Preview]: Door de gebruiker toegewezen beheerde identiteit toevoegen om toewijzingen van gastconfiguratie in te schakelen op virtuele machines
/providers/Microsoft.Authorization/policyDefinitions/63594bb8-43bb-4bf0-bbf8-c67e5c28cb65 [Preview]: Linux-machines moeten voldoen aan de STIG-nalevingsvereiste voor Azure Compute
/providers/Microsoft.Authorization/policyDefinitions/50c52fc9-cb21-4d99-9031-d6a0c613361c [Preview]: Windows-machines moeten voldoen aan de STIG-nalevingsvereisten voor Azure Compute
/providers/Microsoft.Authorization/policyDefinitions/e79ffbda-ff85-465d-ab8e-7e58a55760f [Preview]: Linux-machines waarop OMI is geïnstalleerd, moeten versie 1.6.8-1 of hoger hebben
/providers/Microsoft.Authorization/policyDefinitions/934345e1-4dfb-4c70-90d7-41990dc9608b Windows-machines controleren die niet de opgegeven certificaten in Vertrouwde Hoofdmap bevatten
/providers/Microsoft.Authorization/policyDefinitions/08a2f2d2-94b2-4a7b-aa3b-bb3f523eee6fd Windows-machines controleren waarvoor de DSC-configuratie niet compatibel is
/providers/Microsoft.Authorization/policyDefinitions/c648fbbb-591c-4acd-b465-ce9b176ca173 Windows-computers controleren die niet het opgegeven Windows PowerShell-uitvoeringsbeleid bevatten
/providers/Microsoft.Authorization/policyDefinitions/3e4e2bd5-15a2-4628-b3e1-58977e9793f3 Windows-computers controleren waarop de opgegeven Windows PowerShell-modules niet zijn geïnstalleerd
/providers/Microsoft.Authorization/policyDefinitions/58c460e9-7573-4bb2-9676-339c2f2486bb Windows-machines controleren waarvoor Seriële console van Windows niet is ingeschakeld
/providers/Microsoft.Authorization/policyDefinitions/e6ebf138-3d71-4935-a13b-9c7fddddd94df Windows-machines controleren waarvoor de opgegeven services niet zijn geïnstalleerd en niet worden uitgevoerd
/providers/Microsoft.Authorization/policyDefinitions/c633f6a2-7f8b-4d9e-9456-02f0f04f5505 Windows-machines controleren die niet zijn ingesteld op de opgegeven tijdzone

Notitie

Controleer deze pagina regelmatig op updates voor de lijst met ingebouwde configuratiebeleidsdefinities voor computers die ondersteuning bieden voor meerdere toewijzingen.

Toewijzingen aan Azure-beheergroepen

Azure Policy-definities in de categorie Guest Configuration kunnen worden toegewezen aan beheergroepen wanneer het effect is AuditIfNotExists of DeployIfNotExists.

Clientlogboekbestanden

De configuratie-extensie van de machine schrijft logboekbestanden naar de volgende locaties:

Windows

  • Azure VM: C:\ProgramData\GuestConfig\gc_agent_logs\gc_agent.log
  • Server met Arc: C:\ProgramData\GuestConfig\arc_policy_logs\gc_agent.log

Linux

  • Azure VM: /var/lib/GuestConfig/gc_agent_logs/gc_agent.log
  • Server met Arc: /var/lib/GuestConfig/arc_policy_logs/gc_agent.log

Logboeken extern verzamelen

De eerste stap bij het oplossen van problemen met machineconfiguraties of -modules moet zijn om de cmdlets te gebruiken die de stappen volgen in het testen van artefacten voor machineconfiguratiepakketten. Als dat niet lukt, kan het verzamelen van clientlogboeken helpen bij het vaststellen van problemen.

Windows

Informatie vastleggen uit logboekbestanden met behulp van azure VM Run Command, het volgende powerShell-voorbeeldscript kan nuttig zijn.

$linesToIncludeBeforeMatch = 0
$linesToIncludeAfterMatch  = 10
$params = @{
    Path = 'C:\ProgramData\GuestConfig\gc_agent_logs\gc_agent.log'
    Pattern = @(
        'DSCEngine'
        'DSCManagedEngine'
    )
    CaseSensitive = $true
    Context = @(
        $linesToIncludeBeforeMatch
        $linesToIncludeAfterMatch
    )
}
Select-String @params | Select-Object -Last 10

Linux

Leg informatie vast uit logboekbestanden met behulp van de Azure VM Run Command. Het volgende Bash-voorbeeldscript kan handig zijn.

LINES_TO_INCLUDE_BEFORE_MATCH=0
LINES_TO_INCLUDE_AFTER_MATCH=10
LOGPATH=/var/lib/GuestConfig/gc_agent_logs/gc_agent.log
egrep -B $LINES_TO_INCLUDE_BEFORE_MATCH -A $LINES_TO_INCLUDE_AFTER_MATCH 'DSCEngine|DSCManagedEngine' $LOGPATH | tail

Agentbestanden

De machineconfiguratieagent downloadt inhoudspakketten naar een computer en extraheert de inhoud. Als u wilt controleren welke inhoud is gedownload en opgeslagen, bekijkt u de maplocaties in de volgende lijst.

  • Windows: C:\ProgramData\guestconfig\configuration
  • Linux: /var/lib/GuestConfig/Configuration

Functionaliteit van opensource nxtools-module

Er is een nieuwe opensource nxtools-module uitgebracht om het beheer van Linux-systemen eenvoudiger te maken voor PowerShell-gebruikers.

De module helpt bij het beheren van algemene taken, zoals:

  • Gebruikers en groepen beheren
  • Bestandssysteembewerkingen uitvoeren
  • Services beheren
  • Archiefbewerkingen uitvoeren
  • Pakketten beheren

De module bevat op klassen gebaseerde DSC-resources voor Linux en ingebouwde machineconfiguratiepakketten.

Als u feedback wilt geven over deze functionaliteit, opent u een probleem in de documentatie. We accepteren momenteel geen PULL's voor dit project en ondersteuning is het beste.

Voorbeelden van machineconfiguratie

Ingebouwde beleidsvoorbeelden voor computerconfiguratie zijn beschikbaar op de volgende locaties:

Volgende stappen