Gastconfiguratie van Azure Policy begrijpenUnderstand Azure Policy's Guest Configuration

Azure Policy kunt instellingen in een computer controleren, zowel voor machines die worden uitgevoerd in azure als met Arc verbonden computers.Azure Policy can audit settings inside a machine, both for machines running in Azure and Arc Connected Machines. De validatie wordt uitgevoerd door de extensie en client voor gastconfiguratie.The validation is performed by the Guest Configuration extension and client. De extensie valideert, via de client, instellingen zoals:The extension, through the client, validates settings such as:

  • De configuratie van het besturingssysteemThe configuration of the operating system
  • Configuratie of aanwezigheid van toepassingenApplication configuration or presence
  • OmgevingsinstellingenEnvironment settings

Op dit moment worden in de meeste Azure Policy beleids definities voor gast configuratie alleen de instellingen van de computer gecontroleerd.At this time, most Azure Policy Guest Configuration policy definitions only audit settings inside the machine. U kunt ze niet om configuraties toepassen.They don't apply configurations. De uitzonde ring hierop is één ingebouwd beleid waarnaar hieronder wordt verwezen.The exception is one built-in policy referenced below.

Gast configuratie inschakelenEnable Guest Configuration

Als u de status van machines in uw omgeving wilt controleren, inclusief machines in Azure en Arc Connected machines, raadpleegt u de volgende details.To audit the state of machines in your environment, including machines in Azure and Arc Connected Machines, review the following details.

ResourceproviderResource provider

Voordat u de gast configuratie kunt gebruiken, moet u de resource provider registreren.Before you can use Guest Configuration, you must register the resource provider. De resource provider wordt automatisch geregistreerd als de toewijzing van een gast configuratie beleid wordt uitgevoerd via de portal.The resource provider is registered automatically if assignment of a Guest Configuration policy is done through the portal. U kunt hand matig registreren via de Portal, Azure POWERSHELLof Azure cli.You can manually register through the portal, Azure PowerShell, or Azure CLI.

Vereisten voor Azure virtual machines implementerenDeploy requirements for Azure virtual machines

Voor het controleren van instellingen op een machine is de extensie van de virtuele machine ingeschakeld en moet de computer een door het systeem beheerde identiteit hebben.To audit settings inside a machine, a virtual machine extension is enabled and the machine must have a system-managed identity. De extensie downloadt de toepasselijke beleidstoewijzing en de bijbehorende configuratiedefinitie.The extension downloads applicable policy assignment and the corresponding configuration definition. De identiteit wordt gebruikt om de computer te verifiëren tijdens het lezen en schrijven naar de gast configuratie service.The identity is used to authenticate the machine as it reads and writes to the Guest Configuration service. De uitbrei ding is niet vereist voor met Arc verbonden computers, omdat deze is opgenomen in de Arc Connected machine agent.The extension isn't required for Arc Connected Machines because it's included in the Arc Connected Machine agent.

Belangrijk

De gast configuratie-extensie en een beheerde identiteit zijn vereist voor het controleren van virtuele Azure-machines.The Guest Configuration extension and a managed identity is required to audit Azure virtual machines. Wijs het volgende beleids initiatief toe om de uitbrei ding op schaal te implementeren:To deploy the extension at scale, assign the following policy initiative:

Deploy prerequisites to enable Guest Configuration policies on virtual machines

Limieten die zijn ingesteld voor de uitbrei dingLimits set on the extension

Als u de uitbrei ding wilt beperken voor toepassingen die worden uitgevoerd op de computer, mag de gast configuratie niet meer dan 5% van de CPU overschrijden.To limit the extension from impacting applications running inside the machine, the Guest Configuration isn't allowed to exceed more than 5% of CPU. Deze beperking bestaat voor zowel ingebouwde als aangepaste definities.This limitation exists for both built-in and custom definitions. Hetzelfde geldt voor de gast configuratie service in Arc Connected machine agent.The same is true for the Guest Configuration service in Arc Connected Machine agent.

