Dela via


Använda EAP-TLS

Azure Sphere stöder användning av EAP-TLS (Extensible Authentication Protocol-Transport Layer Security) för att ansluta till Wi-Fi nätverk. EAP-TLS stöds inte via Ethernet.

EAP-TLS för Wi-Fi är en vanlig autentiseringsmetod i säkerhetsfokuserade scenarier. Det ger betydligt större säkerhet än att använda SSID-lösenordet som en global hemlighet, men kräver ytterligare arbete för att säkerställa att Azure Sphere-enheten och nätverket är korrekt konfigurerade och autentiserade.

Specifikationen för EAP-TLS-protokollet beskrivs i RFC 5216. Azure Sphere OS implementerar inte EAP-TLS-protokollet direkt. I stället införlivas en wpa_supplicant komponent med öppen källkod som implementerar protokollet.

Terminologi

Åtkomstpunkt (AP): En maskinvaruenhet för nätverk som gör att andra Wi-Fi enheter kan ansluta till ett kabelanslutet nätverk.

Certifikat: En offentlig nyckel och andra metadata som är signerade av en certifikatfärdare.

Certifikatutfärdare ( CA): En enhet som signerar och utfärdar digitala certifikat.

CERTIFIKATUTFÄRDARcertifikat: Rotcertifikatutfärdarcertifikatet som RADIUS-serverns autentiseringscertifikat kedjar till. Den här offentliga nyckeln kan lagras på Azure Sphere-enheten.

Klientcertifikat: Certifikatet och den privata nyckeln som används för att autentisera nätverket. Klientcertifikatet och dess kopplade privata nyckel lagras på Azure Sphere-enheten.

Tangentpar: En kryptografiskt bunden uppsättning nycklar. I många fall innebär ett nyckelpar en offentlig nyckel och en privat nyckel. i scenariot Azure Sphere EAP-TLS anger dock nyckelpar klientcertifikatet och dess privata nyckel.

Privat nyckel: En nyckel som inte ska exponeras för någon enhet utom den betrodda ägaren.

PKI (Public Key Infrastructure): Den uppsättning roller, principer, maskinvara, programvara och procedurer som behövs för att skapa, hantera, distribuera, använda, lagra och återkalla digitala certifikat och hantera kryptering med offentliga nycklar.

Fjärrautentisering, användartjänst för uppringning (RADIUS): Ett nätverksprotokoll som fungerar på port 1812 och tillhandahåller centraliserad autentiserings-, auktoriserings- och redovisningshantering (AAA eller Triple A) för användare som ansluter till och använder en nätverkstjänst. En RADIUS-server tar emot autentiseringsdata från en klient, verifierar den och ger sedan åtkomst till andra nätverksresurser.

Rivest–Shamir–Adleman (RSA): Ett kryptosystem med offentlig nyckel som baseras på RFC 3447).

Supplicant: Den trådlösa klienten. Azure Sphere-enheten är en supplicant.

Översikt över EAP-TLS-autentisering

I följande diagram sammanfattas processen som en Azure Sphere-enhet använder EAP-TLS-protokollet för att autentisera.

EAP_TLS autentisering

  1. När en Azure Sphere-enhet kräver åtkomst till en nätverksresurs kontaktar den en trådlös åtkomstpunkt (AP). När begäran tas emot ber AP om enhetens identitet och kontaktar sedan RADIUS-servern för att initiera autentiseringsprocessen. Kommunikationer mellan åtkomstpunkten och enheten använder EAP-inkapsling över LAN-protokollet (EAPOL).

  2. Åtkomstpunkten kodar om EAPOL-meddelanden till RADIUS-format och skickar dem till RADIUS-servern. RADIUS-servern tillhandahåller autentiseringstjänster för nätverket på port 1812. Azure Sphere-enheten och RADIUS-servern utför autentiseringsprocessen via åtkomstpunkten, som vidarebefordrar meddelanden från den ena till den andra. När autentiseringen är klar skickar RADIUS-servern ett statusmeddelande till enheten. Om autentiseringen lyckas öppnar servern porten för Azure Sphere-enheten.

  3. Efter en lyckad autentisering kan Azure Sphere-enheten komma åt andra nätverks- och Internetresurser.

Serverautentisering och enhetsautentisering beskriver autentiseringsprocessen mer i detalj.

Serverautentisering

Serverautentisering är det första steget i ömsesidig EAP-TLS-autentisering. Vid ömsesidig autentisering autentiserar RADIUS-servern inte bara enheten, utan enheten autentiserar servern. Serverautentisering krävs inte strikt, men vi rekommenderar att du konfigurerar nätverket och enheterna så att de stöder det. Serverautentisering hjälper till att säkerställa att en falsk eller bedragarserver inte kan äventyra nätverkets säkerhet.

För att aktivera serverautentisering måste RADIUS-servern ha ett serverautentiseringscertifikat som är signerat av en certifikatutfärdare. Serverautentiseringscertifikatet är ett "löv" i slutet av serverns certifikatkedja, som kan inkludera en mellanliggande certifikatutfärdare och så småningom avslutas i en rotcertifikatutfärdare.

