Linux

CentOS 5.3

CA.pl(1)


CA.PL

NOM

CA.pl − interface amicale pour les programmes de certificats d’OpenSSL

SYNOPSIS

CA.pl [−?] [−h] [−help] [−newcert] [−newreq] [−newca] [−xsign] [−sign] [−signreq] [−signcert] [−verify] [fichiers]

DESCRIPTION

Le script CA.pl, écrit en perl, fournit les arguments à la commande openssl pour les opérations les plus courantes. Son but est de simplifier le processus de création et la gestion de certificats en employant des options simples.

OPTIONS DE LA COMMANDE

?, −h, −help

affiche un descriptif d’utilisation

−newcert

crée un nouveau certificat autosigné. La clé privée et le certificat sont écrits dans le fichier "newreq.pem".

−newreq

crée une nouvelle demande de certificat. La clé privée et le certificat sont écrits dans le fichier "newreq.pem".

−newca

crée une nouvelle hiérarchie CA à utiliser avec le programme ca (ou les options −signcert et −xsign). L’utilisateur devra saisir le nom du fichier de certificat CA (qui est censé contenir également la clé privée) ou, en appuyant sur ENTRÃE les détails du CA . Les fichiers et répertoires correspondants seront crées dans un dossier nommé "demoCA" dans le répertoire courant.

−pkcs12

crée un fichier PKCS #12 contenant le certificat utilisateur, la clé privée et le certificat CA . Le programme s’attend à trouver le certificat utilisateur et la clé privée dans le fichier "newcert.pem" et le certificat CA dans le fichier demoCA/cacert.pem, puis crée un fichier "newcert.p12". Cette commande peut ainsi être appelée après l’option −sign. Le fichier PKCS #12 peut être directement importée dans un browser (NdT :butineur tel que Mozilla). Un argument supplémentaire à la ligne de commande sera le "nom amical" du certificat (celui typiquement affiché dans la fenêtre des certificats du browser), autrement le nom par défaut sera "My Certificate".

−sign, −signreq, −xsign

appelle le programme ca pour signer une demande de certificat. Il s’attend à trouver la demande dans le fichier "newreq.pem". Le nouveau certificat est écrit dans le fichier "newcert.pem" sauf dans le cas de l’option −xsign ou il est envoyé vers la sortie standard.

−signCA

cette option est identique à −signreq utilisant la section v3_ca du fichier de configuration et transformant ainsi la demande signée en un certificat CA valide. Ceci est utile pour créer des CA intermédiaires à partir d’un CA racine.

−signcert

identique à −sign à la différence près que le certificat autosigné est attendu dans le fichier "newreq.pem".

−verify

vérifie le certificat contre le certificat CA pour "demoCA". Si aucun certificat n’est spécifié sur la ligne de commande, le fichier "newcert.pem" est vérifié.

fichiers

un ou plusieurs noms de fichier de certificat à utiliser avec la commande −verify.

EXEMPLES

Création d’une hiérarchie CA :

 CA.pl -newca

Exemple de création de certificat complet : créer un CA, créer une demande, signer la demande et finalement créer un fichier PKCS#12 pour le contenir.

 CA.pl -newca
 CA.pl -newreq
 CA.pl -signreq
 CA.pl -pkcs12 "Mon certificat de test"

CERTIFICATS DSA

Même si le CA.pl crée des CA et demandes au format RSA, il est toujours possible de l’utiliser avec des certificats et demandes de type DSA en utilisant la commande req(1) directement. L’exemple suivant montre les manipulations types :

Créer les paramètres DSA:

 openssl dsaparam -out dsap.pem 1024

Créer un certificat CA de type DSA avec sa clé privée :

 openssl req -x509 -newkey dsa:dsap.pem -keyout cacert.pem -out cacert.pem

Créer les fichiers et répertoires CA :

 CA.pl -newca

entrer cacert.pem lors de la demande pour le nom de fichier CA.

Créer une demande de certificat DSA et sa clé privée (un autre jeu de paramètres peut être généré auparavant) :

 openssl req -out newreq.pem -newkey dsa:dsap.pem

Signer la demande :

 CA.pl -signreq

NOTES

La plupart des noms de fichiers cités peuvent être modifiés en éditant le script CA.pl.

Si le répertoire demoCA existe, la commande −newca ne l’écrasera pas et n’effectuera aucune action. Ceci peut arriver lors d’un arrêt inopportun d’un appel précédent avec l’option −newca. Pour retrouver le comportement correct il faut supprimer le répertoire demoCA.

Sous certains environnements il peut s’avérer impossible d’exécuter le script CA.pl directement (par exemple Win32) et l’emplacement par défaut du fichier de configuration peut être erroné. Alors la commande

 perl -S CA.pl

peut être lancée (NdT : dans le répertoire où se trouve le script CA.pl) et la variable d’environnement OPENSSL_CONF permet de spécifier le chemin correct vers le fichier de configuration "openssl.conf".

Le script simplifie l’utilisation du programme openssl pour débutants. Son comportement n’est pas toujours celui voulu. Afin d’utiliser pleinement toutes les commandes concernant les certificats il faut appeler la commande openssl directement.

VARIABLES D’ENVIRONNEMENT

La variable OPENSSL_CONF si définie permet de spécifier l’emplacement d’un fichier de configuration alternatif. Elle doit contenir le chemin complet avec le nom du fichier et non seulement le dossier.

VOIR AUSSI

x509(1), ca(1), req(1), pkcs12(1), config(5)


CA.pl(1)