Validatie hulpprogramma'sValidation tools

In de computer gebruikt de gast configuratie-client lokale hulpprogram ma's om de controle uit te voeren.Inside the machine, the Guest Configuration client uses local tools to run the audit.

De volgende tabel bevat een lijst met de lokale hulpprogram ma's die op elk ondersteund besturings systeem worden gebruikt.The following table shows a list of the local tools used on each supported operating system. Voor ingebouwde inhoud verwerkt gast configuratie automatisch het laden van deze hulpprogram ma's.For built-in content, Guest Configuration handles loading these tools automatically.

BesturingssysteemOperating system Validatie programmaValidation tool NotitiesNotes
WindowsWindows Power shell desired state Configuration v2PowerShell Desired State Configuration v2 Een kant geladen naar een map die alleen door Azure Policy wordt gebruikt.Side-loaded to a folder only used by Azure Policy. Er is geen conflict met Windows Power shell DSC.Won't conflict with Windows PowerShell DSC. Power shell Core is niet toegevoegd aan het systeempad.PowerShell Core isn't added to system path.
LinuxLinux Chef-specificatieChef InSpec Installeert chef Inspec-versie 2.2.61 op de standaard locatie en wordt toegevoegd aan het systeempad.Installs Chef InSpec version 2.2.61 in default location and added to system path. Afhankelijkheden voor het INSPEC-pakket, waaronder Ruby en Python, worden ook geïnstalleerd.Dependencies for the InSpec package including Ruby and Python are installed as well.

Validatie frequentieValidation frequency

De gast configuratie client controleert elke vijf minuten op nieuwe inhoud.The Guest Configuration client checks for new content every 5 minutes. Zodra een gast toewijzing is ontvangen, worden de instellingen voor die configuratie opnieuw gecontroleerd met een interval van vijf tien minuten.Once a guest assignment is received, the settings for that configuration are rechecked on a 15-minute interval. Er worden resultaten verzonden naar de provider van de gast configuratie bron wanneer de controle is voltooid.Results are sent to the Guest Configuration resource provider when the audit completes. Wanneer er een beleids evaluatie wordt uitgevoerd, wordt de status van de machine naar de provider van de gast configuratie genoteerd.When a policy evaluation trigger occurs, the state of the machine is written to the Guest Configuration resource provider. Deze update zorgt ervoor Azure Policy de Azure Resource Manager eigenschappen te evalueren.This update causes Azure Policy to evaluate the Azure Resource Manager properties. Een Azure Policy evaluatie op aanvraag haalt de meest recente waarde op van de provider van de gast configuratie resource.An on-demand Azure Policy evaluation retrieves the latest value from the Guest Configuration resource provider. Er wordt echter geen nieuwe controle van de configuratie op de computer geactiveerd.However, it doesn't trigger a new audit of the configuration within the machine.

Ondersteunde client typenSupported client types

Beleids definities voor gast configuratie zijn inclusief nieuwe versies.Guest Configuration policy definitions are inclusive of new versions. Oudere versies van besturings systemen die beschikbaar zijn in azure Marketplace, worden uitgesloten als de gast configuratie-client niet compatibel is.Older versions of operating systems available in Azure Marketplace are excluded if the Guest Configuration client isn't compatible. In de volgende tabel ziet u een lijst met ondersteunde besturings systemen in azure-installatie kopieën:The following table shows a list of supported operating systems on Azure images:

PublisherPublisher NaamName VersiesVersions
CanonicalCanonical Ubuntu ServerUbuntu Server 14,04-18,0414.04 - 18.04
CredativCredativ DebianDebian 8 en hoger8 and later
MicrosoftMicrosoft Windows ServerWindows Server 2012 en hoger2012 and later
MicrosoftMicrosoft Windows-clientWindows Client Windows 10Windows 10
OpenLogicOpenLogic CentOSCentOS 7,3 en hoger7.3 and later
Red HatRed Hat Red Hat Enterprise LinuxRed Hat Enterprise Linux 7,4-7,87.4 - 7.8
SuSESuse SLESSLES 12 SP3-SP512 SP3-SP5