När en enhet begär åtkomst skickar servern hela certifikatkedjan till enheten. Azure Sphere tillämpar inte tidsverifieringskontroller på serverautentiseringscertifikatet eller -kedjan, eftersom enheten inte kan synkronisera operativsystemets tid till en giltig tidskälla förrän den har autentiserats för nätverket. Om enheten är konfigurerad för att lita på en rotcertifikatfärdare som matchar serverns rotcertifikatfärdare valideras serverns identitet. Om enheten inte har någon matchande rotcertifikatfärdare misslyckas serverautentiseringen och enheten kan inte komma åt nätverksresurser. Du måste då och då kunna uppdatera RootCA på enheten enligt beskrivningen i Uppdatera ett rotcertifikatutfärdarcertifikat.

Enhetsautentisering

När serverautentiseringen har slutförts skickar enheten sitt klientcertifikat för att fastställa autentiseringsuppgifterna. Enheten kan också skicka ett klient-ID. Klient-ID är valfri information som vissa nätverk kan kräva för autentisering.

De specifika kraven för lyckad enhetsautentisering kan variera beroende på hur ditt nätverk har konfigurerats. Nätverksadministratören kan behöva ytterligare information för att bevisa giltigheten för dina Azure Sphere-enheter. Oavsett konfigurationen måste du då och då kunna uppdatera enhetscertifikatet enligt beskrivningen i Uppdatera ett klientcertifikat.

Azure Sphere EAP-TLS-plattformen

Azure Sphere EAP-TLS-plattformen har följande funktioner för nätverkskonfiguration och -hantering:

  • Läs in en . PEM-fil som innehåller enhetens klientcertifikat och privata nyckel för Wi-Fi EAP-TLS-anslutningar.
  • Konfigurera Wi-Fi-gränssnittet så att EAP-TLS används. . PEM-fil som innehåller enhetens klientcertifikat måste finnas på enheten.
  • Anslut till ett befintligt icke-EAP-TLS-nätverk för att få ett enhetscertifikat och en privat nyckel, aktivera ett EAP-TLS-nätverk och ansluta till EAP-TLS-nätverket.
  • Gör det möjligt för program att använda DAA-certifikatet (Device Authentication and Attestation) som används för HTTPS-anslutningar för autentisering till ett certifikatarkiv.
  • WifiConfig API för att hantera Wi-Fi nätverk.
  • Certstore-API för att hantera certifikat.

Alla andra EAP-TLS-nätverkskomponenter ansvarar den lokala nätverksadministratören för.

Konfigurera EAP-TLS-nätverk

Nätverksadministratören ansvarar för konfigurationen av EAP-TLS-nätverket. Nätverksadministratören måste definiera den offentliga infrastrukturen (PKI) och se till att alla nätverkskomponenter följer dess principer. Nätverkskonfigurationen och konfigurationen omfattar, men är inte begränsad till, följande uppgifter:

  • Konfigurera RADIUS-servern, skaffa och installera certifikatutfärdarens certifikatutfärdarcertifikat samt ange kriterier för en enhet för att bevisa dess identitet.
  • Konfigurera Dina Azure Sphere-enheter med rotcertifikatutfärdarcertifikatutfärdarna för RADIUS-servern så att de kan autentisera servern.
  • Skaffa ett klientcertifikat och en privat nyckel för varje enhet och läs in dem på enheten.

EAP-TLS-certifikathämtning och -distribution beskriver hur du hämtar och distribuerar certifikat i olika nätverksscenarier.

Certifikatet och den privata nyckeln för klientautentisering måste anges i PEM-format. Den privata nyckeln kan anges i PKCS1- eller PKCS8-syntaxen, med eller utan ett symmetriskt nyckellösenord för den privata nyckeln. Rotcertifikatutfärdarcertifikatet måste också anges i PEM-format.

I följande tabell visas den information som används för att konfigurera ett EAP-TLS-nätverk för Azure Sphere.

Objekt Beskrivning Detaljer
Klientcertifikat Signerat CERTIFIKATUTFÄRDARcertifikat som innehåller den offentliga nyckeln för klientcertifikatet. Krävs. Maximal storlek: 8 KiB
Maximal längd på identifierarsträng: 16 tecken
Privat klientnyckel Privat nyckel som har kopplats med klientcertifikatet. Krävs. Maximal storlek: 8 Kib
RSA stöds; ECC-nycklar stöds inte
Lösenord för privat nyckel för klient Lösenord som används för att kryptera klientens privata nyckel. Valfri. Minsta storlek: 1 byte
Maximal storlek: 256 byte
Tom sträng och nullsträng tolkas som samma
Klient-ID ASCII-sträng som skickas till RADIUS-servern och som ger ytterligare information om enheten. Krävs av vissa EAP-TLS-nätverk. Maximal storlek: 254 byte
Format: user@domainname.com
Rotcertifikat för certifikatutfärdare Rotcertifikatutfärdare för RADIUS-serverns autentiseringscertifikat. Måste konfigureras på varje enhet. Valfritt men starkt rekommenderas; kontakta nätverksadministratören. Maximal storlek: 8 KiB
Maximal längd på identifierarsträng: 16 tecken

Viktigt

Allt PKI- och RADIUS-serverkonfiguration för nätverket, inklusive hanteringen av certifikatets utgångsdatum, ansvarar du för.