Commande certcreate
Objectif
certcreate demande un nouveau certificat pour l'utilisateur spécifié.
Syntaxe
création de certificat [-S nom_service] [-s date de début] [-e date de fin] { -f fichier | [-b | -t] } [-p fichier de clés privées] -l libellé [-a nom_alt_sujet] nom_distinctif_sujet [nom-utilisateur]
Descriptif
La commande certcreate appelle les services d'entité finale et les bibliothèques et demande qu'un nouveau certificat soit créé avec les informations d'identification contenues sur la ligne de commande. Le service à utiliser est spécifié par l'option -S . Les services disponibles sont définis dans /usr/lib/security/pki/ca.cfg. Les demandes de certificat sans l'option -S sont créées à l'aide du service local. Il est erroné de spécifier un nom de service qui ne comporte pas d'entrée dans le fichier /usr/lib/security/pki/ca.cfg . L'entrée de service du fichier ca.cfg indique l'autorité de certification qui doit envoyer la demande.
Si l'option -s n'est pas indiquée, la date du jour est utilisée. Si l'option -e n'est pas indiquée, la valeur de validité du fichier policy.cfg sera utilisée. Si cette valeur n'existe pas, une année à compter de la date de début est utilisée comme période de validité. startdate et enddate doivent avoir le même format que l'attribut expires utilisé par la commande chuser . Le format est une chaîne de 10 caractères dans le format MMDDhhmmyy , où MM fait référence au mois, DD fait référence au jour, hh fait référence à l'heure, mm fait référence aux minutes et yy fait référence aux deux derniers chiffres des années 1939 à 2038. Tous les caractères sont numériques.
Si l'option -f est indiquée, le nouveau certificat doit être codé en DER et stocké dans le fichier nommé au format binaire. Sinon, il doit être codé DER et généré dans stdout, au format binaire ou hexadécimal. Si l'option -b est indiquée, la sortie sera affichée dans stdout en binaire, sinon elle sera hexadécimale. Si -b ou -t n'est pas indiqué, un format binaire est utilisé.
La clé privée correspondante est stockée dans un magasin de clés ou un dispositif privé, comme l'exigent les commandes ou les bibliothèques sous-jacentes. Si l'option -p est indiquée, la clé privée est stockée dans le magasin de clés privées spécifié. Si l'option -p n'est pas indiquée, la valeur par défaut sera /var/pki/ security/keys/ <nom_utilisateur>.
L'option -l doit être spécifiée. Le libellé est une chaîne de texte de longueur variable qui sera utilisée comme alias pour la clé privée dans le magasin de clés.
La valeur de subject_alt_name sera une adresse de courrier électronique Internet (RFC2459 définit qu'il s'agit d'un rfc822Name). Cette valeur est facultative. Si aucune valeur n'est fournie, le certificat n'aura pas d'extension de nom alternatif de sujet rfc822Name . Subject_distinguished_name doit être limité à l'ensemble de valeurs valides pour les certificats PKI. Il s'agit d'un nom de type X.501 défini par RFC2459.
La commande certcreate émet une ou plusieurs invites et demande un mot de passe afin de générer le certificat et de le stocker dans le magasin de clés privé de l'utilisateur. Si l'utilisateur dispose d'un magasin de clés existant, il est invité à entrer le mot de passe une seule fois. Si le magasin de clés n'existe pas, il sera créé et l'utilisateur sera invité à entrer à nouveau le mot de passe pour confirmation. La commande échouera si elle ne parvient pas à ouvrir /dev/tty pour le processus en cours.
Indicateurs
| Article | Descriptif |
|---|---|
| -S nom_service | Indique le module de service à utiliser. |
| -s date_début | Indique la date à laquelle le certificat deviendra valide. |
| -e date-fin | Indique la date à laquelle le certificat deviendra non valide. |
| -f fichier | Indique le fichier dans lequel le certificat sera stocké. |
| -p fichier_de_clés privées | Indique l'emplacement du magasin de clés privé. |
| -l libellé | Indique le libellé de la clé privée dans le magasin de clés. |
| -a nom_alt_sujet | Indique le nom alternatif du sujet du propriétaire du certificat. |
| -b | Indique le format des données de certificat à utiliser comme données binaires. |
| -t | Indique le format hexadécimal des données de certificat. |
Statut de sortie
| Article | Descriptif |
|---|---|
| 0 | La commande s'est terminée avec succès. |
| >0 | Une erreur s'est produite. |
Security
Il s'agit d'une commande setuid .
Root et les appelants appartenant à la sécurité de groupe peuvent créer des certificats pour n'importe qui. Un utilisateur non privilégié peut uniquement créer des certificats pour lui-même avec les règles suivantes lors de la spécification d'un emplacement de magasin de clés privé:- L'appelant peut spécifier le magasin de clés privées par défaut: /var/pki/security/keys/ <nom_utilisateur>
- L'auteur de l'appel peut spécifier un magasin de clés privé auquel il a accès en écriture.
- Audit
Cette commande enregistre les informations d'événement suivantes:
CERT_Create <nom_utilisateur>
Exemples
$ certcreate -S local -s 0831112702 -e 1231235902 -f
cert.der -p file:/home/bob/bob.priv -l signcert
bob@ibm.com ou=finance,cn=Bob%20James bob
Dans l'exemple précédent, le certificat sera valide du 31 août 2002 à 11h27 jusqu'au 31 décembre 2002 à 23h59. Le certificat est placé dans le fichier cert.der et la clé privée est stockée dans bob.priv avec l'alias signcert.$ certcreate -l signcert bob@ibm.com ou=finance,cn=Bob James > cert.derFichiers
/usr/lib/security/pki/ca.cfg
/usr/lib/security/pki/policy.cfg