Tanúsítványok kezelése IoT Edge eszközön

A következőkre vonatkozik:  igen ikon IoT Edge 1,1 más verziók: IoT Edge 1,2

A következőkre vonatkozik:  igen ikon IoT Edge 1,2 más verziók: IoT Edge 1,1

Minden IoT Edge-eszköz tanúsítványokat használ a futtatókörnyezet és az eszközön futó modulok közötti biztonságos kapcsolatok létrehozásához. IoT Edge átjáróként működő eszközök is ugyanezeket a tanúsítványokat használják az lefelé irányuló eszközeikhez való csatlakozáshoz.

Éles tanúsítványok telepítése

Amikor először telepíti a IoT Edge és kiépíti az eszközt, az eszköz ideiglenes tanúsítványokkal lesz beállítva, hogy tesztelni tudja a szolgáltatást. Ezek az ideiglenes tanúsítványok 90 napon belül lejárnak, vagy a gép újraindításával alaphelyzetbe állíthatók. Miután továbblép egy éles forgatókönyvre, vagy létre szeretne hozni egy átjáróeszközt, meg kell adnia a saját tanúsítványait. Ez a cikk bemutatja a tanúsítványok telepítésének lépéseit a IoT Edge eszközökön.

A különböző tanúsítványtípusokkal és azok szerepköreivel kapcsolatos további információkért lásd: A tanúsítványok használatának Azure IoT Edge használata.

Megjegyzés

A cikkben használt "legfelső szintű hitelesítésszolgáltató" kifejezés az IoT-megoldás tanúsítványláncának legfelső szintű hitelesítésszolgáltatói nyilvános tanúsítványát jelenti. Nem kell használnia egy megbízható hitelesítésszolgáltató vagy a szervezet hitelesítésszolgáltatója gyökerének tanúsítványgyökerét. Sok esetben ez valójában egy köztes hitelesítésszolgáltató nyilvános tanúsítványa.

Előfeltételek

  • Egy IoT Edge eszköz.

    Ha nincs beállítva IoT Edge eszköz, létrehozhat egyet egy Azure-beli virtuális gépen. Kövesse az egyik rövid útmutatóban található lépéseket a Virtuális Linux-eszköz létrehozása vagy a Virtuális virtuális gép létrehozása Windows eszközhöz.

  • Rendelkezik egy önaírt vagy megbízható kereskedelmi hitelesítésszolgáltatótól (például Baltimore, Verisign, DigiCert vagy GlobalSign) származó főtanúsítványsal.

    Ha még nem rendelkezik főtanúsítvánnyal, de ki szeretné próbálni IoT Edge éles tanúsítványokat igénylő szolgáltatásokat (például átjáró-forgatókönyvek), létrehozhat bemutató tanúsítványokat az IoT Edge eszköz funkcióinak teszteléséhez.

Éles tanúsítványok létrehozása

A következő fájlok létrehozásához saját hitelesítésszolgáltatót kell használnia:

  • Legfelső szintű hitelesítésszolgáltató
  • Eszköz hitelesítésszolgáltatói tanúsítványa
  • Eszköz ca titkos kulcsa

Ebben a cikkben a legfelső szintű hitelesítésszolgáltatóra hivatkozunk, nem a legfelső szintű hitelesítésszolgáltató a szervezet számára. Ez az IoT Edge forgatókönyv legfelső szintű hitelesítésszolgáltatója, amelyet a IoT Edge Hub modul, a felhasználói modulok és az alsóbb rétegbeli eszközök a megbízhatósági kapcsolat létesítését használják.

Megjegyzés

Jelenleg a libiisesm korlátozása megakadályozza a tanúsítványok használatát, amelyek 2038. január 1-jén vagy azt követően lejárnak.

Ha példákat is látni ezekre a tanúsítványokra, tekintse át a bemutató tanúsítványokat létrehozására szolgáló parancsfájlokat a Managing test CA certificates for samples and tutorials (Teszt ca-tanúsítványok kezelése mintákhoz és oktatóanyagokhoz) útmutatóban.

Tanúsítványok telepítése az eszközön

Telepítse a tanúsítványláncot a IoT Edge eszközre, és konfigurálja a IoT Edge-futásidőt az új tanúsítványokra való hivatkozáshoz.

Másolja a három tanúsítványt és kulcsfájlt a IoT Edge eszközére.

