Introduction à la PKI avec DogTag
Introduction à la PKI Dogtag : fonctionnement et bonnes pratiques
Qu’est-ce qu’une PKI Dogtag ?
Une PKI (Infrastructure à Clés Publiques) est un ensemble de protocoles, de politiques, de normes et de logiciels qui permettent de gérer des certificats numériques et les clés publiques/privées associées. Dogtag est une PKI open-source développée principalement par Red Hat, et elle est largement utilisée pour sécuriser les communications dans les environnements d’entreprise.
Dans cet article, nous allons explorer le fonctionnement de la PKI Dogtag, y compris l’installation des autorités de certification racine et intermédiaires, la génération de clés pour un serveur et un client, les commandes pour révoquer ces clés, et enfin, les bonnes pratiques pour l’utilisation d’une PKI.
Installation de l’autorité de certification racine
Avant de commencer à utiliser la PKI Dogtag, nous devons installer l’autorité de certification racine. Cette autorité est responsable de la délivrance des certificats pour les autorités intermédiaires et les entités finales.
Étape 1 : Installer Dogtag
Tout d’abord, installez Dogtag sur le serveur dédié à l’autorité de certification racine :
sudo yum install -y dogtag-pki-server
Étape 2 : Configurer Dogtag
Configurez Dogtag en utilisant l’assistant de configuration :
sudo pkispawn -s CA
Suivez les étapes de l’assistant pour définir les paramètres de configuration, tels que le nom de domaine, le mot de passe de l’administrateur, etc.
Étape 3 : Démarrer Dogtag
Démarrez le service Dogtag CA :
sudo systemctl start pki-tomcatd@pki-tomcat.service
Installation d’autorités de certification intermédiaires
Maintenant que nous avons notre autorité de certification racine en place, nous pouvons installer des autorités de certification intermédiaires. Ces autorités permettent de diviser la charge de délivrance des certificats et de mieux gérer la PKI.
Étape 1 : Installer Dogtag sur le serveur de l’autorité intermédiaire
Installez Dogtag sur un autre serveur dédié à l’autorité de certification intermédiaire :
sudo yum install -y dogtag-pki-server
Étape 2 : Configurer Dogtag pour l’autorité intermédiaire
Configurez Dogtag sur le serveur de l’autorité intermédiaire :
sudo pkispawn -f <chemin_vers_fichier_de_configuration> -s SubsystemType=CA
Assurez-vous d’utiliser le fichier de configuration approprié pour l’autorité intermédiaire.
Étape 3 : Démarrer Dogtag sur le serveur de l’autorité intermédiaire
Démarrez le service Dogtag CA sur le serveur de l’autorité intermédiaire :
sudo systemctl start pki-tomcatd@pki-tomcat.service
Génération de clés pour un serveur et un client
Maintenant que nous avons mis en place notre infrastructure de PKI, nous pouvons générer des paires de clés pour un serveur et un client.
Étape 1 : Génération d’une paire de clés pour le serveur
Pour générer une paire de clés pour le serveur, utilisez la commande suivante :
sudo certutil -d /etc/pki/pki-tomcat/alias/ -S -n "MonServeur" -s "CN=monserveur.example.com" -k rsa -g 2048 -t "u,u,u"
Explications :
-d
: Spécifie le répertoire de stockage des clés.-S
: Indique que nous voulons signer une demande de certificat.-n
: Nom de l’identifiant unique pour le certificat du serveur.-s
: Sujet du certificat (dans cet exemple, le nom de domaine du serveur).-k
: Algorithme de génération de clé (ici, RSA).-g
: Taille de la clé (2048 bits dans cet exemple).-t
: Autorisations pour la clé (lecture, écriture, import/export).
Étape 2 : Génération d’une paire de clés pour le client
Pour générer une paire de clés pour un client, utilisez la commande suivante :
sudo certutil -d /etc/pki/pki-tomcat/alias/ -S -n "MonClient" -s "CN=monclient" -k rsa -g 2048 -t "u,u,u"
Explications :
- Les paramètres sont similaires à ceux de la génération de clés pour le serveur.
Révocation de clés
La révocation de clés est essentielle pour garantir la sécurité de la PKI, notamment lorsque des clés privées ont été compromises ou lorsque des entités ne doivent plus être autorisées à utiliser leur certificat.
Révocation d’un certificat de serveur
Pour révoquer le certificat d’un serveur, utilisez la commande suivante :
sudo pkirevoke -k /etc/pki/pki-tomcat/alias -n "MonServeur"
Révocation d’un certificat de client
Pour révoquer le certificat d’un client, utilisez la commande suivante :
sudo pkirevoke -k /etc/pki/pki-tomcat/alias -n "MonClient"
Bonnes pratiques concernant l’utilisation d’une PKI
-
Sauvegarder régulièrement les clés privées et les bases de données de la PKI : En cas de défaillance matérielle ou de corruption des données, les sauvegardes sont essentielles pour restaurer la PKI.
-
Protéger physiquement l’infrastructure : Assurez-vous que les serveurs hébergeant la PKI sont physiquement sécurisés pour éviter tout accès non autorisé.
-
Configurer un accès sécurisé aux certificats : Restreignez l’accès aux certificats et aux clés privées uniquement aux utilisateurs autorisés.
-
Utiliser des durées de validité appropriées pour les certificats : Les certificats doivent avoir une durée de validité raisonnable pour éviter les risques liés aux clés obsolètes.
-
Surveiller les événements de la PKI : Mettez en place un mécanisme de journalisation et de surveillance pour détecter toute activité suspecte ou tentative d’attaque.
-
Mettre en place des protocoles de révocation rapides : En cas de compromission d’une clé privée, révoquez rapidement le certificat associé pour minimiser les risques.
En suivant ces bonnes pratiques, vous pourrez maintenir une PKI Dogtag robuste et sécurisée pour protéger les communications et les données de votre infrastructure.