Vytvoření a zřízení zařízení IoT Edge ve Windows pomocí certifikátů X.509

Platí pro: Ikona Ano IoT Edge 1.1

Důležité

Datum ukončení podpory ioT Edge 1.1 bylo 13. prosince 2022. Informace o způsobu podpory tohoto produktu, služby, technologie nebo rozhraní API najdete v tématu věnovaném životnímu cyklu produktů Microsoftu. Další informace o aktualizaci na nejnovější verzi IoT Edge najdete v tématu Aktualizace IoT Edge.

Tento článek obsahuje kompletní pokyny pro registraci a zřízení zařízení Windows IoT Edge.

Poznámka:

Azure IoT Edge s kontejnery Windows se od verze 1.2 Azure IoT Edge nebude podporovat.

Zvažte použití nové metody pro spuštění IoT Edge na zařízeních s Windows, Azure IoT Edge pro Linux ve Windows.

Pokud chcete použít Azure IoT Edge pro Linux ve Windows, můžete postupovat podle kroků v ekvivalentní příručce s postupy.

Každé zařízení, které se připojuje k centru IoT, má ID zařízení, které se používá ke sledování komunikace typu cloud-zařízení nebo komunikace typu zařízení-cloud. Zařízení nakonfigurujete s informacemi o připojení, mezi které patří název hostitele centra IoT, ID zařízení a informace, které zařízení používá k ověření ve službě IoT Hub.

Kroky v tomto článku vás provedou procesem označovaným jako ruční zřizování, kdy připojíte jedno zařízení ke svému centru IoT. Pro ruční zřizování máte dvě možnosti ověřování zařízení IoT Edge:

  • Symetrické klíče: Když ve službě IoT Hub vytvoříte novou identitu zařízení, služba vytvoří dva klíče. Umístíte na zařízení jeden z klíčů a při ověřování ho předá službě IoT Hub.

    Tato metoda ověřování je rychlejší, než začít, ale není tak zabezpečená.

  • X.509 podepsané svým držitelem: Vytvoříte dva certifikáty identity X.509 a umístíte je do zařízení. Když ve službě IoT Hub vytvoříte novou identitu zařízení, poskytnete kryptografické otisky z obou certifikátů. Když se zařízení ověří ve službě IoT Hub, zobrazí jeden certifikát a IoT Hub ověří, že certifikát odpovídá jeho kryptografickému otisku.

    Tato metoda ověřování je bezpečnější a doporučuje se pro produkční scénáře.

Tento článek popisuje použití certifikátů X.509 jako metody ověřování. Pokud chcete použít symetrické klíče, přečtěte si téma Vytvoření a zřízení zařízení IoT Edge ve Windows pomocí symetrických klíčů.

Poznámka:

Pokud máte mnoho zařízení k nastavení a nechcete je zřizovat ručně, pomocí jednoho z následujících článků se dozvíte, jak IoT Edge funguje se službou zřizování zařízení IoT Hub:

Požadavky

Tento článek popisuje registraci zařízení IoT Edge a instalaci IoT Edge na zařízení. Tyto úlohy mají různé požadavky a nástroje, které je používají k jejich provedení. Než budete pokračovat, ujistěte se, že máte probírané všechny požadavky.

Nástroje pro správu zařízení

Postup registrace zařízení můžete provést pomocí webu Azure Portal, editoru Visual Studio Code nebo Azure CLI . Každý nástroj má vlastní požadavky:

Bezplatné nebo standardní centrum IoT ve vašem předplatném Azure.

Požadavky na zařízení

Zařízení s Windows.

IoT Edge s kontejnery Windows vyžaduje windows verze 1809/build 17763, což je nejnovější build dlouhodobé podpory Windows. Seznam podporovaných skladových položek najdete v seznamu podporovaných systémů.

Generování certifikátů identit zařízení

Ruční zřizování pomocí certifikátů X.509 vyžaduje IoT Edge verze 1.0.10 nebo novější.

Když zřídíte zařízení IoT Edge s certifikáty X.509, použijete certifikát identity zařízení, který se nazývá certifikát identity zařízení. Tento certifikát se používá jenom ke zřízení zařízení IoT Edge a k ověřování zařízení pomocí Azure IoT Hubu. Jedná se o listový certifikát, který nepodepisuje jiné certifikáty. Certifikát identity zařízení je oddělený od certifikátů certifikační autority (CA), které zařízení IoT Edge prezentuje modulům nebo podřízeným zařízením pro ověření.

Pro ověřování certifikátů X.509 se ověřovací informace o jednotlivých zařízeních poskytují ve formě kryptografických otisků převzatých z certifikátů identity zařízení. Tyto kryptografické otisky se službě IoT Hub předávají v době registrace zařízení, aby služba při připojení zařízení rozpoznala zařízení.

Další informace o tom, jak se certifikáty certifikační autority používají v zařízeních IoT Edge, najdete v tématu Vysvětlení toho, jak Azure IoT Edge používá certifikáty.