Aangepaste installatie kopieën van virtuele machines worden ondersteund door beleids definities voor gast configuraties zolang ze een van de besturings systemen in de bovenstaande tabel zijn.Custom virtual machine images are supported by Guest Configuration policy definitions as long as they're one of the operating systems in the table above.

NetwerkvereistenNetwork requirements

Virtuele machines in azure kunnen de lokale netwerk adapter of een persoonlijke koppeling gebruiken om te communiceren met de gast configuratie service.Virtual machines in Azure can use either their local network adapter or a private link to communicate with the Guest Configuration service.

Azure-computers verbinden met behulp van de on-premises netwerk infrastructuur om Azure-Services te bereiken en de nalevings status van het rapport te rapporteren.Azure Arc machines connect using the on-premises network infrastructure to reach Azure services and report compliance status.

Communiceren via virtuele netwerken in azureCommunicate over virtual networks in Azure

Voor virtuele machines die gebruikmaken van virtuele netwerken voor communicatie is uitgaande toegang tot Azure-data centers op poort vereist 443 .Virtual machines using virtual networks for communication will require outbound access to Azure datacenters on port 443. Als u een particulier virtueel netwerk in azure gebruikt dat geen uitgaand verkeer toestaat, moet u uitzonde ringen configureren met de regels voor de netwerk beveiligings groep.If you're using a private virtual network in Azure that doesn't allow outbound traffic, configure exceptions with Network Security Group rules. De servicetag ' GuestAndHybridManagement ' kan worden gebruikt om te verwijzen naar de gast configuratie service.The service tag "GuestAndHybridManagement" can be used to reference the Guest Configuration service.

Virtuele machines kunnen een persoonlijke koppeling gebruiken voor communicatie met de gast configuratie service.Virtual machines can use private link for communication to the Guest Configuration service. Pas tag toe met de naam EnablePrivateNeworkGC (zonder ' t ' in het netwerk) en de waarde TRUE om deze functie in te scha kelen.Apply tag with the name EnablePrivateNeworkGC (with no "t" in Network) and value TRUE to enable this feature. De tag kan worden toegepast vóór of na het Toep assen van beleids definities voor gast configuratie op de computer.The tag can be applied before or after Guest Configuration policy definitions are applied to the machine.

Verkeer wordt gerouteerd met behulp van het virtuele openbaar IP-adres van Azure om een beveiligd, geverifieerd kanaal met Azure-platform bronnen te maken.Traffic is routed using the Azure virtual public IP address to establish a secure, authenticated channel with Azure platform resources.

Verbonden Azure Arc-machinesAzure Arc connected machines

Knoop punten die zich buiten Azure bevinden en die zijn verbonden met Azure Arc, vereisen connectiviteit met de gast configuratie service.Nodes located outside Azure that are connected by Azure Arc require connectivity to the Guest Configuration service. Details over netwerk-en proxy vereisten in de documentatie van Azure Arc.Details about network and proxy requirements provided in the Azure Arc documentation.

Voor de communicatie met de provider van de gast configuratie resource in azure, hebben computers uitgaande toegang tot Azure-data centers op poort 443.To communicate with the Guest Configuration resource provider in Azure, machines require outbound access to Azure datacenters on port 443. Als een netwerk in azure geen uitgaand verkeer toestaat, moet u uitzonde ringen configureren met de regels voor de netwerk beveiligings groep .If a network in Azure doesn't allow outbound traffic, configure exceptions with Network Security Group rules. De servicetag ' GuestAndHybridManagement ' kan worden gebruikt om te verwijzen naar de gast configuratie service.The service tag "GuestAndHybridManagement" can be used to reference the Guest Configuration service.

