Panoramica della sicurezza per i server abilitati per Azure Arc
Questo articolo descrive le considerazioni sulla sicurezza e i controlli disponibili quando si usano i server abilitati per Azure Arc. Che si tratti di un operatore IT o di un professionista della sicurezza, le informazioni contenute in questo articolo consentono di configurare in modo sicuro Azure Arc in modo da soddisfare i requisiti di sicurezza dell'organizzazione.
Responsabilità
La sicurezza della distribuzione dei server abilitati per Azure Arc è una responsabilità condivisa tra l'utente e Microsoft. Microsoft è responsabile di:
- Protezione del servizio cloud che archivia i metadati di sistema e orchestrare le operazioni per gli agenti connessi al servizio.
- proteggere la privacy dei metadati di sistema archiviati in Azure.
- documentare le funzionalità di sicurezza facoltative per comprendere i vantaggi e gli svantaggi delle opzioni di distribuzione.
- pubblicare aggiornamenti regolari degli agenti con miglioramenti di sicurezza, qualità, prestazioni e funzionalità.
L'utente è responsabile di:
- gestire e monitorare l'accesso in base al ruolo alle risorse abilitate per Azure Arc nella sottoscrizione di Azure.
- proteggere e modificare regolarmente le credenziali di tutti gli account usati per gestire i server abilitati per Azure Arc. Sono inclusi tutti i segreti o le credenziali dell'entità servizio usati per eseguire l'onboarding di nuovi server.
- Determinare se e come applicare le funzionalità di sicurezza descritte in questo documento, ad esempio gli elenchi di elementi consentiti dell'estensione, agli agenti di Azure Connected Machine distribuiti.
- Mantenere aggiornato l'agente e le estensioni di Azure Connected Machine.
- Determinazione della conformità di Azure Arc con gli obblighi legali e normativi e normativi dell'organizzazione’e ai criteri interni.
- Protezione del server stesso, inclusa l'infrastruttura di calcolo, archiviazione e rete usata per eseguire il server.
Panoramica dell'architettura
I server abilitati per Azure Arc sono un servizio basato su agente. L'interazione con Azure Arc avviene principalmente tramite le API, il portale e le esperienze di gestione di Azure. I dati visualizzati e le azioni eseguite in Azure vengono inoltrati tramite l'agente di Azure Connected Machine installato in ogni server gestito. Azure è la fonte di verità per l'agente. L'unico modo per indicare all'agente di eseguire un'operazione (ad esempio, installare un'estensione) consiste nell'eseguire un'azione sulla rappresentazione di Azure del server. Ciò consente di assicurarsi che il controllo degli accessi in base al ruolo e le assegnazioni dei criteri dell'organizzazione possano valutare la richiesta prima che vengano apportate modifiche.
L'agente di Azure Connected Machine è principalmente una piattaforma di abilitazione per altri servizi di Azure e di terze parti. Le funzionalità principali includono:
- Stabilire una relazione tra il computer e la sottoscrizione di Azure
- Fornire un'identità gestita per l'agente e altre app da usare durante l'autenticazione con Azure
- Abilitare altre funzionalità (agenti, script) con estensioni
- Valutare e applicare le impostazioni nel server
Dopo aver installato l'agente di Azure Connected Machine, è possibile abilitare altri servizi di Azure nel server per soddisfare le esigenze di monitoraggio, gestione delle patch, accesso remoto o altre esigenze. Il ruolo di Azure Arc consente di consentire a tali servizi di funzionare all'esterno dei data center di Azure.
È possibile usare Criteri di Azure per limitare le operazioni che gli utenti dell'organizzazione possono eseguire con Azure Arc. Le restrizioni basate sul cloud come Criteri di Azure sono un ottimo modo per applicare controlli di sicurezza su larga scala mantenendo al tempo stesso la flessibilità necessaria per modificare le restrizioni in qualsiasi momento. Tuttavia, a volte sono necessari controlli ancora più avanzati per proteggersi da un account con privilegi legittimo usato per aggirare le misure di sicurezza (ad esempio, disabilitando i criteri). Per tenere conto di questo, l'agente di Azure Connected Machine ha anche controlli di sicurezza propri che hanno la precedenza su qualsiasi restrizione impostata nel cloud.
Servizi agente
L'agente di Azure Connected Machine è una combinazione di quattro servizi/daemon eseguiti nel server e consentono di connetterlo ad Azure. Vengono installati insieme come singola applicazione e vengono gestiti centralmente usando l'interfaccia della riga di comando azcmagent.
Servizio metadati dell'istanza ibrida
Il servizio di metadati dell'istanza ibrida (HIMDS) è il “servizio principale” dell'agente ed è responsabile della registrazione del server con Azure, della sincronizzazione dei metadati in corso (heartbeat), delle operazioni di identità gestite e dell'hosting dell'API REST locale su cui altre app possono eseguire query per ottenere informazioni sulla connessione del dispositivo con Azure. Questo servizio non è privilegiato e viene eseguito come account virtuale (NT SERVICE\himds con SID S-1-5-80-4215458991-203425222 5-2287069555-1155419622-2701885083) in Windows o un account utente standard (himds) nei sistemi operativi Linux.
Gestione estensioni
Gestione estensioni è responsabile dell'installazione, della configurazione, dell'aggiornamento e della rimozione di software aggiuntivo nel computer. Azure Arc non è in grado di eseguire operazioni come il monitoraggio o l'applicazione di patch al computer. Al contrario, quando si sceglie di usare queste funzionalità, gestione estensioni scarica e abilita tali funzionalità. Gestione estensioni viene eseguito come sistema locale in Windows e radice in Linux perché il software installato potrebbe richiedere l'accesso completo al sistema. È possibile limitare le estensioni che il gestore estensioni può installare o disabilitare completamente se non si intende usare le estensioni.
Configurazione guest
Il servizio di configurazione guest valuta e applica i criteri di configurazione del computer di Azure (guest) nel server. Si tratta di criteri speciali di Azure scritti in PowerShell Desired State Configuration per controllare le impostazioni software in un server. Il servizio di configurazione guest valuta e segnala regolarmente la conformità con questi criteri e, se i criteri sono configurati in modalità di imposizione, modificheranno le impostazioni nel sistema per ripristinare la conformità del computer, se necessario. Il servizio di configurazione guest viene eseguito come sistema locale in Windows e radice in Linux per assicurarsi che abbia accesso a tutte le impostazioni nel sistema. È possibile disabilitare la funzionalità di configurazione guest se non si intende usare i criteri di configurazione guest.
Proxy di Azure Arc
Il servizio proxy di Azure Arc è responsabile dell'aggregazione del traffico di rete dai servizi dell'agente di Azure Connected Machine e di tutte le estensioni installate e di decidere dove instradare i dati. Se si usa Azure Arc Gateway per semplificare gli endpoint di rete, il servizio proxy di Azure Arc è il componente locale che inoltra le richieste di rete tramite il gateway Azure Arc anziché la route predefinita. Il proxy di Azure Arc viene eseguito come servizio di rete in Windows e un account utente standard (arcproxy) in Linux. Per impostazione predefinita, l'agente viene disabilitato fino a quando non si configura l'agente per l'uso di Azure Arc Gateway.
Considerazioni sulla sicurezza per gli asset di livello 0
Gli asset di livello 0, ad esempio un controller di dominio Active Directory, un server dell'autorità di certificazione o un server applicazioni aziendali altamente sensibili, possono essere connessi ad Azure Arc con particolare attenzione per garantire che solo le funzioni di gestione desiderate e gli utenti autorizzati possano gestire i server. Queste raccomandazioni non sono necessarie, ma è consigliabile mantenere il comportamento di sicurezza degli asset di livello 0.
Sottoscrizione di Azure dedicata
L'accesso ai server abilitati per Azure Arc è spesso determinato dalla gerarchia organizzativa a cui appartiene in Azure. È consigliabile considerare qualsiasi amministratore della sottoscrizione o del gruppo di gestione come equivalente a un amministratore locale per gli asset di livello 0 perché potrebbero usare le autorizzazioni per aggiungere nuove assegnazioni di ruolo alla risorsa di Azure Arc. Inoltre, i criteri applicati a livello di sottoscrizione o gruppo di gestione possono anche avere l'autorizzazione per apportare modifiche al server.
Per ridurre al minimo il numero di account e criteri con accesso agli asset di livello 0, è consigliabile usare una sottoscrizione di Azure dedicata che può essere monitorata e configurata con il minor numero possibile di amministratori persistenti. Esaminare i criteri di Azure in tutti i gruppi di gestione padre per assicurarsi che siano allineati alla finalità per questi server.
Disabilitare le funzionalità di gestione non necessarie
Per un asset di livello 0, è consigliabile usare i controlli di sicurezza dell'agente locale per disabilitare le funzionalità inutilizzate nell'agente per impedire l'uso intenzionale, o accidentale, di tali funzionalità per apportare modifiche al server. Valuta gli ambiti seguenti:
- Disabilitazione delle funzionalità di accesso remoto
- Impostazione di un elenco di estensioni consentite per le estensioni che si intende usare o disabilitazione del gestore estensioni se non si usano le estensioni
- Disabilitazione dell'agente di configurazione del computer se non si intende usare i criteri di configurazione del computer
L'esempio seguente illustra come bloccare l'agente di Azure Connected Machine per un controller di dominio che deve usare l'agente di Monitoraggio di Azure per raccogliere i log di sicurezza per Microsoft Sentinel e Microsoft Defender per i server da proteggere dalle minacce malware:
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”