K ručnímu zřizování v X.509 potřebujete následující soubory:

  • Dva certifikáty identity zařízení s odpovídajícími certifikáty privátního klíče ve formátech .cer nebo .pem.

    Do modulu runtime IoT Edge je k dispozici jedna sada souborů certifikátů/klíčů. Při vytváření certifikátů identit zařízení nastavte běžný název certifikátu (CN) s ID zařízení, které má mít zařízení ve vašem centru IoT.

  • Kryptografické otisky převzaté z obou certifikátů identity zařízení.

    Hodnoty kryptografického otisku jsou 40 šestnáctkové znaky pro hodnoty hash SHA-1 nebo 64 šestnáctkové znaky pro hodnoty hash SHA-256. Oba kryptografické otisky jsou k dispozici službě IoT Hub v době registrace zařízení.

Pokud nemáte k dispozici certifikáty, můžete vytvořit ukázkové certifikáty pro testování funkcí zařízení IoT Edge. Podle pokynů v tomto článku nastavte skripty pro vytváření certifikátů, vytvořte kořenový certifikát certifikační autority a pak vytvořte dva certifikáty identity zařízení IoT Edge.

Jedním ze způsobů, jak načíst kryptografický otisk z certifikátu, je následující příkaz openssl:

openssl x509 -in <certificate filename>.pem -text -fingerprint

Registrace zařízení

K registraci zařízení můžete použít Azure Portal, Visual Studio Code nebo Azure CLI v závislosti na vašich preferencích.

V centru IoT na webu Azure Portal se zařízení IoT Edge vytvářejí a spravují odděleně od zařízení IoT, která nejsou povolená.

  1. Přihlaste se k webu Azure Portal a přejděte do centra IoT.

  2. V levém podokně vyberte v nabídce zařízení a pak vyberte Přidat zařízení.

  3. Na stránce Vytvořit zařízení zadejte následující informace:

    • Vytvořte popisné ID zařízení. Poznamenejte si toto ID zařízení, protože ho použijete později.
    • Zaškrtněte políčko Zařízení IoT Edge.
    • Jako typ ověřování vyberte X.509 podepsané svým držitelem .
    • Zadejte kryptografické otisky primárního a sekundárního certifikátu identity. Hodnoty kryptografického otisku jsou 40 šestnáctkové znaky pro hodnoty hash SHA-1 nebo 64 šestnáctkové znaky pro hodnoty hash SHA-256.
  4. Zvolte Uložit.

Teď, když máte zařízení zaregistrované ve službě IoT Hub, načtěte informace, které používáte k dokončení instalace a zřizování modulu runtime IoT Edge.

Zobrazení registrovaných zařízení a načtení informací o zřizování

Zařízení, která používají ověřování certifikátů X.509, potřebují název centra IoT, název zařízení a soubory certifikátů k dokončení instalace a zřizování modulu runtime IoT Edge.

Hraniční zařízení, která se připojují k centru IoT, jsou uvedená na stránce Zařízení . Seznam můžete filtrovat podle typu Zařízení Iot Edge.

Snímek obrazovky znázorňuje, jak zobrazit všechna zařízení IoT Edge ve službě IoT Hub

Instalace IoT Edge

V této části připravíte virtuální počítač s Windows nebo fyzické zařízení pro IoT Edge. Pak nainstalujete IoT Edge.

Azure IoT Edge spoléhá na modul runtime kontejneru kompatibilní s OCI. Moby, modul založený na Moby, je součástí instalačního skriptu, což znamená, že neexistují žádné další kroky k instalaci modulu.

