Créer et configurer un point de terminaison privé pour IoT Central
vous pouvez connecter vos appareils à votre application IoT Central à l’aide d’un point de terminaison privé dans une Réseau virtuel Azure.
Les points de terminaison privés utilisent des adresses IP privées d’un espace d’adressage de réseau virtuel pour connecter vos appareils en privé à votre application IoT Central. Le trafic réseau entre les appareils figurant sur le réseau virtuel et la plateforme IoT traverse le réseau virtuel et une liaison privée sur le réseau principal de Microsoft, ce qui élimine toute exposition sur l’Internet public. Cet article vous montre comment créer un point de terminaison privé pour votre application IoT Central.
Prérequis
- Un abonnement Azure actif. Si vous n’avez pas d’abonnement Azure, créez un compte gratuit avant de commencer.
- Une application IoT Central. Pour plus d’informations, consultez Créer une application IoT Central.
- Un réseau virtuel dans votre abonnement Azure. Pour en savoir plus, consultez Créer un réseau virtuel. Pour suivre les étapes décrites dans ce guide, vous n’avez pas besoin d’un hôte Bastion ou d’une machine virtuelle.
Créer un Private Endpoint
Il existe plusieurs façons de créer un point de terminaison privé pour l’application IoT Central :
- utilisez le portail Azure pour créer une ressource de point de terminaison privé directement. Utilisez cette option si vous n’avez pas accès à l’application IoT Central qui a besoin du point de terminaison privé.
- Créer un point de terminaison privé sur une application IoT Central existante
Pour créer un point de terminaison privé sur une application IoT Central existante :
Dans le portail Azure, accédez à votre application, puis sélectionnez Mise en réseau.
Sélectionnez l’onglet Connexions de points de terminaison privés, puis sélectionnez + Point de terminaison privé.
Sous l’onglet Notions de base, entrez un nom et sélectionnez une région pour votre point de terminaison privé. Sélectionnez ensuite Suivant : Ressource .
L’onglet Ressource est rempli automatiquement pour vous. Sélectionnez Suivant : réseau virtuel.
Sous l’onglet Réseau virtuel, sélectionnez le réseau virtuel et le sous-réseau où vous souhaitez déployer votre point de terminaison privé.
Sous le même onglet, dans la section Configuration d’adresse IP privée, sélectionnez Allouer dynamiquement l’adresse IP.
Sélectionnez Suivant : DNS.
Dans l’onglet DNS, sélectionnez Oui pour Intégrer à une zone DNS privée. Le DNS privé résout tous les points de terminaison nécessaires en adresses IP privées dans votre réseau virtuel :
Remarque
En raison des capacités de mise à l’échelle automatique dans IoT Central, vous devez utiliser l’option d'intégration DNS privé si possible. Si, pour une raison quelconque, vous ne pouvez pas utiliser cette option, consultez Utiliser un serveur DNS personnalisé.
Sélectionnez Suivant : Balises.
Dans l’onglet Balises, configurez les balises dont vous avez besoin, puis sélectionnez Suivant : passer en revue + créer.
Passez en revue les détails de la configuration, puis sélectionnez Créer pour créer votre ressource de point de terminaison privé.
Vérifier la création d’un point de terminaison privé
Lorsque la création du point de terminaison privé est terminée, vous pouvez y accéder dans le portail Azure.
Pour afficher tous les points de terminaison privés créés pour votre application :
Dans le portail Azure, accédez à votre application IoT Central, puis sélectionnez Mise en réseau.
Sélectionnez l’onglet Connexions de point de terminaison privées. Le tableau affiche tous les points de terminaison privés créés pour votre application.
Utiliser un serveur DNS personnalisé
Dans certains cas, vous ne pourrez peut-être pas intégrer la zone DNS privée du réseau virtuel. Par exemple, vous pouvez utiliser votre propre serveur DNS, ou créer des enregistrements DNS à l’aide des fichiers hôtes sur vos machines virtuelles. Cette section décrit comment accéder aux zones DNS.
Installez chocolatey.
Installez ARMclient :
choco install armclient
Se connecter à ARMClient :
armclient login
Utilisez la commande suivante pour obtenir les zones DNS privées de votre application IoT Central. Remplacez les espaces réservés par les détails de votre application IoT Central :
armclient GET /subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.IoTCentral/IoTApps/<AppName>/privateLinkResources?api-version=2021-11-01-preview
Vérifiez la réponse. Les zones DNS requises se trouvent dans le tableau
requiredZoneNames
dans la charge utile de la réponse :{ "value": [ { "id": "/subscriptions/<subscriptionId>/resourceGroups/<resourceGroupName>/providers/Microsoft.IoTCentral/IoTApps/<AppName>/privateLinkResources/iotApp", "name": "ioTApp", "type": "Microsoft.IoTCentral/IoTApps/privateLinkResources", "location": "<the region of your application>", "properties": { "groupId": "iotApp", "requiredMembers":[ "<IoTCentral Name>", "<DPS Name>", "<IoTHub1 Name>", "<IoTHub2 Name>", "<EH1 Name>", "<EH2 Name>"], "requiredZoneNames": [ "privatelink.azureiotcentral.com", "privatelink.azure-devices.net", "privatelink.servicebus.windows.net", "privatelink.azure-devices-provisioning.net"], "provisioningState": "Succeeded"} } ] }
Dans le portail Azure, accédez à votre point de terminaison privé, puis sélectionnez Configuration DNS. Sur cette page, vous trouverez les informations requises pour le mappage d’adresse IP au nom DNS.
Avertissement
Ces informations vous permettent de renseigner votre serveur DNS personnalisé avec les enregistrements nécessaires. Si possible, vous devez intégrer les zones DNS privé du réseau virtuel et ne pas configurer votre propre serveur DNS personnalisé. Les points de terminaison privés pour les applications IoT Central diffèrent des autres services Azure PaaS. Dans certaines situations, par exemple la mise à l’échelle automatique IoT Central, IoT Central met à l’échelle le nombre de hubs IoT accessibles via le point de terminaison privé. Si vous choisissez de remplir votre propre serveur DNS personnalisé, il vous incombe de mettre à jour les enregistrements DNS chaque fois que IoT Central effectue des mises à l’échelle automatique, et de supprimer ultérieurement les enregistrements lorsque le nombre d’hubs IoT est mis à l’échelle.
Restreindre l’accès public
Pour restreindre l’accès public de vos appareils à IoT Central, désactivez l’accès à partir des points de terminaison publics. Une fois l’accès public désactivé, les appareils ne peuvent plus se connecter à IoT Central à partir de réseaux publics, et ils doivent utiliser un point de terminaison privé :
Dans le portail Azure, accédez à votre application IoT Central, puis sélectionnez Mise en réseau.
Sous l’onglet Accès public, sélectionnez Désactivé pour l’accès au réseau public.
Si vous le souhaitez, vous pouvez définir une liste d’adresses IP/plages qui peuvent se connecter au point de terminaison public de votre application IoT Central.
Cliquez sur Enregistrer.
Conseil
Si vous choisissez de définir une liste de plages/adresses IP qui peuvent se connecter au point de terminaison public de votre application IoT Central, veillez à inclure l’adresse IP de n’importe quel proxy que vos appareils utilisent pour se connecter à votre application IoT Central.
Se connecter à un point de terminaison privé
Lorsque vous désactivez l’accès au réseau public pour votre application IoT Central, vos appareils ne sont pas en capacité de se connecter au point de terminaison global du service de provisionnement des appareils (DPS). Cela est dû au fait que le seul nom de domaine complet pour DPS a une adresse IP directe dans votre réseau virtuel. Le point de terminaison global est désormais inaccessible.
Quand vous configurez un point de terminaison privé pour votre application IoT Central, le point de terminaison de service IoT Central est mis à jour pour refléter le point de terminaison direct DPS.
Mettez à jour votre code d’appareil pour utiliser le point de terminaison direct DPS.
Bonnes pratiques
N’utilisez pas d’URL de sous-domaine de lien privé pour connecter vos appareils à IoT Central. Utilisez toujours l’URL DPS indiquée dans votre application IoT Central après avoir créé le point de terminaison privé.
Utilisez des zones DNS privées fournies par Azure pour la gestion DNS. Évitez d’utiliser votre propre serveur DNS, car vous devez constamment mettre à jour votre configuration DNS pour maintenir la mise à l’échelle automatique des ressources d’IoT Central.
Si vous créez plusieurs points de terminaison privés pour la même ressource IoT Central, la zone DNS peut remplacer les noms de domaine complets. Vous devez donc les rajouter.
Limites
Actuellement, la connectivité privée est activée uniquement pour les connexions d’appareils aux hubs IoT et aux points de gestion actifs sous-jacents dans l’application IoT Central. L’interface utilisateur Web de IoT Central et les API continuent de fonctionner via leurs points de terminaison publics.
Le point de terminaison privé doit être déployé dans la même région que le réseau virtuel.
Pour désactiver l’accès réseau public :
Les appareils simulés IoT Central ne fonctionnent pas, car ils n’ont pas de connectivité à votre réseau virtuel.
Le point de terminaison global DPS (
global.device-provisioning.net
) n’est pas accessible. Mettez à jour le microprogramme de votre appareil pour vous connecter à l’instance de DPS directe. Vous pouvez trouver l’URL du DPS direct dans la page Groupes de connexion appareils simulés de l’appareil dans votre application IoT central.
Vous ne pouvez pas renommer votre application IoT Central une fois que vous avez configuré un point de terminaison privé.
Vous ne pouvez pas déplacer votre point de terminaison privé ou l’application IoT Central vers un autre groupe de ressources ou abonnement.
La prise en charge est limitée à IPv4. IPv6 n’est pas pris en charge.
Dépannage
Si vous avez des difficultés à vous connecter à un point de terminaison privé, utilisez les conseils de dépannage suivants :
Vérifiez l’état de la connexion
Assurez-vous que l’état de connexion de votre point de terminaison privé est défini sur approuvé.
- Dans le portail Azure, accédez à votre application, puis sélectionnez Mise en réseau.
- Sélectionnez l’onglet Connexion aux points de terminaison privés. Vérifiez que l’état de la connexion est Approuvé pour votre point de terminaison privé.
Exécuter les vérifications au sein du réseau virtuel
Utilisez les vérifications suivantes pour examiner les problèmes de connectivité au sein du même réseau virtuel. Déployez une machine virtuelle dans le même réseau virtuel que celui sur lequel vous avez créé le point de terminaison privé. Connectez-vous à la machine virtuelle pour exécuter les tests suivants.
Pour vous assurer que la résolution de noms fonctionne correctement, effectuez une itération sur tous les noms de domaine complets dans la configuration DNS du point de terminaison privé et exécutez les tests à l’aide de nslookup
, Test-NetConnection
ou d’autres outils similaires pour vérifier que chaque DNS correspond à son adresse IP correspondante.
En outre, exécutez la commande suivante pour vérifier que le nom DNS de chaque nom de domaine complet correspond à l’adresse IP correspondante.
#replace the <...> placeholders with the correct values
nslookup iotc-….azure-devices.net
Le résultat ressemble à la sortie suivante :
#Results in the following output:
Server:127.0.0.53
Address:127.0.0.53#53
Non-authoritative answer: xyz.azure-devices.net
canonical name = xyz.privatelink.azure-devices.net
Name:xyz.privatelink.azure-devices.net
Address: 10.1.1.12
Si vous trouvez un nom de domaine complet qui ne correspond pas à l’adresse IP correspondante, corrigez votre serveur DNS personnalisé. Si vous n’utilisez pas de serveur DNS personnalisé, créez un ticket de support.
Vérifier si vous avez plusieurs points de terminaison privés
La configuration DNS peut être remplacée si vous créez ou supprimez plusieurs points de terminaison privés pour une seule application IoT Central :
- Dans le Portail Azure, accédez à la ressource de point de terminaison privé.
- Dans la section DNS, assurez-vous qu’il existe des entrées pour toutes les ressources nécessaires : IoT Hubs, Event Hubs, DPS et FQDN IoT Central.
- Vérifiez que les adresses IP (et les adresses IP des autres points de terminaison privés utilisant cette zone DNS) sont reflétées dans l’enregistrement A du DNS.
- Supprimez tous les enregistrements A pour les adresses IP des points de terminaison privés antérieurs précédemment supprimés.
Autres conseils de dépannage
Si, après avoir essayé toutes ces vérifications, vous rencontrez toujours un problème, essayez le Guide de résolution des problèmes de point de terminaison privé.
Si toutes les vérifications réussissent et que vos appareils ne peuvent toujours pas établir de connexion à IoT Central, contactez l’équipe de sécurité de l’entreprise responsable des pare-feu et de la mise en réseau en général. Les raisons possibles d’un tel échec sont les suivantes :
- Configuration incorrecte de votre réseau virtuel Azure
- Configuration incorrecte d’un dispositif de pare-feu
- Configuration incorrecte des itinéraires définis par l’utilisateur dans votre réseau virtuel Azure
- Un proxy mal configuré entre l’appareil et les ressources de IoT Central
Étapes suivantes
Maintenant que vous avez appris à créer un point de terminaison privé pour votre application, voici l’étape suivante suggérée :