Voor Arc connected servers in private data centers, verkeer toestaan met de volgende patronen:For Arc connected servers in private datacenters, allow traffic using the following patterns:

  • Poort: alleen TCP 443 vereist voor uitgaande internet toegangPort: Only TCP 443 required for outbound internet access
  • Globale URL: *.guestconfiguration.azure.comGlobal URL: *.guestconfiguration.azure.com

Vereisten voor beheerde identiteitManaged identity requirements

Met beleids definities in het initiatief voor het implementeren van vereisten om gast configuratie beleid in te scha kelen op virtuele machines , kan een door het systeem toegewezen beheerde identiteit worden ingeschakeld als er geen bestaat.Policy definitions in the initiative Deploy prerequisites to enable Guest Configuration policies on virtual machines enable a system-assigned managed identity, if one doesn't exist. Er zijn twee beleids definities in het initiatief die het maken van identiteiten beheren.There are two policy definitions in the initiative that manage identity creation. De IF-voor waarden in de beleids definities zorgen voor het juiste gedrag op basis van de huidige status van de machine resource in Azure.The IF conditions in the policy definitions ensure the correct behavior based on the current state of the machine resource in Azure.

Als de computer momenteel geen beheerde identiteiten heeft, is het effectief beleid: aan het systeem toegewezen beheerde identiteit toevoegen om gast configuratie toewijzingen op virtuele machines zonder identiteiten in te scha kelenIf the machine doesn't currently have any managed identities, the effective policy will be: Add system-assigned managed identity to enable Guest Configuration assignments on virtual machines with no identities

Als de computer momenteel een door de gebruiker toegewezen systeem identiteit heeft, is het effectief beleid: door het systeem toegewezen beheerde identiteit toevoegen om gast configuratie toewijzingen op vm's met een door de gebruiker toegewezen identiteit in te scha kelenIf the machine currently has a user-assigned system identity, the effective policy will be: Add system-assigned managed identity to enable Guest Configuration assignments on VMs with a user-assigned identity

Vereisten voor gast configuratie definitieGuest Configuration definition requirements

Beleids definities voor gast configuraties gebruiken het AuditIfNotExists -effect.Guest Configuration policy definitions use the AuditIfNotExists effect. Wanneer de definitie wordt toegewezen, wordt de levens cyclus van alle vereisten in de Azure-resource provider automatisch door een back-end-service afgehandeld Microsoft.GuestConfiguration .When the definition is assigned, a back-end service automatically handles the lifecycle of all requirements in the Microsoft.GuestConfiguration Azure resource provider.

De AuditIfNotExists -beleids definities retour neren geen compliantie resultaten totdat aan alle vereisten wordt voldaan op de computer.The AuditIfNotExists policy definitions won't return compliance results until all requirements are met on the machine. De vereisten worden beschreven in de sectie vereisten voor Azure virtual machines implementerenThe requirements are described in section Deploy requirements for Azure virtual machines

Belangrijk

In een eerdere versie van de gast configuratie was een initiatief vereist om DeployIfNoteExists -en AuditIfNotExists -definities te combi neren.In a prior release of Guest Configuration, an initiative was required to combine DeployIfNoteExists and AuditIfNotExists definitions. DeployIfNotExists -definities zijn niet meer vereist.DeployIfNotExists definitions are no longer required. De definities en intiaitives hebben een label, [Deprecated] maar bestaande toewijzingen blijven functioneren.The definitions and intiaitives are labeled [Deprecated] but existing assignments will continue to function. Zie voor meer informatie het blog bericht: belang rijke wijziging vrijgegeven voor controle beleid gast configuratieFor information see the blog post: Important change released for Guest Configuration audit policies

Azure Policy maakt gebruik van de eigenschap complianceStatus van de gast configuratie resource provider om naleving te rapporteren in het knoop punt naleving .Azure Policy uses the Guest Configuration resource provider complianceStatus property to report compliance in the Compliance node. Zie nalevings gegevens ophalenvoor meer informatie.For more information, see getting compliance data.