Ha a bemutató tanúsítványok létrehozásához a minta parancsfájlokat használta,a három tanúsítvány és kulcsfájl a következő elérési utakon található:

  • Eszköz hitelesítésszolgáltatói tanúsítványa: <WRKDIR>\certs\iot-edge-device-MyEdgeDeviceCA-full-chain.cert.pem
  • Eszköz ca titkos kulcsa: <WRKDIR>\private\iot-edge-device-MyEdgeDeviceCA.key.pem
  • Legfelső szintű hitelesítésszolgáltató: <WRKDIR>\certs\azure-iot-test-only.root.ca.cert.pem

A tanúsítványfájlok áthelyezéséhez használhat olyan szolgáltatást Azure Key Vault vagy egy olyan függvényt, mint a Biztonságos másolási protokoll. Ha a tanúsítványokat a IoT Edge eszközön generálta, kihagyhatja ezt a lépést, és használhatja a munkakönyvtár elérési útját.

Ha linuxos IoT Edge-t használ az Windows-on, a Azure IoT Edge-fájlban található SSH-kulcsot kell használnia a gazda operációs rendszer és a Linux rendszerű virtuális gép közötti fájlátvitel id_rsa hitelesítéséhez. Az paranccsal lekéri a Linux rendszerű virtuális gép Get-EflowVmAddr IP-címét. Ezután a következő paranccsal hitelesített SCP-t is el lehet végezni:

C:\WINDOWS\System32\OpenSSH\scp.exe -i 'C:\Program Files\Azure IoT Edge\id_rsa' <PATH_TO_SOURCE_FILE> iotedge-user@<VM_IP>:<PATH_TO_FILE_DESTINATION>

A IoT Edge konfigurálása az új tanúsítványokkal

  1. Nyissa meg IoT Edge biztonsági démon konfigurációs fájlját: /etc/iotedge/config.yaml

  2. Állítsa be a config.yaml fájlban lévő tanúsítványtulajdonságokat a tanúsítvány és az eszköz IoT Edge URI-elérési útjára. Távolítsa el # a tanúsítványtulajdonságok előtti karaktert a négy sor eltávolításához. Győződjön meg arról, hogy a tanúsítványok: sor nem tartalmaz megelőző szóközöket, és hogy a beágyazott elemeket két szóköz behúzása tartalmazza. Például:

    certificates:
       device_ca_cert: "file:///<path>/<device CA cert>"
       device_ca_pk: "file:///<path>/<device CA key>"
       trusted_ca_certs: "file:///<path>/<root CA cert>"
    
  3. Győződjön meg arról, hogy az iotedge felhasználó olvasási engedélyekkel rendelkezik a tanúsítványokat tartó címtárhoz.

  4. Ha korábban már használt más tanúsítványokat IoT Edge az eszközön, törölje a következő két könyvtárban található fájlokat, mielőtt újraindítja a IoT Edge:

    • /var/lib/iotedge/hsm/certs
    • /var/lib/iotedge/hsm/cert_keys
  5. Indítsa újra IoT Edge.

    sudo iotedge system restart
    
  1. Nyissa meg IoT Edge biztonsági démon konfigurációs fájlját: /etc/aziot/config.toml

  2. Keresse meg trust_bundle_cert a paramétert a fájl elején. Adja meg a fájl URI-ját az eszköz legfelső szintű hitelesítésszolgáltatói tanúsítványának.

    trust_bundle_cert = "file:///<path>/<root CA cert>"
    
  3. Keresse meg a szakaszt a [edge_ca] config.toml fájlban. A szakasz sorait ne adja meg, és adja meg a tanúsítvány és a kulcsfájlok elérési útját a IoT Edge eszközön.

    [edge_ca]
    cert = "file:///<path>/<device CA cert>"
    pk = "file:///<path>/<device CA key>"
    
  4. Győződjön meg arról, hogy a szolgáltatás olvasási engedélyekkel rendelkezik a tanúsítványokat és kulcsokat tartó könyvtárakhoz.

    • A titkos kulcsfájlnak az aziotks csoport tulajdonában kell lennie.
    • A tanúsítványfájloknak az aziotcs csoport tulajdonában kell lennie.

    Tipp

    Ha a tanúsítvány csak olvasható, tehát Ön hozta létre, és nem szeretné, hogy a IoT Edge szolgáltatás elforgatja azt, állítsa a titkos kulcsfájlt 0440-es üzemmódra, a tanúsítványfájlt pedig 0444-es üzemmódra. Ha létrehozta a kezdeti fájlokat, majd úgy konfigurálta a tanúsítványszolgáltatást, hogy a jövőben váltsa át a tanúsítványt, állítsa a titkos kulcsfájlt 0660 módra, a tanúsítványfájlt pedig 0664-es üzemmódra.

  5. Ha korábban már használt tanúsítványokat IoT Edge az eszközön, törölje a következő könyvtárban található fájlokat. IoT Edge újra létrehozza őket a megadott új hitelesítésszolgáltatói tanúsítvánnyal.

    • /var/lib/aziot/certd/certs
  6. Alkalmazza a konfigurációs módosításokat.

    sudo iotedge config apply
    

