Principes de base du service d'enregistrement des périphériques réseau (Network Device Enrollment Service, NDES)

Le Simple Certificate Enrollment Protocol (SCEP) a été développé par Verisign pour Cisco au début des années 2000 afin de pouvoir utiliser une méthode simplifiée pour demander des certificats. Auparavant, il fallait générer manuellement une demande de certificat pour chaque appareil du réseau, la transmettre à une autorité de certification, puis réinstaller manuellement le certificat délivré sur l'appareil correspondant.

Une normalisation IETF n'a eu lieu que deux décennies plus tard avec le RFC 8894.

À l'origine, SCEP a été conçu pour fournir des certificats aux périphériques réseau tels que les commutateurs et les routeurs. Aujourd'hui, beaucoup plus de types d'appareils supportent la demande de certificat via SCEP.

Il peut s'agir, par exemple, de

Les services de certificats Microsoft Actve Directory prennent en charge le protocole SCEP par le biais du service d'inscription des périphériques réseau (Network Device Enrollment Service, NDES) depuis Windows Server 2003.

Fonctionnement

Connaissez-vous TameMyCerts? TameMyCerts est un add-on pour l'autorité de certification Microsoft (Active Directory Certificate Services). Il étend la fonction de l'autorité de certification et permet de Application de la réglementationIl s'agit d'un logiciel de gestion des certificats qui permet d'automatiser l'émission de certificats en toute sécurité. TameMyCerts est unique dans l'écosystème Microsoft, a déjà fait ses preuves dans d'innombrables entreprises du monde entier et est disponible sous une licence libre. Il peut téléchargé via GitHub et être utilisé gratuitement. Une maintenance professionnelle est également proposée.

Le problème fondamental par rapport à un membre du domaine Active Directory auquel les Demande de certificat via RPC/DCOM est que les appareils concernés ne disposent pas d'une identité gérée de manière centralisée qui pourrait être utilisée pour leur identification automatique, comme c'est le cas pour Kerberos dans Active Directory. En outre, tous les appareils devraient parler une interface standardisée permettant de demander des certificats auprès de n'importe quel produit d'autorité de certification.

Dans ce cas, le serveur SCEP agit comme un intermédiaire entre le terminal qui a besoin d'un certificat et l'autorité de certification.

Tout d'abord, un administrateur (dans le sens de : quelqu'un qui gère un terminal qui doit recevoir un certificat) se connecte au serveur SCEP avec son identifiant. Dans le cas du NDES, il s'agit d'un identifiant Active Directory. Celui-ci est nécessaire pour la demande de certificats sur un qui est configuré pour être utilisé sur le serveur NDES..

Le concept initial prévoyait que l'administrateur mentionné soit une personne physique qui effectue cette étape manuellement. Dans la pratique, cette étape est toutefois généralement déléguée à un logiciel de gestion (par exemple Mobile Device Management tel que VMware AirWatch ou Microsoft Intune).

Si le serveur NDES constate que l'administrateur est autorisé à demander des certificats, il lui fournit un mot de passe à usage unique (One Time Password, OTP).

Exemple : un mot de passe à usage unique généré par NDES

Ce mot de passe à usage unique est maintenant déposé sur le terminal avec l'adresse du serveur NDES. L'appareil est maintenant en mesure de générer une paire de clés ainsi qu'une demande de certificat et de les envoyer au serveur NDES. Il s'authentifie avec le mot de passe à usage unique configuré précédemment.

Au lieu d'un mot de passe à usage unique, l'appareil peut s'identifier s'identifier avec un certificat existant, Le certificat peut être renouvelé s'il contient la même identité et s'il a été délivré par la même autorité de certification (le mode de renouvellement ne fonctionne que si l'autorité de certification qui a délivré les certificats à renouveler est membre de l'Union européenne). NTAuthCertificates est). De même, il serait possible, configurer un mot de passe statique, c'est-à-dire qui ne change pas, ou désactiver complètement l'exigence d'un mot de passe, Il est possible d'utiliser la fonction d'enregistrement, mais cela ne devrait pas être fait pour des raisons de sécurité.

Avant de générer la demande de certificat, une requête est envoyée au serveur NDES (opération GetCACaps) afin de déterminer les fonctions prises en charge par le serveur.

Exemple : les fonctions supportées par NDES en réponse à la requête GetCACaps

