Client Linux non géré

circle-info

Applicable à la version 2.9 de SCEPman et ultérieure

circle-exclamation

Cette méthode peut être utilisée pour inscrire des certificats pour des utilisateurs et des appareils qui ne sont pas gérés ou qui sont gérés par un MDM autre qu’Intune.

Prérequis

1. Inscription en libre-service

Pour inscrire des certificats, les utilisateurs doivent être authentifiés afin de vérifier leur éligibilité. Suivez ce guide pour obtenir des instructions étape par étape sur la façon de configurer cela

Inscription en libre-servicechevron-right

2. Paramètres de l'App Service

Configuration

Nécessaire pour le renouvellement du certificat

Configurez votre App Service SCEPman pour accepter les certificats clients mTLS. Dans le volet Configuration de la section Paramètres, vérifiez que le mode de certificat client dans Certificats clients entrants est défini sur Optionnel.

Ne définissez pas le mode de certificat client sur Exiger ou Autoriser, car cela perturberait le fonctionnement normal de SCEPman sur les points de terminaison SCEP !

Variables d'environnement

Pour pouvoir utiliser ce scénario, vous devez définir les variables d'environnement suivantes sur le service d’application SCEPman.

Nécessaire pour l'enregistrement et le renouvellement des certificats

Définissez cette variable sur true pour activer la validation des demandes de signature de certificat (CSR).

Nécessaire pour le renouvellement du certificat

Définissez cette variable sur true pour activer les renouvellements de certificats.

Nécessaire pour le renouvellement du certificat

Définissez cette variable sur une liste séparée par des virgules des types de certificats pour lesquels vous souhaitez autoriser le renouvellement. Consultez la documentation de la variable liée pour la liste des types de certificats possibles.

Exemple : Statique,IntuneUser,IntuneDevice

Ce scénario inscrira des certificats du type IntuneUser.

Module PowerShell SCEPmanClient

Requêtes initiales

Vous pouvez utiliser le module PowerShell SCEPmanClient pour demander des certificats sur votre appareil Linux :

New-SCEPmanCertificate -Url 'scepman.contoso.com' -SubjectFromUserContext -SaveToFolder '~/certs/'

L’utilisateur devra ensuite se connecter de manière interactive dans une session de navigateur et un certificat pour son compte connecté sera créé.

Renouvellement de certificat

Vous pouvez également utiliser le module PowerShell pour renouveler des certificats déjà existants. Cela évite aussi l’exigence d’utiliser un principal de service pour l’authentification :

Script d’inscription et de renouvellement

Si le module PowerShell n’est pas une option pour vous, le enrollrenewcertificate.sharrow-up-right script peut être utilisé pour recevoir initialement un certificat ainsi que pour le vérifier et tenter un renouvellement s’il est sur le point d’expirer.

Prérequis client

Les prérequis suivants doivent être présents sur le client/hôte exécutant pour pouvoir utiliser l’API REST d’enrôlement.

Azure CLIarrow-up-right (version 2.61 et supérieure)

L’interface Azure CLI est utilisée pour authentifier l’utilisateur qui s’enrôle afin de vérifier son éligibilité et récupérer le jeton d’accès.

cURL

Utilisé pour envoyer la CSR créée au point de terminaison de l’API d’enrôlement SCEPman et recevoir le certificat.

OpenSSL

OpenSSL est utilisé pour générer une clé privée et créer une CSR pour l’enrôlement ou le renouvellement d’un certificat.

Exemple :

1. Commande

Définit le comportement du script

Peut être l’un des suivants :

-u pour un certificat utilisateur avec détection automatique pour savoir s’il s’agit d’une inscription initiale ou d’un renouvellement

-d pour un certificat d’appareil avec détection automatique pour savoir s’il s’agit d’une inscription initiale ou d’un renouvellement

-r pour le renouvellement

-w pour l’inscription initiale d’un utilisateur

-x pour l’inscription initiale d’un appareil

circle-exclamation

2. URL du service d’application

L’URL du service d’application SCEPman.

Exemple : "https://scepman.contoso.net/"

3. API_SCOPE

Ceci est la portée d’API que vous pouvez créer dans l’ SCEPman-api enregistrement d’application dans votre environnement.

L’utilisateur se verra présenter la boîte de dialogue de consentement souhaitée et pourra ensuite utiliser la fonctionnalité en libre-service.

Exemple : "api://b7d17d51-8b6d-45eb-b42b-3dae638cd5bc/Cert.Enroll"

4. Répertoire des certificats

Le répertoire où le certificat sera créé ou essayé d’être renouvelé.

Exemple : ~/certs/

5. Nom de fichier du certificat

Le nom de fichier (sans extension) du certificat qui sera créé ou lu pour le renouvellement.

Exemple : "myCertificate"

6. Nom de fichier de la clé privée

Le nom de fichier de la clé privée qui sera créé ou lu pour le renouvellement.

Exemple : "myKey"

7. Seuil de renouvellement

Le nombre de jours avant l’expiration du certificat pour que le script commence le processus de renouvellement.

Exemple : 30

Considérations

  • Ce script n’encrypte pas les clés générées (cela nécessite une saisie de phrase de passe, donc le chiffrement a été omis pour permettre le renouvellement automatique).

  • Si vous renouvelez des certificats protégés par une phrase de passe depuis Certificate Master, vous devrez saisir cette phrase de passe afin de les renouveler.

Configurer le renouvellement automatique

Lorsque le script bash ci‑dessus est exécuté et détecte qu’un certificat a déjà été inscrit, il renouvellera le certificat (s’il est proche de son expiration) en utilisant mTLS. Si le script est exécuté régulièrement, cela garantira que le certificat est renouvelé lorsqu’il se rapproche de son expiration. Vous pouvez configurer un cronjob pour y parvenir. La commande ci‑dessous est un exemple de la manière dont cela peut être fait. Elle mettra en place un cronjob pour exécuter la commande quotidiennement (si le système est sous tension) et un cronjob pour exécuter la commande au redémarrage.

Étant donné que les commandes exécutées par Cron ne sont pas nécessairement lancées depuis le répertoire où se trouvent le script/les certificats, il est important de fournir les chemins absolus vers le script/les certificats.

Mis à jour

Ce contenu vous a-t-il été utile ?