Condividi tramite


Sicurezza di IoT Edge per Linux in Windows

Si applica a: Icona Sì IoT Edge 1.1

Importante

La data di fine del supporto di IoT Edge 1.1 è stata il 13 dicembre 2022. Controlla il ciclo di vita dei prodotti Microsoft per ottenere informazioni sul modo in cui viene supportato questo prodotto, servizio, tecnologia o API. Per altre informazioni sull'aggiornamento alla versione più recente di IoT Edge, vedere Aggiornare IoT Edge.

Azure IoT Edge per Linux in Windows trae vantaggio da tutte le offerte di sicurezza dall'esecuzione in un host client/server Windows e garantisce che tutti i componenti aggiuntivi mantengano la stessa sicurezza locale. Questo articolo fornisce informazioni sulle diverse impostazioni locali di sicurezza abilitate per impostazione predefinita e alcune delle impostazioni locali facoltative che l'utente può abilitare.

Sicurezza delle macchine virtuali

La macchina virtuale IoT Edge per Linux (EFLOW) è basata su Microsoft CBL-Mariner. CBL-Mariner è una distribuzione Linux interna per l'infrastruttura cloud e i servizi perimetrali di Microsoft. CBL-Mariner è progettato per offrire una piattaforma coerente per questi dispositivi e servizi e migliora la capacità di Microsoft di rimanere aggiornati sugli aggiornamenti di Linux. Per altre informazioni, vedere Sicurezza di CBL-Mariner.

La macchina virtuale EFLOW è basata su una piattaforma di sicurezza completa a tre punti:

  1. Aggiornamenti di manutenzione
  2. File system radice di sola lettura
  3. Blocco del firewall

Aggiornamenti di manutenzione

Quando si verificano vulnerabilità di sicurezza, CBL-Mariner rende disponibili le patch di sicurezza e le correzioni più recenti per essere gestite tramite gli aggiornamenti mensili ELOW. La macchina virtuale non dispone di gestione pacchetti, quindi non è possibile scaricare e installare manualmente i pacchetti RPM. Tutti gli aggiornamenti alla macchina virtuale vengono installati usando il meccanismo di aggiornamento EFLOW A/B. Per altre informazioni sugli aggiornamenti di EFLOW, vedere Aggiornare IoT Edge per Linux in Windows

File system radice di sola lettura

La macchina virtuale EFLOW è costituita da due partizioni principali rootfs e dati. Le partizioni rootFS-A o rootFS-B sono intercambiabili e una delle due viene montata come file system di sola lettura in /, il che significa che non sono consentite modifiche nei file archiviati all'interno di questa partizione. D'altra parte, la partizione di dati montata in /var è leggibile e scrivibile, consentendo all'utente di modificare il contenuto all'interno della partizione. I dati archiviati in questa partizione non vengono modificati dal processo di aggiornamento e pertanto non verranno modificati tra gli aggiornamenti.

Poiché potrebbe essere necessario l'accesso in scrittura a /etc, /home, /root, /var per casi d'uso specifici, l'accesso in scrittura per queste directory viene eseguito sovrapponendoli alla partizione di dati specificamente alla directory /var/.eflow/overlays. Il risultato finale è che gli utenti possono scrivere qualsiasi elemento nelle directory indicate in precedenza. Per altre informazioni sulle sovrimpressioni, vedere overlayfs.

Layout di partizione EFLOW 1.1LTS

Partizione Dimensione Descrizione
Avvio 192 MB Contiene il bootloader
RootFS A 2 GB Una delle due partizioni attive/passive che contengono il file system radice
RootFS B 2 GB Una delle due partizioni attive/passive che contengono il file system radice
AB Update 2 GB Contiene i file di aggiornamento. Verificare che nella macchina virtuale sia sempre disponibile spazio sufficiente per gli aggiornamenti
Dati Da 2 GB a 2 TB Partizione con stato per l'archiviazione di dati persistenti tra gli aggiornamenti. Espandibile in base alla configurazione della distribuzione

Nota

Il layout della partizione rappresenta le dimensioni del disco logico e non indica lo spazio fisico che la macchina virtuale occupa sul disco del sistema operativo host.

Firewall

Per impostazione predefinita, la macchina virtuale EFLOW usa l'utilità iptables per le configurazioni del firewall. Iptables viene usato per configurare, gestire ed esaminare le tabelle delle regole di filtro dei pacchetti IP nel kernel Linux. L'implementazione predefinita consente solo il traffico in ingresso sulla porta 22 (servizio SSH) e blocca il traffico in caso contrario. È possibile controllare la configurazione di iptables seguendo questa procedura:

  1. Aprire una sessione di PowerShell con privilegi elevati

  2. Connettersi alla macchina virtuale EFLOW

    Connect-EflowVm
    
  3. Elencare tutte le regole iptables

    sudo iptables -L
    

    Impostazione predefinita iptableS EFLOW

Modulo TPM (Trusted Platform Module)

La tecnologia TPM (Trusted Platform Module) è progettata per fornire funzioni correlate alla sicurezza basate su hardware. Un chip TPM è un livello di crittografia-processore protetto che è progettato per eseguire le operazioni di crittografia. Il chip include diversi meccanismi di sicurezza fisica per renderlo di manomissione e di software dannoso è in grado di alterare le funzioni di protezione del TPM.

La macchina virtuale EFLOW non supporta vTPM. Tuttavia, l'utente può abilitare/disabilitare la funzionalità pass-through TPM, che consente alla macchina virtuale EFLOW di usare il TPM del sistema operativo host Windows. Ciò consente due scenari principali:

Proteggere la comunicazione tra host e macchine virtuali

EFLOW offre diversi modi per interagire con la macchina virtuale esponendo un'implementazione avanzata del modulo di PowerShell. Per altre informazioni, vedere Funzioni di PowerShell per IoT Edge per Linux in Windows. Questo modulo richiede l'esecuzione di una sessione con privilegi elevati ed è firmato usando un certificato di Microsoft Corporation.

Tutte le comunicazioni tra il sistema operativo host Windows e la macchina virtuale EFLOW richieste dai cmdlet di PowerShell vengono eseguite usando un canale SSH. Per impostazione predefinita, il servizio SSH della macchina virtuale non consentirà l'autenticazione tramite nome utente e password ed è limitata all'autenticazione del certificato. Il certificato viene creato durante il processo di distribuzione EFLOW ed è univoco per ogni installazione EFLOW. Inoltre, per evitare attacchi di forza bruta SSH, la macchina virtuale bloccherà un indirizzo IP se tenta più di tre connessioni al minuto al servizio SSH.

Passaggi successivi

Altre informazioni sulla sicurezza di Windows IoT locale

Rimanere aggiornati con gli aggiornamenti più recenti in IoT Edge per Linux in Windows.