De même, le certificat d'autorité de certification (opération GetCACert) est demandé. Dans le cas du NDES, le certificat d'autorité de certification n'est toutefois pas le seul à être renvoyé. Certificat d'autorité d'enregistrement (RA), Il s'agit du certificat „CEP Encryption“ que l'autorité de certification a délivré au serveur NDES, le désignant ainsi comme son suppléant.

Exemple : une chaîne de certificats renvoyée par NDES en réponse à la requête GetCACerts

Une fois que le terminal a authentifié l'autorité de certification à l'aide du certificat de l'autorité d'enregistrement, une demande de certificat est créée au format PKCS#10. Celle-ci contient comme attribut (si utilisé) le mot de passe à usage unique.

La demande de certificat PKCS#10 est ensuite envoyée dans une Syntaxe du message cryptographique (CMS, une évolution de la norme PKCS#7) SignedData structure de données et signée, selon le cas, avec un certificat auto-signé (en cas de première demande) ou un certificat existant déjà délivré par la même autorité de certification (en cas de renouvellement), puis envoyée à l'autorité de certification.

Les informations confidentielles telles que le mot de passe à usage unique contenu dans la demande de certificat en tant qu'attribut „ChallengePassword“ sont cryptées avec la clé publique du certificat RA demandé précédemment. Pour cette raison, il n'est généralement pas possible de soumettre une demande de certificat générée manuellement via SCEP par un tiers, car celui-ci ne dispose généralement pas de la clé privée pour signer le message CMS (qui doit correspondre à la clé publique de la demande de certificat) et le mot de passe à usage unique doit déjà être saisi dans la demande de certificat lors de sa création.

Si l'authentification par mot de passe à usage unique ou par certificat a réussi, le serveur NDES envoie la demande de certificat par courrier électronique. RPC/DCOM à l'autorité de certification, où le certificat est délivré (ou la demande de certificat refusée). La demande de certificat PKCS#10 est alors emballée dans un nouveau message CMS (PKCS#7) et signée par le serveur NDES au moyen de son certificat RA („Enrollment Agent“), ce qui permet à l'autorité de certification de vérifier la présence d'une signature valable (malheureusement, cette vérification n'a pas lieu dans la configuration par défaut, elle doit être activée séparément). Cela empêche les demandes de certificat de passer par le service NDES directement contre l'autorité de certification.

Il s'agit en l'occurrence pas pour obtenir un Inscription à la demande de (EOBO) processus. En conséquence, les paramètres des agents d'enregistrement de certificats restreints sur l'autorité de certification n'ont aucun effet sur le processus.

Si le certificat a été émis, il est transmis au serveur NDES, qui délivre à son tour le certificat au terminal demandeur.

Aperçu : séquence de la communication SCEP

Variantes

NDES peut être configuré pour les modes de fonctionnement suivants :

Problèmes de sécurité

Lors de l'utilisation d'un service d'enregistrement pour des appareils en réseau, il convient de tenir compte des points suivants en matière de sécurité :

Particularités

  • L'implémentation Microsoft du protocole SCEP, appelée NDES, ne peut gérer qu'une seule combinaison d'autorité de certification et de modèle de certificat. Par conséquent, plusieurs serveurs NDES doivent être exploités s'il y a plusieurs cas d'utilisation qui doivent être servis par SCEP.
  • Les certificats d'autorité d'enregistrement peuvent seulement avec Fournisseurs de services cryptographiques (CSP) et seules les clés RSA peuvent être utilisées pour ces derniers. Pour les certificats d'appareil demandés via NDES cette restriction ne s'applique pas.
  • Une haute disponibilité pour NDES ne peut pas être mise en œuvre de manière judicieuse, car les mots de passe à usage unique ne peuvent pas être synchronisés entre plusieurs nœuds.
  • L'installation d'un serveur NDES nécessite inutilement des droits d'administrateur d'entreprise, ce qui peut toutefois être contourné.

Conclusion

Avec SCEP et l'implémentation NDES de Microsoft, il est possible de distribuer automatiquement des certificats à des appareils qui ne disposent pas d'un identifiant Active Directory. Il peut s'agir d'appareils réseau comme les commutateurs ou les routeurs, mais aussi d'appareils mobiles comme les smartphones et les tablettes. Mais il est également possible, par exemple, d'équiper automatiquement les serveurs dans le cloud de certificats après leur installation.

Liens complémentaires :

Sources externes

Les commentaires sont fermés.

fr_FRFrançais