Usare EAP-TLS

Azure Sphere supporta l'uso di Extensible Authentication Protocol-Transport Layer Security (EAP-TLS) per connettersi a reti Wi-Fi. EAP-TLS non è supportato su Ethernet.

EAP-TLS per Wi-Fi è un metodo di autenticazione comune negli scenari incentrati sulla sicurezza. Offre una sicurezza notevolmente maggiore rispetto all'uso della password SSID come segreto globale, ma richiede ulteriore lavoro per garantire che il dispositivo Azure Sphere e la rete siano configurati e autenticati correttamente.

La specifica del protocollo EAP-TLS è descritta in dettaglio in RFC 5216. Il sistema operativo Azure Sphere non implementa direttamente il protocollo EAP-TLS; incorpora invece un componente open source wpa_supplicant che implementa il protocollo.

Terminologia

Punto di accesso (AP): Un dispositivo hardware di rete che consente ad altri dispositivi Wi-Fi di connettersi a una rete cablata.

Certificato: Una chiave pubblica e altri metadati firmati da una CA.

Autorità di certificazione:Certificate Authority (CA): Un'entità che firma e rilascia certificati digitali.

Certificato CA: Il certificato CA radice a cui concateno i certificati di autenticazione del server RADIUS. Questa chiave pubblica può essere archiviata nel dispositivo Azure Sphere.

Certificato client: Il certificato e la chiave privata usati per l'autenticazione in rete. Il certificato client e la chiave privata associata vengono archiviati nel dispositivo Azure Sphere.

Coppia di tasti: Insieme di chiavi associato a crittografia. In molti scenari, una coppia di chiavi indica una chiave pubblica e una chiave privata; nello scenario Azure Sphere EAP-TLS, tuttavia, la coppia di chiavi indica il certificato client e la relativa chiave privata.

Chiave privata: Chiave che non deve essere esposta a nessuna entità tranne il proprietario attendibile.

Infrastruttura a chiave pubblica (PKI): Insieme di ruoli, criteri, hardware, software e procedure necessari per creare, gestire, distribuire, usare, archiviare e revocare i certificati digitali e gestire la crittografia a chiave pubblica.

Remote Authentication Dial-In User Service (RADIUS): Un protocollo di rete che opera sulla porta 1812 e fornisce una gestione centralizzata di autenticazione, autorizzazione e contabilità (AAA o Tripla A) per gli utenti che si connettono e usano un servizio di rete. Un server RADIUS riceve i dati di autenticazione da un client, lo convalida e quindi consente l'accesso ad altre risorse di rete.

Rivest-Shamir-Adleman (RSA): Crittografia a chiave pubblica basata su RFC 3447).

Richiedente: Il client wireless. Il dispositivo Azure Sphere è un supplicante.

Panoramica dell'autenticazione EAP-TLS

Il diagramma seguente riepiloga il processo con cui un dispositivo Azure Sphere utilizza il protocollo EAP-TLS per l'autenticazione.

autenticazione EAP_TLS

  1. Quando un dispositivo Azure Sphere richiede l'accesso a una risorsa di rete, contatta un punto di accesso wireless (AP). Dopo aver ricevuto la richiesta, l'AP chiede l'identità del dispositivo e quindi contatta il server RADIUS per avviare il processo di autenticazione. Le comunicazioni tra il punto di accesso e il dispositivo utilizzano il protocollo EAP encapsulation over LAN (EAPOL).

  2. Il punto di accesso codifica i messaggi EAPOL in formato RADIUS e li invia al server RADIUS. Il server RADIUS fornisce servizi di autenticazione per la rete sulla porta 1812. Il dispositivo Azure Sphere e il server RADIUS eseguono il processo di autenticazione attraverso il punto di accesso, che inoltra i messaggi da uno all'altro. Al termine dell'autenticazione, il server RADIUS invia un messaggio di stato al dispositivo. Se l'autenticazione ha esito positivo, il server apre la porta per il dispositivo Azure Sphere.

  3. Dopo il completamento dell'autenticazione, il dispositivo Azure Sphere può accedere ad altre risorse di rete e Internet.

L'autenticazione del server e l'autenticazione del dispositivo descrivono il processo di autenticazione in modo più dettagliato.

Autenticazione server

L'autenticazione server è il primo passaggio nell'autenticazione EAP-TLS reciproca. Nell'autenticazione reciproca, non solo il server RADIUS autentica il dispositivo, ma il dispositivo autentica il server. L'autenticazione server non è strettamente necessaria, ma è consigliabile configurare la rete e i dispositivi per supportarla. L'autenticazione del server garantisce che un server malintenzionato o impostore non possa compromettere la sicurezza della rete.

Per abilitare l'autenticazione server, il server RADIUS deve disporre di un certificato di autenticazione del server firmato da una CA. Il certificato di autenticazione del server è una "foglia" alla fine della catena di certificati del server, che può includere facoltativamente una CA intermedia e termina in una CA radice.