Tanúsítvány élettartamának testreszabása

IoT Edge- és tanúsítványokat hoz létre az eszközön számos esetben, például:

  • Ha nem ad meg saját éles tanúsítványokat a IoT Edge telepítésekor és kiépítésekor, a IoT Edge-biztonságkezelő automatikusan létrehoz egy eszköz ca tanúsítványát. Ez az önaírt tanúsítvány csak fejlesztési és tesztelési célokra használható, éles környezetben nem. Ez a tanúsítvány 90 nap után lejár.
  • A IoT Edge biztonsági vezető egy számítási feladathoz szükséges hitelesítésszolgáltatói tanúsítványt is létrehoz, amelyet az eszköz hitelesítésszolgáltatói tanúsítványa írt alá

További információ a különböző tanúsítványok függvényéről egy IoT Edge eszközön: A tanúsítványok használatának Azure IoT Edge használata.

E két automatikusan létrehozott tanúsítványhoz be lehet állítani egy jelzőt a konfigurációs fájlban a tanúsítványok élettartamának napjainak számának konfigurálása érdekében.

Megjegyzés

Van egy harmadik, automatikusan generált tanúsítvány, IoT Edge a IoT Edge-kiszolgáló tanúsítványa. A tanúsítvány élettartama mindig 90 nap, de a lejárat előtt automatikusan megújul. A konfigurációs fájlban automatikusan létrehozott hitelesítésszolgáltató élettartam-értéke nincs hatással erre a tanúsítványra.

A megadott számú nap után lejáró IoT Edge újra a tanúsítványt az eszköz hitelesítésszolgáltatói tanúsítványának újragenerálása előtt. Az eszköz hitelesítésszolgáltatói tanúsítványa nem újul meg automatikusan.

  1. Ha a tanúsítvány lejáratát nem az alapértelmezett 90 napra konfigurálja, adja hozzá a napokban megadott értéket a konfigurációs fájl tanúsítványok szakaszhoz.

    certificates:
      device_ca_cert: "<ADD URI TO DEVICE CA CERTIFICATE HERE>"
      device_ca_pk: "<ADD URI TO DEVICE CA PRIVATE KEY HERE>"
      trusted_ca_certs: "<ADD URI TO TRUSTED CA CERTIFICATES HERE>"
      auto_generated_ca_lifetime_days: <value>
    

    Megjegyzés

    Jelenleg a libiisesm korlátozása megakadályozza a tanúsítványok használatát, amelyek 2038. január 1-jén vagy azt követően lejárnak.

  2. Törölje a mappa tartalmát hsm a korábban létrehozott tanúsítványok eltávolításához.

    • /var/lib/iotedge/hsm/certs
    • /var/lib/iotedge/hsm/cert_keys
  3. Indítsa újra a IoT Edge szolgáltatást.

    sudo systemctl restart iotedge
    
  4. Erősítse meg az élettartam beállítását.

    sudo iotedge check --verbose
    

    Ellenőrizze az éles üzemre való készenlét: tanúsítványok ellenőrzése kimenetét, amely az automatikusan létrehozott eszköz ca-tanúsítványai lejáratáig eltévő napok számát sorolja fel.

  1. Ha nem az alapértelmezett 90 napra konfigurálja a tanúsítvány lejáratát, adja hozzá a napokban megadott értéket a konfigurációs fájl Peremhálózati hitelesítésszolgáltatói tanúsítvány (rövid útmutató) szakaszhoz.

    [edge_ca]
    auto_generated_edge_ca_expiry_days = <value>
    
  2. Törölje a és a mappa certd tartalmát a korábban létrehozott tanúsítványok keyd eltávolításához: /var/lib/aziot/certd/certs``/var/lib/aziot/keyd/keys

  3. Alkalmazza a konfigurációs módosításokat.

    sudo iotedge config apply
    
  4. Erősítse meg az új élettartam beállítását.

    sudo iotedge check --verbose
    

    Ellenőrizze az éles üzemre való készenlét kimenetét: tanúsítványok ellenőrzése, amely az automatikusan létrehozott eszköz ca-tanúsítványai lejáratáig eltévő napok számát sorolja fel.

Következő lépések

A tanúsítványok IoT Edge szükséges lépés a megoldás éles környezetben való üzembe helyezése előtt. További információ arról, hogyan készítheti elő a saját IoT Edge éles környezetben való üzembe helyezésére.