De instellingen van het besturings systeem controleren volgens de industrie basislijnenAuditing operating system settings following industry baselines

Een initiatief in Azure Policy controleert de instellingen van het besturings systeem na een basis lijn.One initiative in Azure Policy audits operating system settings following a "baseline". De definitie, [ Preview ] : Windows-computers moeten voldoen aan de vereisten voor de basis lijn van Azure Security bevat een set regels op basis van Active Directory groepsbeleid.The definition, [Preview]: Windows machines should meet requirements for the Azure security baseline includes a set of rules based on Active Directory Group Policy.

De meeste instellingen zijn beschikbaar als para meters.Most of the settings are available as parameters. Met para meters kunt u bepalen wat er wordt gecontroleerd.Parameters allow you to customize what is audited. Lijn het beleid uit met uw vereisten of wijs het beleid toe aan gegevens van derden, zoals industriële regelgevende normen.Align the policy with your requirements or map the policy to third-party information such as industry regulatory standards.

Sommige para meters ondersteunen een bereik van gehele waarden.Some parameters support an integer value range. Met de instelling maximale wachtwoord duur kunt u bijvoorbeeld de instelling effectief groepsbeleid controleren.For example, the Maximum Password Age setting could audit the effective Group Policy setting. Een bereik van ' 1, 70 ' zou bevestigen dat gebruikers hun wacht woord moeten wijzigen ten minste elke 70 dagen, maar niet minder dan een dag.A "1,70" range would confirm that users are required to change their passwords at least every 70 days, but no less than one day.

Als u het beleid toewijst met behulp van een Azure Resource Manager sjabloon (ARM-sjabloon), gebruikt u een parameter bestand voor het beheren van uitzonde ringen.If you assign the policy using an Azure Resource Manager template (ARM template), use a parameters file to manage exceptions. Controleer de bestanden in een versie beheersysteem, zoals git.Check in the files to a version control system such as Git. Opmerkingen over bestands wijzigingen bieden bewijs waarom een toewijzing een uitzonde ring is op de verwachte waarde.Comments about file changes provide evidence why an assignment is an exception to the expected value.

Configuraties Toep assen met behulp van gast configuratieApplying configurations using Guest Configuration

Alleen de definitie configureren van de tijd zone op Windows-machines wijzigt de machine door de tijd zone te configureren.Only the definition Configure the time zone on Windows machines makes changes to the machine by configuring the time zone. Aangepaste beleids definities voor het configureren van instellingen binnen machines worden niet ondersteund.Custom policy definitions for configuring settings inside machines aren't supported.

Bij het toewijzen van definities die beginnen met configureren, moet u ook de vereisten voor definitie-implementatie toewijzen om gast configuratie beleid in te scha kelen op Windows-vm's.When assigning definitions that begin with Configure, you must also assign the definition Deploy prerequisites to enable Guest Configuration Policy on Windows VMs. U kunt deze definities in een initiatief combi neren, indien gewenst.You can combine these definitions in an initiative if you choose.

Notitie

Het ingebouwde tijd zone beleid is de enige definitie die het configureren van instellingen binnen machines ondersteunt en aangepaste beleids definities waarmee instellingen worden geconfigureerd binnen machines worden niet ondersteund.The built-in time zone policy is the only definition that supports configuring settings inside machines and custom policy definitions that configure settings inside machines aren't supported.

Beleids regels toewijzen aan computers buiten AzureAssigning policies to machines outside of Azure

De controle beleids definities die beschikbaar zijn voor gast configuratie zijn onder andere het resource type micro soft. HybridCompute/machines .The Audit policy definitions available for Guest Configuration include the Microsoft.HybridCompute/machines resource type. Computers die worden uitgevoerd op Azure Arc voor servers die zich binnen het bereik van de beleids toewijzing bevinden, worden automatisch opgenomen.Any machines onboarded to Azure Arc for servers that are in the scope of the policy assignment are automatically included.