Quando un dispositivo richiede l'accesso, il server invia l'intera catena di certificati al dispositivo. Azure Sphere non applica i controlli di convalida del tempo sul certificato di autenticazione o sulla catena di autenticazione del server, perché il dispositivo non può sincronizzare l'ora del sistema operativo con un'origine ora valida fino a quando non si è autenticata in rete. Se il dispositivo è configurato per considerare attendibile una CA radice che corrisponde alla CA radice del server, convalida l'identità del server. Se il dispositivo non dispone di una CA radice corrispondente, l'autenticazione del server non riesce e il dispositivo non sarà in grado di accedere alle risorse di rete. È necessario essere in grado di aggiornare di tanto in tanto rootCA nel dispositivo, come descritto in Aggiornare un certificato CA radice.

Autenticazione del dispositivo

Al termine dell'autenticazione server, il dispositivo invia il certificato client per stabilire le credenziali. Il dispositivo può anche passare un ID client. L'ID client è un'informazione facoltativa che alcune reti potrebbero richiedere per l'autenticazione.

I requisiti specifici per il corretto funzionamento dell'autenticazione del dispositivo possono variare a seconda della configurazione della rete specifica. L'amministratore di rete può richiedere informazioni aggiuntive per dimostrare la validità dei dispositivi Azure Sphere. Indipendentemente dalla configurazione, è necessario aggiornare di tanto in tanto il certificato del dispositivo, come descritto in Aggiornare un certificato client.

Piattaforma Azure Sphere EAP-TLS

La piattaforma Azure Sphere EAP-TLS offre le funzionalità seguenti per la configurazione e la gestione della rete:

  • Caricare un . File PEM contenente il certificato client del dispositivo e la chiave privata per Wi-Fi connessioni EAP-TLS.
  • Configurare l'interfaccia Wi-Fi per l'utilizzo di EAP-TLS. Le. Il file PEM che contiene il certificato client del dispositivo deve essere presente nel dispositivo.
  • Connettersi a una rete non EAP-TLS esistente per ottenere un certificato dispositivo e una chiave privata, abilitare una rete EAP-TLS e connettersi alla rete EAP-TLS.
  • Consentire alle applicazioni di usare il certificato di autenticazione e attestazione (DAA) del dispositivo usato per le connessioni HTTPS per l'autenticazione in un archivio certificati.
  • Api WifiConfig per gestire le reti Wi-Fi.
  • API di certstore per gestire i certificati.

Tutti gli altri componenti di rete EAP-TLS sono di responsabilità dell'amministratore di rete locale.

Configurazione della rete EAP-TLS

La configurazione della rete EAP-TLS è responsabilità dell'amministratore di rete. L'amministratore di rete deve definire l'infrastruttura a chiave pubblica (PKI) e assicurarsi che tutti i componenti di rete siano conformi ai criteri. La configurazione e l'installazione della rete includono, a titolo esempli visivo, le attività seguenti:

  • Configurare il server RADIUS, acquisire e installare il certificato CA e stabilire i criteri per dimostrare la propria identità per un dispositivo.
  • Configura i dispositivi Azure Sphere con la CA radice del server RADIUS, in modo che possano autenticare il server.
  • Acquisisci un certificato client e una chiave privata per ogni dispositivo e caricali nel dispositivo.

L'acquisizione e la distribuzione di certificati EAP-TLS descrive come acquisire e distribuire certificati in vari scenari di rete.

Il certificato e la chiave privata per l'autenticazione client devono essere forniti in formato PEM. La chiave privata può essere fornita nella sintassi PKCS1 o PKCS8, con o senza una password simmetrica per la chiave privata. Anche il certificato CA radice deve essere fornito in formato PEM.

La tabella seguente elenca le informazioni usate per configurare una rete EAP-TLS per Azure Sphere.

Elemento Descrizione Dettagli
Certificato client Certificato CA firmato che contiene la chiave pubblica per il certificato client. Obbligatorio. Dimensione massima: 8 KiB
Lunghezza massima della stringa identificatore: 16 caratteri
Chiave privata client Chiave privata associata al certificato client. Obbligatorio. Dimensione massima: 8 Kib
RSA supportato; I tasti ECC non sono supportati
Password chiave privata client Password usata per crittografare la chiave privata client. Opzionale. Dimensioni minime: 1 byte
Dimensione massima: 256 byte
La stringa vuota e la stringa Null vengono interpretate come le stesse
Client ID Stringa ASCII passata al server RADIUS e che fornisce ulteriori informazioni sul dispositivo. Obbligatorio per alcune reti EAP-TLS. Dimensione massima: 254 byte
Formato: user@domainname.com
Certificato CA radice Certificato CA radice del certificato di autenticazione del server RADIUS. Deve essere configurato in ogni dispositivo. Facoltativo ma fortemente consigliato; contatta l'amministratore di rete. Dimensione massima: 8 KiB
Lunghezza massima della stringa identificatore: 16 caratteri

Importante

Tutta la configurazione del server PKI e RADIUS per la tua rete, inclusa la gestione della scadenza dei certificati, è tua responsabilità.