Beveiligingsoverzicht voor servers met Azure Arc
In dit artikel worden de beveiligingsoverwegingen en besturingselementen beschreven die beschikbaar zijn bij het gebruik van servers met Azure Arc. Of u nu een beveiligingsmedewerker of IT-operator bent, de informatie in dit artikel laat u azure Arc op een manier configureren die voldoet aan de beveiligingsvereisten van uw organisatie.
Verantwoordelijkheden
De beveiliging van uw azure Arc-serversimplementatie is een gedeelde verantwoordelijkheid tussen u en Microsoft. Microsoft is verantwoordelijk voor:
- Het beveiligen van de cloudservice waarin systeemmetagegevens worden opgeslagen en bewerkingen worden georganiseerd voor de agents die u met de service verbindt.
- Beveiliging en bescherming van de privacy van uw systeemmetagegevens die zijn opgeslagen in Azure.
- Documenteer optionele beveiligingsfuncties, zodat u de voordelen en nadelen van implementatieopties begrijpt.
- Regelmatige agentupdates publiceren met beveiligings-, kwaliteit-, prestatie- en functieverbeteringen.
U bent verantwoordelijk voor:
- RBAC-toegang tot uw azure Arc-resources in uw Azure-abonnement beheren en bewaken.
- Beveilig en roteer regelmatig de referenties van accounts die worden gebruikt voor het beheren van servers met Azure Arc. Dit omvat alle geheimen of referenties van de service-principal die worden gebruikt voor het onboarden van nieuwe servers.
- Bepalen of en hoe beveiligingsfuncties die in dit document worden beschreven (bijvoorbeeld extensie-acceptatielijsten) moeten worden toegepast op de Azure Connected Machine-agents die u implementeert.
- De Azure Connected Machine-agent en -extensies up-to-date houden.
- Bepalen of Azure Arc voldoet aan de wettelijke en wettelijke en wettelijke verplichtingen van uw organisatie en interne beleidsverplichtingen.
- De server zelf beveiligen, inclusief de reken-, opslag- en netwerkinfrastructuur die wordt gebruikt om de server uit te voeren.
Architectuuroverzicht
Servers met Azure Arc zijn een service op basis van agents. Uw interactie met Azure Arc is voornamelijk via de API's, portal en beheer van Azure. De gegevens die u ziet en acties die u in Azure uitvoert, worden doorgestuurd via de Azure Connected Machine-agent die op elke beheerde server is geïnstalleerd. Azure is de bron van waarheid voor de agent. De enige manier om de agent te vertellen iets te doen (bijvoorbeeld een extensie installeren) is door een actie uit te voeren op de Azure-weergave van de server. Dit zorgt ervoor dat de RBAC- en beleidstoewijzingen van uw organisatie de aanvraag kunnen evalueren voordat er wijzigingen worden aangebracht.
De Azure Connected Machine-agent is voornamelijk een inschakelingsplatform voor andere Azure- en externe services. De kernfunctionaliteiten zijn onder andere:
- Een relatie tot stand brengen tussen uw computer en uw Azure-abonnement
- Een beheerde identiteit verleent voor de agent en andere apps die moeten worden gebruikt bij het verifiëren met Azure
- Andere mogelijkheden (agents, scripts) met extensies inschakelen
- Instellingen evalueren en afdwingen op uw server
Zodra de Azure Connected Machine-agent is geïnstalleerd, kunt u andere Azure-services op uw server inschakelen om te voldoen aan uw bewaking, patchbeheer, externe toegang of andere behoeften. De rol van Azure Arc is om deze services in staat te stellen buiten de eigen datacenters van Azure te werken.
U kunt Azure Policy gebruiken om te beperken wat de gebruikers van uw organisatie met Azure Arc kunnen doen. Cloudbeperkingen zoals Azure Policy zijn een uitstekende manier om beveiligingsmaatregelen op schaal toe te passen en tegelijkertijd flexibiliteit te behouden om de beperkingen op elk gewenst moment aan te passen. Soms hebt u echter nog sterkere besturingselementen nodig om te beschermen tegen een legitiem bevoegd account dat wordt gebruikt om beveiligingsmaatregelen te omzeilen (bijvoorbeeld het uitschakelen van beleid). Hiervoor heeft de Azure Connected Machine-agent ook beveiligingscontroles die voorrang hebben op eventuele beperkingen die zijn ingesteld in de cloud.
Agentservices
De Azure Connected Machine-agent is een combinatie van vier services/daemons die op uw server worden uitgevoerd en waarmee u deze kunt verbinden met Azure. Ze worden samen geïnstalleerd als één toepassing en worden centraal beheerd met behulp van de opdrachtregelinterface azcmagent.
Metagegevensservice voor hybride exemplaren
De Hybrid Instance Metadata Service (HIMDS) is de 'core'-service in de agent en is verantwoordelijk voor het registreren van de server bij Azure, doorlopende metagegevenssynchronisatie (heartbeats), beheerde identiteiten en het hosten van de lokale REST API die andere apps kunnen opvragen voor meer informatie over de verbinding van het apparaat met Azure. Deze service is niet gemachtigd en wordt uitgevoerd als een virtueel account (NT SERVICE\himds met SID S-1-5-80-4215458991-2034252225-2287069555-1155419622-2701885083) in Windows of een standaardgebruikersaccount (himds) op Linux-besturingssystemen.
Extensiebeheer
De extensiebeheerder is verantwoordelijk voor het installeren, configureren, upgraden en verwijderen van extra software op uw computer. Standaard weet Azure Arc niet hoe u dingen moet doen, zoals uw computer bewaken of patchen. Wanneer u ervoor kiest om deze functies te gebruiken, downloadt de extensiebeheerder deze functies en schakelt u deze mogelijkheden in. Het extensiebeheer wordt uitgevoerd als lokaal systeem in Windows en root op Linux omdat voor de software die wordt geïnstalleerd mogelijk volledige systeemtoegang is vereist. U kunt beperken welke extensies de extensiebeheerder mag installeren of volledig uitschakelen als u niet van plan bent om extensies te gebruiken.
Gastconfiguratie
De gastconfiguratieservice evalueert en dwingt configuratiebeleidsregels voor Azure-machines (gast) af op uw server. Dit zijn speciale Azure-beleidsregels die zijn geschreven in PowerShell Desired State Configuration om software-instellingen op een server te controleren. De gastconfiguratieservice evalueert en rapporteert regelmatig over naleving van dit beleid. Als het beleid is geconfigureerd in de afdwingingsmodus, worden instellingen op uw systeem gewijzigd om de computer indien nodig weer in overeenstemming te brengen. De gastconfiguratieservice wordt uitgevoerd als lokaal systeem in Windows en root op Linux om ervoor te zorgen dat deze toegang heeft tot alle instellingen op uw systeem. U kunt de functie voor gastconfiguratie uitschakelen als u geen gastconfiguratiebeleid wilt gebruiken.
Azure Arc-proxy
De Azure Arc-proxyservice is verantwoordelijk voor het aggregeren van netwerkverkeer van de Azure Connected Machine-agentservices en eventuele extensies die u hebt geïnstalleerd en bepalen waar die gegevens moeten worden gerouteerd. Als u azure Arc Gateway gebruikt om uw netwerkeindpunten te vereenvoudigen, is de Azure Arc Proxy-service het lokale onderdeel dat netwerkaanvragen doorstuurt via de Azure Arc-gateway in plaats van de standaardroute. De Azure Arc-proxy wordt uitgevoerd als netwerkservice in Windows en een standaardgebruikersaccount (arcproxy) op Linux. Deze functie is standaard uitgeschakeld totdat u de agent configureert voor het gebruik van de Azure Arc-gateway.
Beveiligingsoverwegingen voor assets op laag 0
Laag 0-assets, zoals een Active Directory-domein Controller, Certificeringsinstantieserver of zeer gevoelige bedrijfstoepassingsserver, kunnen met extra zorg worden verbonden met Azure Arc om ervoor te zorgen dat alleen de gewenste beheerfuncties en geautoriseerde gebruikers de servers kunnen beheren. Deze aanbevelingen zijn niet vereist, maar worden sterk aanbevolen om de beveiligingspostuur van uw laag 0-assets te behouden.
Toegewezen Azure-abonnement
Toegang tot servers met Azure Arc wordt vaak bepaald door de organisatiehiërarchie waartoe deze behoort in Azure. U moet een abonnements- of beheergroepbeheerder behandelen als gelijkwaardig aan een lokale beheerder op laag 0-assets, omdat ze hun machtigingen kunnen gebruiken om nieuwe roltoewijzingen toe te voegen aan de Azure Arc-resource. Daarnaast is het mogelijk dat beleidsregels die op abonnements- of beheergroepniveau worden toegepast, ook machtigingen hebben om wijzigingen aan te brengen in de server.
Als u het aantal accounts en beleidsregels met toegang tot uw laag 0-assets wilt minimaliseren, kunt u overwegen een toegewezen Azure-abonnement te gebruiken dat nauw kan worden bewaakt en geconfigureerd met zo weinig mogelijk permanente beheerders. Controleer Azure-beleid in bovenliggende beheergroepen om ervoor te zorgen dat ze zijn afgestemd op uw intentie voor deze servers.
Onnodige beheerfuncties uitschakelen
Voor een laag 0-asset moet u de beveiligingsmaatregelen van de lokale agent gebruiken om ongebruikte functionaliteit in de agent uit te schakelen om opzettelijk of per ongeluk gebruik van deze functies te voorkomen om wijzigingen aan te brengen in de server. Dit zijn onder andere de nieuwe mogelijkheden:
- Mogelijkheden voor externe toegang uitschakelen
- Het instellen van een acceptatielijst voor de extensies die u wilt gebruiken, of het uitschakelen van extensiebeheer als u geen extensies gebruikt
- De machineconfiguratieagent uitschakelen als u niet van plan bent om computerconfiguratiebeleid te gebruiken
In het volgende voorbeeld ziet u hoe u de Azure Connected Machine-agent vergrendelt voor een domeincontroller die de Azure Monitor-agent moet gebruiken om beveiligingslogboeken voor Microsoft Sentinel en Microsoft Defender for Servers te verzamelen om te beschermen tegen malwarebedreigingen:
azcmagent config set incomingconnections.enabled false
azcmagent config set guestconfiguration.enabled false
azcmagent config set extensions.allowlist “Microsoft.Azure.Monitor/AzureMonitorWindowsAgent,Microsoft.Azure.AzureDefenderForServers/MDE.Windows”