Problemen met de gast configuratie oplossenTroubleshooting guest configuration

Zie Azure Policy Troubleshooting(Engelstalig) voor meer informatie over het oplossen van problemen met de gast configuratie.For more information about troubleshooting Guest Configuration, see Azure Policy troubleshooting.

Meerdere toewijzingenMultiple assignments

Beleids definities voor gast configuraties bieden momenteel alleen ondersteuning voor het toewijzen van dezelfde gast toewijzing per computer, zelfs als de beleids toewijzing gebruikmaakt van verschillende para meters.Guest Configuration policy definitions currently only support assigning the same Guest Assignment once per machine, even if the Policy assignment uses different parameters.

Client logboek bestandenClient log files

De gast configuratie-extensie schrijft logboek bestanden naar de volgende locaties:The Guest Configuration extension writes log files to the following locations:

Windows: C:\ProgramData\GuestConfig\gc_agent_logs\gc_agent.logWindows: C:\ProgramData\GuestConfig\gc_agent_logs\gc_agent.log

Linux: /var/lib/GuestConfig/gc_agent_logs/gc_agent.logLinux: /var/lib/GuestConfig/gc_agent_logs/gc_agent.log

Logboeken extern verzamelenCollecting logs remotely

De eerste stap in het oplossen van problemen met configuratie van gast configuraties of modules moet zijn om de-cmdlet te gebruiken Test-GuestConfigurationPackage volgens de stappen voor het maken van een aangepaste gast configuratie-controle beleid voor Windows.The first step in troubleshooting Guest Configuration configurations or modules should be to use the Test-GuestConfigurationPackage cmdlet following the steps how to create a custom Guest Configuration audit policy for Windows. Als dat niet lukt, kan het verzamelen van client logboeken helpen bij het vaststellen van problemen.If that isn't successful, collecting client logs can help diagnose issues.

WindowsWindows

Gegevens vastleggen vanuit logboek bestanden met de opdracht Azure VM run. het volgende voor beeld van een Power shell-script kan nuttig zijn.Capture information from log files using Azure VM Run Command, the following example PowerShell script can be helpful.

$linesToIncludeBeforeMatch = 0
$linesToIncludeAfterMatch = 10
$logPath = 'C:\ProgramData\GuestConfig\gc_agent_logs\gc_agent.log'
Select-String -Path $logPath -pattern 'DSCEngine','DSCManagedEngine' -CaseSensitive -Context $linesToIncludeBeforeMatch,$linesToIncludeAfterMatch | Select-Object -Last 10

LinuxLinux

Gegevens van logboek bestanden vastleggen met behulp van de opdracht Azure VM run, het volgende voor beeld bash-script kan handig zijn.Capture information from log files using Azure VM Run Command, the following example Bash script can be helpful.

linesToIncludeBeforeMatch=0
linesToIncludeAfterMatch=10
logPath=/var/lib/GuestConfig/gc_agent_logs/gc_agent.log
egrep -B $linesToIncludeBeforeMatch -A $linesToIncludeAfterMatch 'DSCEngine|DSCManagedEngine' $logPath | tail

Client bestandenClient files

De gast configuratie-client downloadt inhouds pakketten naar een machine en extraheert de inhoud.The Guest Configuration client downloads content packages to a machine and extracts the contents. Als u wilt controleren welke inhoud is gedownload en opgeslagen, bekijkt u de hieronder vermelde locaties.To verify what content has been downloaded and stored, view the folder locations given below.

Windows: c:\programdata\guestconfig\configurationsWindows: c:\programdata\guestconfig\configurations

Linux: /var/lib/guestconfig/configurationsLinux: /var/lib/guestconfig/configurations

Voor beelden van gast configuratiesGuest Configuration samples

De ingebouwde beleids voorbeelden van de gast configuratie zijn beschikbaar op de volgende locaties:Guest Configuration built-in policy samples are available in the following locations:

Volgende stappenNext steps