Instalace modulu runtime IoT Edge:

  1. Spusťte PowerShell jako správce.

    Použijte relaci AMD64 PowerShellu, ne PowerShellu (x86). Pokud si nejste jistí, jaký typ relace používáte, spusťte následující příkaz:

    (Get-Process -Id $PID).StartInfo.EnvironmentVariables["PROCESSOR_ARCHITECTURE"]
    
  2. Spusťte příkaz Deploy-IoTEdge, který provádí následující úlohy:

    • Zkontroluje, jestli je váš počítač s Windows v podporované verzi.
    • Zapne funkci kontejnerů.
    • Stáhne modul moby a modul runtime IoT Edge.
    . {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; `
    Deploy-IoTEdge
    
  3. Pokud se zobrazí výzva, restartujte zařízení.

Když nainstalujete IoT Edge na zařízení, můžete k úpravě procesu použít další parametry, mezi které patří:

  • Směrování provozu pro průchod proxy serverem
  • Nasměrujte instalační program na místní adresář pro offline instalaci.

Další informace o těchtodalšíchch

Zřízení zařízení s využitím cloudové identity

Teď, když je modul kontejneru a modul runtime IoT Edge nainstalované na vašem zařízení, jste připraveni na další krok, kterým je nastavení zařízení s cloudovou identitou a ověřovacími informacemi.

  1. Na zařízení IoT Edge spusťte PowerShell jako správce.

  2. Ke konfiguraci modulu runtime IoT Edge na vašem počítači použijte příkaz Initialize-IoTEdge.

    . {Invoke-WebRequest -useb https://aka.ms/iotedge-win} | Invoke-Expression; `
    Initialize-IoTEdge -ManualX509
    
    • Pokud jste si do zařízení stáhli skript IoTEdgeSecurityDaemon.ps1 pro offline nebo konkrétní instalaci verze, nezapomeňte odkazovat na místní kopii skriptu.

      . <path>/IoTEdgeSecurityDaemon.ps1
      Initialize-IoTEdge -ManualX509
      
  3. Po zobrazení výzvy zadejte tyto informace:

    • IotHubHostName: Název hostitele centra IoT, ke kterému se zařízení připojí. Například {IoT_hub_name}.azure-devices.net.
    • DeviceId: ID, které jste zadali při registraci zařízení.
    • X509IdentityCertificate: Absolutní cesta k certifikátu identity v zařízení. Například C:\path\identity_certificate.pem.
    • X509IdentityPrivateKey: Absolutní cesta k souboru privátního klíče pro zadaný certifikát identity. Například C:\path\identity_key.pem.

Když zařízení zřídíte ručně, můžete k úpravě procesu použít další parametry, mezi které patří:

  • Směrování provozu pro průchod proxy serverem
  • Deklarujte konkrétní image kontejneru edgeAgent a zadejte přihlašovací údaje, pokud se nachází v privátním registru.

Další informace o těchtodalšíchch


Ověření úspěšné konfigurace

Ověřte, že se modul runtime úspěšně nainstaloval a nakonfiguroval na zařízení IoT Edge.

Zkontrolujte stav služby IoT Edge.

Get-Service iotedge

Prozkoumejte protokoly služby.

. {Invoke-WebRequest -useb aka.ms/iotedge-win} | Invoke-Expression; Get-IoTEdgeLog

Výpis spuštěných modulů

iotedge list

Offline nebo konkrétní instalace verze (volitelné)

Kroky v této části jsou určené pro scénáře, na které se nevztahují standardní kroky instalace. Může to zahrnovat:

  • Instalace IoT Edge v offline režimu
  • Instalace verze Candidate
  • Instalace jiné verze než nejnovější

Během instalace se stáhnou tři soubory:

  • Skript PowerShellu, který obsahuje pokyny k instalaci
  • Cab Microsoft Azure IoT Edge, který obsahuje démon zabezpečení IoT Edge (iotedged), modul kontejnerů Moby a Rozhraní příkazového řádku Moby
  • Instalační program distribuovatelného balíčku Visual C++ (modul runtime VC)

Pokud bude vaše zařízení během instalace offline nebo pokud chcete nainstalovat konkrétní verzi IoT Edge, můžete si tyto soubory stáhnout předem do zařízení. Když je čas nainstalovat, nasměrujte instalační skript do adresáře, který obsahuje stažené soubory. Instalační program nejprve zkontroluje tento adresář a pak stáhne jenom komponenty, které se nenašly. Pokud jsou všechny soubory dostupné offline, můžete nainstalovat bez připojení k internetu.

  1. Nejnovější instalační soubory IoT Edge spolu s předchozími verzemi najdete ve verzích Azure IoT Edge.

  2. Najděte verzi, kterou chcete nainstalovat, a stáhněte si do zařízení IoT následující soubory v části Prostředky v poznámkách k verzi:

    • IoTEdgeSecurityDaemon.ps1
    • Microsoft-Azure-IoTEdge-amd64.cab z kanálu verze 1.1.

    Je důležité použít skript PowerShellu ze stejné verze jako soubor .cab, který používáte, protože funkce se mění tak, aby podporovaly funkce v jednotlivých verzích.

  3. Pokud má stažený soubor .cab příponu architektury, přejmenujte ho na Microsoft-Azure-IoTEdge.cab.

  4. Volitelně si můžete stáhnout instalační program pro distribuovatelné součásti Visual C++. Například skript PowerShellu používá tuto verzi: vc_redist.x64.exe. Uložte instalační program do stejné složky na zařízení IoT jako soubory IoT Edge.

  5. Pokud chcete provést instalaci s offline komponentami, zadejte dot zdroj místní kopii skriptu PowerShellu.

  6. Spusťte příkaz Deploy-IoTEdge s parametrem-OfflineInstallationPath. Zadejte absolutní cestu k adresáři souborů. Příklad:

    . path_to_powershell_module_here\IoTEdgeSecurityDaemon.ps1
    Deploy-IoTEdge -OfflineInstallationPath path_to_file_directory_here
    

    Příkaz pro nasazení použije všechny komponenty nalezené v adresáři místního souboru. Pokud chybí soubor .cab nebo instalační program jazyka Visual C++, pokusí se je stáhnout.

Odinstalace IoT Edge

Pokud chcete ze zařízení s Windows odebrat instalaci IoT Edge, použijte příkaz Uninstall-IoTEdge z okna PowerShellu pro správu. Tento příkaz odebere modul runtime IoT Edge spolu s existující konfigurací a daty modulu Moby.

. {Invoke-WebRequest -useb aka.ms/iotedge-win} | Invoke-Expression; `
Uninstall-IoTEdge

Další informace o možnostech odinstalace naleznete v příkazu Get-Help Uninstall-IoTEdge -full.

Další kroky

Pokračujte v nasazování modulů IoT Edge a zjistěte, jak do zařízení nasadit moduly.