Säkerhetsöversikt för Azure Arc-aktiverade servrar
Den här artikeln beskriver de säkerhetsöverväganden och kontroller som är tillgängliga när du använder Azure Arc-aktiverade servrar. Oavsett om du är säkerhetsansvarig eller IT-operatör kan du med hjälp av informationen i den här artikeln konfigurera Azure Arc på ett sätt som uppfyller organisationens säkerhetskrav.
Ansvar
Säkerheten för distributionen av Azure Arc-aktiverade servrar är ett delat ansvar mellan dig och Microsoft. Microsoft ansvarar för:
- Skydda molntjänsten som lagrar systemmetadata och samordna åtgärder för de agenter som du ansluter till tjänsten.
- Skydda och skydda sekretessen för dina systemmetadata som lagras i Azure.
- Dokumentera valfria säkerhetsfunktioner så att du förstår fördelarna och nackdelarna med distributionsalternativ.
- Publicera regelbundna agentuppdateringar med förbättringar av säkerhet, kvalitet, prestanda och funktioner.
Du ansvarar för:
- Hantera och övervaka RBAC-åtkomst till dina Azure Arc-aktiverade resurser i din Azure-prenumeration.
- Skydda och rotera regelbundet autentiseringsuppgifterna för konton som används för att hantera Azure Arc-aktiverade servrar. Detta omfattar alla hemligheter eller autentiseringsuppgifter för tjänstens huvudnamn som används för att registrera nya servrar.
- Avgöra om och hur säkerhetsfunktioner som beskrivs i det här dokumentet (till exempel tillåtna tilläggslistor) ska tillämpas på de Azure Connected Machine-agenter som du distribuerar.
- Hålla Azure Connected Machine-agenten och tilläggen uppdaterade.
- Fastställa Azure Arcs efterlevnad av organisationens juridiska, regelmässiga och interna policyförpliktelser.
- Skydda själva servern, inklusive den beräknings-, lagrings- och nätverksinfrastruktur som används för att köra servern.
Arkitekturöversikt
Azure Arc-aktiverade servrar är en agentbaserad tjänst. Din interaktion med Azure Arc sker främst via Azures API:er, portal och hanteringsupplevelser. De data du ser och de åtgärder du vidtar i Azure vidarebefordras via Azure Connected Machine-agenten som är installerad på varje hanterad server. Azure är källan till sanningen för agenten. Det enda sättet att instruera agenten att göra något (till exempel installera ett tillägg) är att vidta en åtgärd på Azure-representationen av servern. Detta säkerställer att organisationens RBAC- och principtilldelningar kan utvärdera begäran innan några ändringar görs.
Azure Connected Machine-agenten är främst en aktiveringsplattform för andra Azure- och tredjepartstjänster. Dess kärnfunktioner är:
- Upprätta en relation mellan din dator och din Azure-prenumeration
- Tillhandahålla en hanterad identitet för agenten och andra appar som ska användas vid autentisering med Azure
- Aktivera andra funktioner (agenter, skript) med tillägg
- Utvärdera och framtvinga inställningar på servern
När Azure Connected Machine-agenten har installerats kan du aktivera andra Azure-tjänster på servern för att uppfylla dina övervaknings-, korrigeringshanterings-, fjärråtkomst- eller andra behov. Azure Arcs roll är att hjälpa till att göra det möjligt för dessa tjänster att fungera utanför Azures egna datacenter.
Du kan använda Azure Policy för att begränsa vad organisationens användare kan göra med Azure Arc. Molnbaserade begränsningar som Azure Policy är ett bra sätt att tillämpa säkerhetskontroller i stor skala och samtidigt behålla flexibiliteten att justera begränsningarna när som helst. Ibland behöver du dock ännu starkare kontroller för att skydda mot att ett legitimt privilegierat konto används för att kringgå säkerhetsåtgärder (till exempel inaktivera principer). För att ta hänsyn till detta har Azure Connected Machine-agenten också egna säkerhetskontroller som har företräde framför eventuella begränsningar som anges i molnet.
Agenttjänster
Azure Connected Machine-agenten är en kombination av fyra tjänster/daemons som körs på servern och som hjälper dig att ansluta den till Azure. De installeras tillsammans som ett enda program och hanteras centralt med hjälp av kommandoradsgränssnittet azcmagent.
Metadatatjänst för hybridinstanser
Hybrid Instance Metadata Service (HIMDS) är "kärntjänsten" i agenten och ansvarar för att registrera servern med Azure, pågående metadatasynkronisering (pulsslag), hanterade identitetsåtgärder och värd för det lokala REST-API som andra appar kan fråga för att lära sig om enhetens anslutning till Azure. Den här tjänsten är oprivilegierad och körs som ett virtuellt konto (NT SERVICE\himds med SID S-1-5-80-4215458991-20342522 25-2287069555-1155419622-2701885083) på Windows eller ett standardanvändarkonto (himds) på Linux-operativsystem.
Tilläggshanteraren
Tilläggshanteraren ansvarar för att installera, konfigurera, uppgradera och ta bort ytterligare programvara på datorn. Azure Arc vet inte hur man gör, till exempel övervaka eller korrigera datorn. När du väljer att använda dessa funktioner laddar tilläggshanteraren i stället ned och aktiverar dessa funktioner. Tilläggshanteraren körs som lokalt system i Windows och rot i Linux eftersom den programvara som installeras kan kräva fullständig systemåtkomst. Du kan begränsa vilka tillägg som tilläggshanteraren får installera eller inaktivera helt om du inte tänker använda tillägg.
Gästkonfiguration
Gästkonfigurationstjänsten utvärderar och tillämpar konfigurationsprinciper för Azure-datorer (gäst) på servern. Det här är särskilda Azure-principer som skrivits i PowerShell Desired State Configuration för att kontrollera programvaruinställningarna på en server. Gästkonfigurationstjänsten utvärderar regelbundet och rapporterar om efterlevnad av dessa principer, och om principen har konfigurerats i framtvingat läge ändrar du inställningarna i systemet för att återställa datorns efterlevnad om det behövs. Gästkonfigurationstjänsten körs som lokalt system i Windows och rot i Linux för att säkerställa att den har åtkomst till alla inställningar i systemet. Du kan inaktivera gästkonfigurationsfunktionen om du inte tänker använda gästkonfigurationsprinciper.
Azure Arc-proxy
Azure Arc-proxytjänsten ansvarar för att aggregera nätverkstrafik från Azure Connected Machine-agenttjänsterna och eventuella tillägg som du har installerat och bestämma var data ska dirigeras. Om du använder Azure Arc Gateway för att förenkla nätverksslutpunkterna är Azure Arc Proxy-tjänsten den lokala komponenten som vidarebefordrar nätverksbegäranden via Azure Arc Gateway i stället för standardvägen. Azure Arc-proxyn körs som nätverkstjänst i Windows och ett standardanvändarkonto (arcproxy) i Linux. Den är inaktiverad som standard tills du konfigurerar agenten att använda Azure Arc Gateway.
Säkerhetsöverväganden för tillgångar på nivå 0
Nivå 0-tillgångar som en Active Directory-domän-styrenhet, certifikatutfärdarserver eller mycket känslig affärsprogramserver kan anslutas till Azure Arc med extra försiktighet för att säkerställa att endast de önskade hanteringsfunktionerna och behöriga användare kan hantera servrarna. De här rekommendationerna krävs inte, men vi rekommenderar starkt att du behåller säkerhetsstatusen för dina tillgångar på nivå 0.
Dedikerad Azure-prenumeration
Åtkomst till Azure Arc-aktiverade servrar bestäms ofta av den organisationshierarki som den tillhör i Azure. Du bör behandla alla prenumerationer eller hanteringsgruppsadministratörer som likvärdiga med en lokal administratör på nivå 0-tillgångar eftersom de kan använda sina behörigheter för att lägga till nya rolltilldelningar i Azure Arc-resursen. Dessutom kan principer som tillämpas på prenumerations- eller hanteringsgruppsnivå också ha behörighet att göra ändringar på servern.
Om du vill minimera antalet konton och principer med åtkomst till dina tillgångar på nivå 0 bör du överväga att använda en dedikerad Azure-prenumeration som kan övervakas noggrant och konfigureras med så få beständiga administratörer som möjligt. Granska Azure-principer i överordnade hanteringsgrupper för att se till att de är anpassade till din avsikt för dessa servrar.
Inaktivera onödiga hanteringsfunktioner
För en nivå 0-tillgång bör du använda de lokala agentsäkerhetskontrollerna för att inaktivera oanvända funktioner i agenten för att förhindra avsiktlig eller oavsiktlig användning av dessa funktioner för att göra ändringar på servern. Detta omfattar:
- Inaktivera funktioner för fjärråtkomst
- Ange en tilläggslista för de tillägg som du tänker använda eller inaktivera tilläggshanteraren om du inte använder tillägg
- Inaktivera datorkonfigurationsagenten om du inte tänker använda konfigurationsprinciper för datorer
I följande exempel visas hur du låser Azure Connected Machine-agenten för en domänkontrollant som behöver använda Azure Monitor-agenten för att samla in säkerhetsloggar för Microsoft Sentinel och Microsoft Defender för servrar för att skydda mot hot mot skadlig kod:
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”