AnglaisFrançaisEspagnol

Ad


Icône de favori OnWorks

certutil - En ligne dans le Cloud

Exécutez certutil dans le fournisseur d'hébergement gratuit OnWorks sur Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

Il s'agit de la commande certutil qui peut être exécutée dans le fournisseur d'hébergement gratuit OnWorks à l'aide de l'un de nos multiples postes de travail en ligne gratuits tels que Ubuntu Online, Fedora Online, l'émulateur en ligne Windows ou l'émulateur en ligne MAC OS

PROGRAMME:

Nom


certutil - Gérer les clés et le certificat dans les bases de données NSS et d'autres jetons NSS

SYNOPSIS


certutil [Options] [[arguments]]

STATUT


Cette documentation est toujours en cours d'élaboration. Veuillez contribuer à l'examen initial dans
Mozilla NSS bug 836477

DESCRIPTION


L'outil de base de données de certificats, certutil, est un utilitaire de ligne de commande qui peut créer et
modifier les bases de données de certificats et de clés. Il peut spécifiquement répertorier, générer, modifier ou
supprimer des certificats, créer ou modifier le mot de passe, générer une nouvelle clé publique et privée
paires de clés, afficher le contenu de la base de données de clés ou supprimer des paires de clés dans la clé
base de données.

L'émission de certificats, qui fait partie du processus de gestion des clés et des certificats, exige que
les clés et les certificats soient créés dans la base de données de clés. Ce document traite du certificat
et la gestion des bases de données clés. Pour plus d'informations sur la gestion de la base de données du module de sécurité,
voir la moduleutil page de manuel.

COMMAND OPTIONS ET ARGUMENTS


Fonctionnement certutil nécessite toujours une et une seule option de commande pour spécifier le type de
opération de certificat. Chaque option de commande peut prendre zéro ou plusieurs arguments. La commande
option -H listera toutes les options de commande et leurs arguments pertinents.

Command Options

-A
Ajoutez un certificat existant à une base de données de certificats. La base de données de certificats doit
existe déjà; s'il n'y en a pas, cette option de commande en initialise un par
défaut.

-B
Exécutez une série de commandes à partir du fichier de commandes spécifié. Cela nécessite le -i argument.

-C
Créez un nouveau fichier de certificat binaire à partir d'un fichier de demande de certificat binaire. Utilisez le
-i argument pour spécifier le fichier de demande de certificat. Si cet argument n'est pas utilisé,
certutil demande un nom de fichier.

-D
Supprimez un certificat de la base de données de certificats.

--Renommer
Modifiez le pseudonyme de base de données d'un certificat.

-E
Ajoutez un certificat de courrier électronique à la base de données de certificats.

-F
Supprimer une clé privée d'une base de données de clés. Spécifiez la clé à supprimer avec le -n
argument. Spécifiez la base de données à partir de laquelle supprimer la clé avec le -d argument. Utilisation
le -k argument pour spécifier explicitement s'il faut supprimer une clé DSA, RSA ou ECC. Si tu
n'utilisez pas le -k argument, l'option recherche une clé RSA correspondant au
surnom.

Lorsque vous supprimez des clés, veillez également à supprimer tous les certificats associés à ces
clés de la base de données de certificats, en utilisant -D. Certaines cartes à puce ne vous permettent pas
supprimer une clé publique que vous avez générée. Dans un tel cas, seule la clé privée est
supprimé de la paire de clés. Vous pouvez afficher la clé publique avec la commande certutil -K
-h nom de jeton.

-G
Générez une nouvelle paire de clés publique et privée dans une base de données de clés. La base de données des clés
devrait déjà exister ; s'il n'y en a pas, cette option de commande en initialise un
par défaut. Certaines cartes à puce ne peuvent stocker qu'une seule paire de clés. Si vous créez une nouvelle paire de clés
pour une telle carte, la paire précédente est écrasée.

-H
Affiche une liste des options et des arguments de la commande.

-K
Répertoriez l'ID de clé des clés dans la base de données de clés. Un ID de clé est le module de la clé RSA ou
la publicValue de la clé DSA. Les identifiants sont affichés en hexadécimal ("0x" n'est pas affiché).

-L
Répertoriez tous les certificats, ou affichez des informations sur un certificat nommé, dans un
base de données de certificats. Utilisez l'argument -h tokenname pour spécifier le certificat
base de données sur un jeton matériel ou logiciel particulier.

-M
Modifiez les attributs de confiance d'un certificat à l'aide des valeurs de l'argument -t.

-N
Créez de nouvelles bases de données de certificats et de clés.

-O
Imprimez la chaîne de certificats.

-R
Créer un fichier de demande de certificat pouvant être soumis à une autorité de certification
(CA) pour transformation en un certificat fini. La sortie par défaut est la sortie standard
à moins que vous n'utilisiez l'argument de fichier de sortie -o. Utilisez l'argument -a pour spécifier la sortie ASCII.

-S
Créez un certificat individuel et ajoutez-le à une base de données de certificats.

-T
Réinitialisez la base de données de clés ou le jeton.

-U
Répertoriez tous les modules disponibles ou imprimez un seul module nommé.

-V
Vérifiez la validité d'un certificat et de ses attributs.

-W
Remplacez le mot de passe par une base de données de clés.

--fusionner
Fusionner deux bases de données en une seule.

--upgrade-merge
Mettez à niveau une ancienne base de données et fusionnez-la dans une nouvelle base de données. Ceci est utilisé pour migrer
bases de données NSS héritées (cert8.db et key3.db) dans les nouvelles bases de données SQLite (cert9.db
et key4.db).

Arguments

Les arguments modifient une option de commande et sont généralement des minuscules, des nombres ou des symboles.

-a
Utilisez le format ASCII ou autorisez l'utilisation du format ASCII pour l'entrée ou la sortie. Cette mise en forme
suit RFC 1113. Pour les demandes de certificat, la sortie ASCII est par défaut la sortie standard
à moins d'être redirigé.

-b validité-temps
Spécifiez une heure à laquelle un certificat doit être valide. À utiliser lors de la vérification
validité du certificat avec le -V option. Le format du durée de validité l'argument est
AAMMJJHHMMSS[+HHMM|-HHMM|Z], qui permet de définir des décalages par rapport à la validité
heure de fin. Spécification des secondes (SS) est facultatif. Lorsque vous spécifiez une heure explicite, utilisez un
Z à la fin du terme, AAMMJJHHMMSSZ, pour la fermer. Lors de la spécification d'un décalage horaire,
utilisé AAMMJJHHMMSS+HHMM or AAMMJJHHMMSS-HHMM pour additionner ou soustraire du temps,
respectivement.

Si cette option n'est pas utilisée, le contrôle de validité utilise par défaut l'heure système actuelle.

-c émetteur
Identifier le certificat de l'AC dont un nouveau certificat tirera son
authenticité. Utilisez le surnom ou l'alias exact du certificat CA, ou utilisez le
adresse e-mail. Mettez la chaîne issuer entre guillemets si elle contient des espaces.

-d [préfixe]répertoire
Spécifiez le répertoire de la base de données contenant le certificat et les fichiers de base de données de clés.

certutil prend en charge deux types de bases de données : les bases de données de sécurité héritées (cert8.db,
key3.db et secmod.db) et de nouvelles bases de données SQLite (cert9.db, key4.db et pkcs11.txt).

NSS reconnaît les préfixes suivants :

· sql : demande la nouvelle base de données

· dbm : demande la base de données héritée

Si aucun préfixe n'est spécifié, le type par défaut est extrait de NSS_DEFAULT_DB_TYPE. Si
NSS_DEFAULT_DB_TYPE n'est pas défini alors dbm : est la valeur par défaut.

--dump-ext-valOID
Pour un certificat unique, imprimez le codage DER binaire de l'OID d'extension.

-e
Vérifiez la signature d'un certificat pendant le processus de validation d'un certificat.

--email adresse e-mail
Spécifiez l'adresse e-mail d'un certificat à répertorier. Utilisé avec l'option de commande -L.

--extGeneric OID:critical-flag:filename[,OID:critical-flag:filename]...
Ajoutez une ou plusieurs extensions que certutil ne peut pas encore encoder, en chargeant leur
encodages à partir de fichiers externes.

· OID (exemple) : 1.2.3.4

· indicateur-critique : critique ou non critique

· nom de fichier : chemin complet vers un fichier contenant une extension encodée

-f fichier_mot_de_passe
Spécifiez un fichier qui fournira automatiquement le mot de passe à inclure dans un certificat
ou pour accéder à une base de données de certificats. Il s'agit d'un fichier en texte brut contenant un
le mot de passe. Veillez à empêcher tout accès non autorisé à ce fichier.

-g taille de clé
Définissez une taille de clé à utiliser lors de la génération de nouvelles paires de clés publiques et privées. Le minimum est
512 bits et le maximum est de 16384 bits. La valeur par défaut est 2048 bits. N'importe quelle taille entre le
minimum et maximum est autorisé.

-h nom de jeton
Spécifiez le nom d'un jeton à utiliser ou sur lequel agir. S'il n'est pas spécifié, le jeton par défaut est
l'emplacement de la base de données interne.

-i fichier_entrée
Passez un fichier d'entrée à la commande. Selon l'option de commande, un fichier d'entrée peut
être un certificat spécifique, un fichier de demande de certificat ou un fichier batch de commandes.

-k type-clé-ou-id
Spécifiez le type ou l'ID spécifique d'une clé.

Les options de type de clé valides sont rsa, dsa, ec ou all. La valeur par défaut est rsa.
La spécification du type de clé peut éviter les erreurs causées par des surnoms en double. Donner un
le type de clé génère une nouvelle paire de clés ; donner l'ID d'une clé existante réutilise cette clé
paire (ce qui est nécessaire pour renouveler les certificats).

-l
Affiche des informations détaillées lors de la validation d'un certificat avec l'option -V.

-m numéro de série
Attribuez un numéro de série unique à un certificat en cours de création. Cette opération doit être
effectué par un CA. Si aucun numéro de série n'est fourni, un numéro de série par défaut est créé
à partir de l'heure actuelle. Les numéros de série sont limités à des nombres entiers

-n surnom
Spécifiez le pseudo d'un certificat ou d'une clé à lister, créer, ajouter à une base de données,
modifier ou valider. Mettez la chaîne de pseudo entre guillemets si elle contient
les espaces.

-o fichier-sortie
Spécifiez le nom du fichier de sortie pour les nouveaux certificats ou les demandes de certificats binaires.
Mettez la chaîne du fichier de sortie entre guillemets si elle contient des espaces. Si ce
L'argument n'est pas utilisé, la destination de sortie est par défaut la sortie standard.

-P dbPréfixe
Spécifiez le préfixe utilisé sur le certificat et le fichier de base de données de clés. Cet argument est
fourni pour prendre en charge les serveurs hérités. La plupart des applications n'utilisent pas de préfixe de base de données.

-p téléphone
Spécifiez un numéro de téléphone de contact à inclure dans les nouveaux certificats ou certificat
demandes. Mettez cette chaîne entre guillemets si elle contient des espaces.

-q pqgfile ou nom-courbe
Lire une autre valeur PQG à partir du fichier spécifié lors de la génération de paires de clés DSA. Si
cet argument n'est pas utilisé, certutil génère sa propre valeur PQG. Les fichiers PQG sont créés
avec un utilitaire DSA séparé.

Le nom de la courbe elliptique est l'un de ceux de SUITE B : nistp256, nistp384, nistp521

Si NSS a été compilé avec des courbes de support en dehors de SUITE B : sect163k1, nistk163,
sect163r1, sect163r2, nistb163, sect193r1, sect193r2, sect233k1, nistk233, sect233r1,
nistb233, sect239k1, secte283k1, nistk283, sect283r1, nistb283, secte409k1, nistk409,
sect409r1, nistb409, sect571k1, nistk571, sect571r1, nistb571, secp160k1, secp160r1,
secp160r2, secp192k1, secp192r1, nistp192, secp224k1, secp224r1, nistp224, secp256k1,
secp256r1, secp384r1, secp521r1, prime192v1, prime192v2, prime192v3, prime239v1,
prime239v2, prime239v3, c2pnb163v1, c2pnb163v2, c2pnb163v3, c2pnb176v1, c2tnb191v1,
c2tnb191v2, c2tnb191v3, c2pnb208w1, c2tnb239v1, c2tnb239v2, c2tnb239v3, c2pnb272w1,
c2pnb304w1, c2tnb359w1, c2pnb368w1, c2tnb431r1, secp112r1, secp112r2, secp128r1,
secp128r2, sect113r1, sect113r2 sect131r1, sect131r2

-r
Afficher l'encodage DER binaire d'un certificat lors de la liste des informations à ce sujet
certificat avec l'option -L.

-s sujet
Identifiez un propriétaire de certificat particulier pour les nouveaux certificats ou les demandes de certificat.
Mettez cette chaîne entre guillemets si elle contient des espaces. L'objet
le format d'identification suit la RFC #1485.

-t args de confiance
Spécifiez les attributs de confiance à modifier dans un certificat existant ou à appliquer à un
certificat lors de sa création ou de son ajout à une base de données. Il y en a trois disponibles
catégories de confiance pour chaque certificat, exprimées dans l'ordre SSL, e-mail, objet
signature pour chaque paramètre de confiance. Dans chaque position de catégorie, n'utilisez aucun, aucun ou tout
les codes d'attribut :

· p - Pair valide

· P - Pair de confiance (implique p)

· c - CA valide

· T - CA de confiance (implique c)

· C - CA de confiance pour l'authentification client (serveur SSL uniquement)

· u - utilisateur

Les codes d'attribut pour les catégories sont séparés par des virgules, et l'ensemble complet de
attributs entourés de guillemets. Par exemple:

-t "TCu, Cu, Tu"

Utilisez l'option -L pour voir une liste des certificats actuels et des attributs de confiance dans un
base de données de certificats.

-u certification
Spécifiez un contexte d'utilisation à appliquer lors de la validation d'un certificat avec l'option -V.

Les contextes sont les suivants :

· C (en tant que client SSL)

· V (en tant que serveur SSL)

· L (en tant qu'autorité de certification SSL)

· A (comme n'importe quel CA)

· Y (Vérifier l'autorité de certification)

· S (en tant que signataire d'e-mails)

· R (en tant que destinataire d'un e-mail)

· O (en tant que répondeur de statut OCSP)

· J (en tant que signataire d'objet)

-v mois-valides
Définissez le nombre de mois pendant lesquels un nouveau certificat sera valide. La période de validité commence
à l'heure système actuelle à moins qu'un décalage ne soit ajouté ou soustrait avec le -w option.
Si cet argument n'est pas utilisé, la période de validité par défaut est de trois mois.

-w décalage-mois
Définissez un décalage par rapport à l'heure système actuelle, en mois, pour le début d'une
période de validité du certificat. À utiliser lors de la création du certificat ou de son ajout à un
base de données. Exprimez le décalage en nombres entiers, en utilisant un signe moins (-) pour indiquer un
décalage négatif. Si cet argument n'est pas utilisé, la période de validité commence à la
heure système actuelle. La durée de la période de validité est définie avec l'argument -v.

-X
Forcez l'ouverture de la base de données de clés et de certificats en mode lecture-écriture. Ceci est utilisé avec
le -U ainsi que -L options de commande.

-x
Utilisez certutil pour générer la signature d'un certificat en cours de création ou d'ajout à un
base de données, plutôt que d'obtenir une signature d'une autorité de certification distincte.

-y exp
Définissez une autre valeur d'exposant à utiliser pour générer une nouvelle clé publique RSA pour le
base de données, au lieu de la valeur par défaut de 65537. Les valeurs alternatives disponibles sont 3
et 17.

-z fichier-bruit
Lire une valeur de départ à partir du fichier spécifié pour générer une nouvelle clé privée et publique
paire. Cet argument permet d'utiliser des valeurs de départ générées par le matériel ou
créer manuellement une valeur à partir du clavier. La taille minimale du fichier est de 20 octets.

-Z hachageAlg
Spécifiez l'algorithme de hachage à utiliser avec les options de commande -C, -S ou -R. Possible
Mots-clés:

· MD2

· MD4

· MD5

· SHA1

· SHA224

· SHA256

· SHA384

· SHA512

-0 SSO_mot de passe
Définissez un mot de passe de responsable de la sécurité du site sur un jeton.

-1 | --keyUsage mot-clé, mot-clé
Définissez une extension de type de certificat X.509 V3 dans le certificat. Il y a plusieurs
mots-clés disponibles :

· signature numérique

· non-Répudiation

· cléChiffrement

· Chiffrement de données

· cléAccord

· signature de certificat

· signature crl

· critique

-2
Ajouter une extension de contrainte de base à un certificat en cours de création ou d'ajout à un
base de données. Cette extension prend en charge le processus de vérification de la chaîne de certificats.
certutil vous invite à sélectionner l'extension de contrainte de certificat.

Les extensions de certificat X.509 sont décrites dans la RFC 5280.

-3
Ajouter une extension d'ID de clé d'autorité à un certificat en cours de création ou d'ajout à un
base de données. Cette extension prend en charge l'identification d'un certificat particulier, de
parmi plusieurs certificats associés à un nom de sujet, en tant qu'émetteur correct de
une attestation. L'outil de base de données de certificats vous invitera à sélectionner l'autorité
extension d'ID de clé.

Les extensions de certificat X.509 sont décrites dans la RFC 5280.

-4
Ajouter une extension de point de distribution CRL à un certificat en cours de création ou d'ajout
à une base de données. Cette extension identifie l'URL d'un certificat associé
liste de révocation de certificats (CRL). certutil demande l'URL.

Les extensions de certificat X.509 sont décrites dans la RFC 5280.

-5 | --nsCertType mot-clé, mot-clé
Ajouter une extension de type de certificat X.509 V3 à un certificat en cours de création ou
ajouté à la base de données. Plusieurs mots-clés sont disponibles :

· client ssl

· serveur ssl

· sourire

· signature d'objet

· SSLCA

· smimeCA

· objetSigningCA

· critique

Les extensions de certificat X.509 sont décrites dans la RFC 5280.

-6 | --extKeyUsage mot-clé, mot-clé
Ajouter une extension d'utilisation de clé étendue à un certificat en cours de création ou d'ajout à
la base de données. Plusieurs mots-clés sont disponibles :

· serveurAuth

· clientAuth

· signature de code

· EmailProtection

· horodatage

· ocspRépondeur

· passer à la vitesse supérieure

· msTrustListSigne

· critique

Les extensions de certificat X.509 sont décrites dans la RFC 5280.

-7 adresses e-mail
Ajoutez une liste d'adresses e-mail séparées par des virgules au nom alternatif du sujet
extension d'un certificat ou d'une demande de certificat en cours de création ou d'ajout à
la base de données. Les extensions de noms de sujets alternatifs sont décrites dans la section 4.2.1.7 de
RFC3280.

-8 noms DNS
Ajoutez une liste de noms DNS séparés par des virgules à l'extension de nom alternative du sujet d'un
certificat ou demande de certificat en cours de création ou d'ajout à la base de données.
Les extensions de nom alternatif du sujet sont décrites dans la section 4.2.1.7 de la RFC 3280.

--extAIA
Ajoutez l'extension d'accès aux informations d'autorité au certificat. Certificat X.509
les extensions sont décrites dans la RFC 5280.

--extSIA
Ajoutez l'extension d'accès aux informations du sujet au certificat. Certificat X.509
les extensions sont décrites dans la RFC 5280.

--extCP
Ajoutez l'extension de stratégies de certificat au certificat. Certificat X.509
les extensions sont décrites dans la RFC 5280.

--extPM
Ajoutez l'extension Policy Mappings au certificat. Les extensions de certificat X.509 sont
décrit dans la RFC 5280.

--extPC
Ajoutez l'extension Contraintes de stratégie au certificat. Extensions de certificat X.509
sont décrits dans la RFC 5280.

--extIA
Ajoutez l'extension Inhibit Any Policy Access au certificat. Certificat X.509
les extensions sont décrites dans la RFC 5280.

--extSKID
Ajoutez l'extension d'ID de clé de sujet au certificat. Les extensions de certificat X.509 sont
décrit dans la RFC 5280.

--extNC
Ajoutez une extension de contrainte de nom au certificat. Les extensions de certificat X.509 sont
décrit dans la RFC 5280.

--extSAN type:nom[,type:nom]...
Créez une extension de nom alternatif de sujet avec un ou plusieurs noms.

-type : répertoire, dn, dns, edi, ediparty, email, ip, ipaddr, autre, registerid,
rfc822, uri, x400, x400addr

--vide-mot de passe
Utilisez un mot de passe vide lors de la création d'une nouvelle base de données de certificats avec -N.

--keyAttrFlags
Attributs clés PKCS #11. Liste séparée par des virgules d'indicateurs d'attributs clés, sélectionnés parmi
la liste de choix suivante : {jeton | session} {public | privé} {sensible |
insensible} {modifiable | non modifiable} {extractible | inextractible}

--keyOpFlagsOn drapeaux op, --keyOpFlagsOff drapeaux op
Indicateurs d'opération clés PKCS #11. Liste séparée par des virgules d'un ou plusieurs des éléments suivants :
{jeton | session} {public | privé} {sensible | insensible} {modifiable |
non modifiable} {extractible | inextractible}

--new-n surnom
Un nouveau surnom, utilisé lors du renommage d'un certificat.

--source-dir certdir
Identifiez le répertoire de la base de données de certificats à mettre à niveau.

--source-prefix certdir
Donnez le préfixe du certificat et des bases de données de clés à mettre à niveau.

--upgrade-id ID unique
Donnez l'ID unique de la base de données à mettre à niveau.

--upgrade-token-name nom
Définissez le nom du jeton à utiliser pendant sa mise à niveau.

-@ fichier_pw
Donnez le nom d'un fichier de mots de passe à utiliser pour la base de données en cours de mise à niveau.

UTILISATION ET EXEMPLES


La plupart des options de commande dans les exemples répertoriés ici ont plus d'arguments disponibles. Les
les arguments inclus dans ces exemples sont les plus courants ou sont utilisés pour illustrer un
scénario précis. Utilisez le -H option pour afficher la liste complète des arguments pour chaque
option de commande.

La création Nouveauté Sécurité Bases de données

Les certificats, clés et modules de sécurité liés à la gestion des certificats sont stockés dans
trois bases de données connexes :

· cert8.db ou cert9.db

· key3.db ou key4.db

· secmod.db ou pkcs11.txt

Ces bases de données doivent être créées avant que des certificats ou des clés puissent être générés.

certutil -N -d [sql:]répertoire

La création a Certificat Demande

Une demande de certificat contient la plupart ou la totalité des informations utilisées pour générer le
certificat final. Cette demande est soumise séparément à une autorité de certification et est
puis approuvé par un mécanisme (automatiquement ou par examen humain). Une fois la demande
approuvé, le certificat est généré.

$ certutil -R -k key-type-or-id [-q pqgfile|curve-name] -g key-size -s subject [-h tokenname] -d [sql:]directory [-p phone] [-o fichier-sortie] [-a]

La -R Les options de commande nécessitent quatre arguments :

· -k pour spécifier soit le type de clé à générer, soit, lors du renouvellement d'un certificat, le
paire de clés existante à utiliser

· -g pour définir la taille de la clé à générer

· -s pour définir le nom du sujet du certificat

· -d pour donner le répertoire de la base de données de sécurité

La nouvelle demande de certificat peut être sortie au format ASCII (-a) ou peut être écrit sur un
fichier spécifié (-o).

Par exemple :

$ certutil -R -k rsa -g 1024 -s "CN=John Smith,O=Example Corp,L=Mountain View,ST=California,C=US" -d sql:$HOME/nssdb -p 650-555- 0123 -a -o cert.cer

Génération de clé. Ceci peut prendre un certain temps...

La création a Certificat

Un certificat valide doit être émis par une autorité de certification de confiance. Cela peut être fait en spécifiant une autorité de certification
certificat (-c) qui est stocké dans la base de données de certificats. Si une paire de clés CA n'est pas
disponible, vous pouvez créer un certificat auto-signé en utilisant le -x dispute avec le -S
option de commande.

$ certutil -S -k rsa|dsa|ec -n certname -s sujet [-c émetteur |-x] -t trustargs -d [sql:]répertoire [-m numéro de série] [-v mois-valide] [ -w offset-months] [-p phone] [-1] [-2] [-3] [-4] [-5 keyword] [-6 keyword] [-7 emailAddress] [-8 dns-names] [ --extAIA] [--extSIA] [--extCP] [--extPM] [--extPC] [--extIA] [--extSKID]

La série de nombres et --ext* les options définissent les extensions de certificat qui peuvent être ajoutées à
le certificat lorsqu'il est généré par l'AC. Des invites interactives en résulteront.

Par exemple, cela crée un certificat auto-signé :

$ certutil -S -s "CN=Exemple CA" -n mon-ca-cert -x -t "C,C,C" -1 -2 -5 -m 3650

Les invites interactives pour l'utilisation des clés et si des extensions sont critiques et les réponses
ont été omis par souci de concision.

À partir de là, les nouveaux certificats peuvent référencer le certificat auto-signé :

$ certutil -S -s "CN=My Server Cert" -n my-server-cert -c "my-ca-cert" -t "u,u,u" -1 -5 -6 -8 -m 730

Génération a Certificat de a Certificat Demande

Lorsqu'une demande de certificat est créée, un certificat peut être généré à l'aide de la demande
puis en référençant un certificat de signature d'autorité de certification (le émetteur spécifié dans
le -c argument). Le certificat émetteur doit se trouver dans la base de données des certificats dans le
répertoire spécifié.

certutil -C -c issuer -i cert-request-file -o output-file [-m serial-number] [-v valid-months] [-w offset-months] -d [sql:]directory [-1] [-2] [-3] [-4] [-5 mot-clé] [-6 mot-clé] [-7 emailAddress] [-8 dns-names]

Par exemple :

$ certutil -C -c "my-ca-cert" -i /home/certs/cert.req -o cert.cer -m 010 -v 12 -w 1 -d sql:$HOME/nssdb -1 nonRepudiation,dataEncipherment -5 sslClient -6 clientAuth -7 [email protected]

inscription Certificats

La -L L'option de commande répertorie tous les certificats répertoriés dans la base de données de certificats.
Le chemin d'accès au répertoire (-d) est requis.

$ certutil -L -d sql:/home/my/sharednssdb

Attributs de confiance de surnom de certificat
SSL, S/MIME, JAR/XPI

Administrateur CA de l'exemple d'ID de domaine de l'instance pki-ca1 u,u,u
Exemple d'ID de domaine de l'administrateur TPS u,u,u
Autorité Internet de Google ,,
Autorité de certification - Exemple de domaine CT,C,C

Utiliser des arguments supplémentaires avec -L peut retourner et imprimer les informations pour un seul,
certificat spécifique. Par exemple, le -n l'argument passe le nom du certificat, tandis que le
-a argument imprime le certificat au format ASCII :

$ certutil -L -d sql:$HOME/nssdb -a -n mon-ca-cert
----- COMMENCER LE CERTIFICAT -----
MIIB1DCCAT2gAwIBAgICDkIwDQYJKoZIhvcNAQEFBQAwFTETMBEGA1UEAxMKRXhh
bXBsZSBDQTAeFw0xMzAzMTMxOTEwMjlaFw0xMzA2MTMxOTEwMjlaMBUxEzARBgNV
BAMTCkV4YW1wbGUgQ0EwgZ8wDQYJKoZIhvcNAQEBBQADgY0AMIGJAoGBAJ4Kzqvz
JyBVgFqDXRYSyTBNw1DrxUU/3GvWA/ngjAwHEv0Cul/6sO/gsCvnABHiH6unns6x
XRzPORlC2WY3gkk7vmlsLvYpyecNazAi/NAwVnU/66HOsaoVFWE+gBQo99UrN2yk
0BiK/GMFlLm5dXQROgA9ZKKyFdI0LIXtf6SbAgMBAAGjMzAxMBEGCWCGSAGG+EIB
AQQEAwIHADAMBgNVHRMEBTADAQH/MA4GA1UdDwEB/wQEAwICBDANBgkqhkiG9w0B
AQUFAAOBgQA6chkzkACN281d1jKMrc+RHG2UMaQyxiteaLVZO+Ro1nnRUvseDf09
XKYFwPMJjWCihVku6bw/ihZfuMHhxK22Nue6inNQ6eDu7WmrqL8z3iUrQwxs+WiF
ob2rb8XRVVJkzXdXxlk4uo3UtNvw8sAz7sWD71qxKaIHU5q49zijfg==

----- CERTIFICAT FINAL -----
Pour un affichage lisible par l'homme

$ certutil -L -d sql:$HOME/nssdb -n mon-ca-cert
Certificat:
Dates:
Version : 3 (0x2)
Numéro de série : 3650 (0xe42)
Algorithme de signature : PKCS #1 SHA-1 avec cryptage RSA
Émetteur : "CN=Exemple CA"
Validité:
Pas avant : mer. 13 mars 19:10:29 2013
Pas après : jeu. 13 juin 19:10:29 2013
Objet : "CN=Exemple CA"
Informations sur la clé publique du sujet :
Algorithme de clé publique : chiffrement RSA PKCS #1
Clé publique RSA :
Module:
9e:0a:ce:ab:f3:27:20:55:80:5a:83:5d:16:12:c9:30:
4d:c3:50:eb:c5:45:3f:dc:6b:d6:03:f9:e0:8c:0c:07:
12:fd:02:ba:5f:fa:b0:ef:e0:b0:2b:e7:00:11:e2:1f:
ab:a7:9e:ce:b1:5d:1c:cf:39:19:42:d9:66:37:82:49:
3b:be:69:6c:2e:f6:29:c9:e7:0d:6b:30:22:fc:d0:30:
56:75:3f:eb:a1:ce:b1:aa:15:15:61:3e:80:14:28:f7:
d5:2b:37:6c:a4:d0:18:8a:fc:63:05:94:b9:b9:75:74:
11:3a:00:3d:64:a2:b2:15:d2:34:2c:85:ed:7f:a4:9b
Exposant : 65537 (0x10001)
Extensions signées :
Nom : Type de certificat
Données : aucune

Nom : Contraintes de base du certificat
Données : une autorité de certification sans longueur de chemin maximale.

Nom : Utilisation de la clé de certificat
Critique : vrai
Utilisations : signature de certificat

Algorithme de signature : PKCS #1 SHA-1 avec cryptage RSA
Signature:
3a:72:19:33:90:00:8d:db:cd:5d:d6:32:8c:ad:cf:91:
1c:6d:94:31:a4:32:c6:2b:5e:68:b5:59:3b:e4:68:d6:
79:d1:52:fb:1e:0d:fd:3d:5c:a6:05:c0:f3:09:8d:60:
a2:85:59:2e:e9:bc:3f:8a:16:5f:b8:c1:e1:c4:ad:b6:
36:e7:ba:8a:73:50:e9:e0:ee:ed:69:ab:a8:bf:33:de:
25:2b:43:0c:6c:f9:68:85:a1:bd:ab:6f:c5:d1:55:52:
64:cd:77:57:c6:59:38:ba:8d:d4:b4:db:f0:f2:c0:33:
ee:c5:83:ef:5a:b1:29:a2:07:53:9a:b8:f7:38:a3:7e
Empreinte digitale (MD5) :
86:D8:A5:8B:8A:26:BE:9E:17:A8:7B:66:10:6B:27:80
Empreinte digitale (SHA1) :
48:78:09:EF:C5:D4:0C:BD:D2:64:45:59:EB:03:13:15:F7:A9:D6:F7

Indicateurs de confiance de certificat :
Drapeaux SSL :
CA valide
Autorité de certification de confiance
Utilisateur
Indicateurs d'e-mail :
CA valide
Autorité de certification de confiance
Utilisateur
Indicateurs de signature d'objet :
CA valide
Autorité de certification de confiance
Utilisateur

inscription Clés / Key

Les clés sont le matériel d'origine utilisé pour crypter les données de certificat. Les clés générées pour
les certificats sont stockés séparément, dans la base de données de clés.

Pour répertorier toutes les clés de la base de données, utilisez le -K option de commande et (obligatoire) -d argument
pour donner le chemin du répertoire.

$ certutil -K -d sql:$HOME/nssdb
certutil : Vérification du jeton "NSS Certificate DB" dans l'emplacement "NSS User Private Key and Certificate Services"
< 0> rsa 455a6673bde9375c2887ec8bf8016b3f9f35861d Thawte Freemail Member's Thawte Consulting (Pty) Ltd. ID
< 1> rsa 40defeeb522ade11090eacebaaf1196a172127df Exemple de certificat d'administrateur de domaine
< 2> rsa 1d0b06f44f6c03842f7d4f4a1dc78b3bcd1b85a5 John Smith user cert

Il existe des moyens de restreindre les clés répertoriées dans les résultats de la recherche :

· Pour rendre une clé spécifique, utilisez le -nprénom argument avec le nom de la clé.

· Si plusieurs dispositifs de sécurité sont chargés, le -hnom de jeton l'argument peut
rechercher un jeton spécifique ou tous les jetons.

· S'il existe plusieurs types de clés disponibles, le -ktype de clé argument peut rechercher un
type de clé spécifique, comme RSA, DSA ou ECC.

inscription Sécurité Modules

Les appareils qui peuvent être utilisés pour stocker des certificats - à la fois des bases de données internes et externes
périphériques tels que les cartes à puce - sont reconnus et utilisés par le chargement des modules de sécurité. Les -U
L'option de commande répertorie tous les modules de sécurité répertoriés dans la base de données secmod.db. Les
chemin d'accès au répertoire (-d) est requis.

$ certutil -U -d sql:/home/my/sharednssdb

emplacement : services de certificat et de clé privée de l'utilisateur NSS
jeton : base de données de certificat NSS

emplacement : Services cryptographiques internes NSS
jeton : Services de chiffrement génériques NSS

L'ajout de Certificats à le Base de données

Les certificats ou demandes de certificat existants peuvent être ajoutés manuellement au certificat
base de données, même s'ils ont été générés ailleurs. Cela utilise le -A option de commande.

certutil -A -n certname -t trustargs -d [sql:]répertoire [-a] [-i input-file]

Par exemple :

$ certutil -A -n "CN=Mon certificat SSL" -t "u,u,u" -d sql:/home/my/sharednssdb -i /home/example-certs/cert.cer

Une option de commande associée, -E, est utilisé spécifiquement pour ajouter des certificats de courrier électronique au
base de données de certificats. Les -E La commande a les mêmes arguments que la -A commander. La confiance
les arguments pour les certificats ont le format SSL, S/MIME, Signature de code, donc la confiance du milieu
les paramètres concernent principalement les certificats de messagerie (bien que les autres puissent être définis). Par exemple:

$ certutil -E -n "CN=John Smith Email Cert" -t ",Pu," -d sql:/home/my/sharednssdb -i /home/example-certs/email.cer

Suppression Certificats à le Base de données

Les certificats peuvent être supprimés d'une base de données en utilisant le -D option. Les seules options obligatoires
sont de donner le répertoire de la base de données de sécurité et d'identifier le pseudonyme du certificat.

certutil -D -d [sql:]répertoire -n "pseudo"

Par exemple :

$ certutil -D -d sql:/home/my/sharednssdb -n "my-ssl-cert"

Validation Certificats

Un certificat contient une date d'expiration en soi, et les certificats expirés sont facilement
rejeté. Cependant, les certificats peuvent également être révoqués avant qu'ils n'atteignent leur date d'expiration.
Vérifier si un certificat a été révoqué nécessite de valider le certificat.
La validation peut également être utilisée pour s'assurer que le certificat n'est utilisé qu'aux fins
il a été initialement émis pour. La validation est effectuée par le -V option de commande.

certutil -V -n nom-certificat [-b heure] [-e] [-u cert-usage] -d [sql:]répertoire

Par exemple, pour valider un certificat email :

$ certutil -V -n "Certificat de courrier électronique de John Smith" -e -u S,R -d sql:/home/my/sharednssdb

Modification Certificat La confiance Paramètres

Les paramètres de confiance (qui concernent les opérations qu'un certificat est autorisé à être
utilisé pour) peut être modifié après la création ou l'ajout d'un certificat à la base de données. C'est
particulièrement utile pour les certificats CA, mais il peut être effectué pour tout type de
certificat.

certutil -M -n nom-certificat -t trust-args -d [sql:]répertoire

Par exemple :

$ certutil -M -n "Mon certificat CA" -d sql:/home/my/sharednssdb -t "CTu,CTu,CTu"

Impression le Certificat Chaine

Les certificats peuvent être délivrés en Chaînes parce que chaque autorité de certification a elle-même un
certificat; lorsqu'une autorité de certification délivre un certificat, elle tamponne essentiellement ce certificat avec
sa propre empreinte digitale. Les -O imprime la chaîne complète d'un certificat, depuis le
CA (l'autorité de certification racine) via une autorité de certification intermédiaire jusqu'au certificat réel. Par exemple, pour
un certificat de messagerie avec deux CA dans la chaîne :

$ certutil -d sql:/home/my/sharednssdb -O -n "[email protected]"
"Jeton d'objet intégré : Thawte Personal Freemail CA" [E=[email protected],CN=Thawte Personal Freemail CA,OU=Division des services de certification,O=Thawte Consulting,L=Le Cap,ST=Western Cape,C=ZA]

"Thawte Personal Freemail Issuing CA - Thawte Consulting" [CN=Thawte Personal Freemail Issuing CA,O=Thawte Consulting (Pty) Ltd.,C=ZA]

"(nul)" [E=[email protected],CN=Membre de Thawte Freemail]

Réinitialisation a Token

Le périphérique qui stocke les certificats - à la fois les périphériques matériels externes et internes
bases de données logicielles - peuvent être effacées et réutilisées. Cette opération est effectuée sur l'appareil
qui stocke les données, pas directement sur les bases de données de sécurité, donc l'emplacement doit être
référencé par le nom du jeton (-h) ainsi que tout chemin de répertoire. Si il n'y a pas
jeton externe utilisé, la valeur par défaut est interne.

certutil -T -d [sql:]répertoire -h nom-jeton -0 mot de passe de l'agent de sécurité

De nombreux réseaux disposent d'un personnel dédié qui gère les modifications apportées aux jetons de sécurité (le
officier). Cette personne doit fournir le mot de passe pour accéder au jeton spécifié. Par exemple:

$ certutil -T -d sql:/home/my/sharednssdb -h nethsm -0 secret

Mise à niveau or Fusion le Sécurité Bases de données

De nombreux réseaux ou applications peuvent utiliser d'anciennes versions BerkeleyDB du certificat
base de données (cert8.db). Les bases de données peuvent être mises à niveau vers la nouvelle version SQLite de la base de données
(cert9.db) en utilisant le --upgrade-merge option de commande ou les bases de données existantes peuvent être fusionnées
avec les nouvelles bases de données cert9.db en utilisant le ---fusionner commander.

La --upgrade-merge commande doit donner des informations sur la base de données d'origine, puis utiliser
les arguments standards (comme -d) pour donner les informations sur les nouvelles bases de données. Les
La commande requiert également des informations que l'outil utilise pour le processus de mise à niveau et d'écriture
sur la base de données d'origine.

certutil --upgrade-merge -d [sql:]directory [-P dbprefix] --source-dir directory --source-prefix dbprefix --upgrade-id id --upgrade-token-name name [-@ password-file ]

Par exemple :

$ certutil --upgrade-merge -d sql:/home/my/sharednssdb --source-dir /opt/my-app/alias/ --source-prefix serverapp- --upgrade-id 1 --upgrade-token- nom interne

La --fusionner La commande requiert uniquement des informations sur l'emplacement de la base de données d'origine ;
puisqu'il ne change pas le format de la base de données, il peut écraser des informations sans
effectuer une étape intermédiaire.

certutil --merge -d [sql:]répertoire [-P dbprefix] --source-dir répertoire --source-prefix dbprefix [-@ password-file]

Par exemple :
$ certutil --merge -d sql:/home/my/sharednssdb --source-dir /opt/my-app/alias/ --source-prefix serverapp-
Fonctionnement certutil Commandes de a Lot Déposez votre dernière attestation

Une série de commandes peut être exécutée séquentiellement à partir d'un fichier texte avec le -B option de commande.
Le seul argument pour ceci spécifie le fichier d'entrée.

$ certutil -B -i /chemin/vers/fichier-batch

NSS BASE DE DONNÉES TYPES


NSS utilisait à l'origine les bases de données BerkeleyDB pour stocker les informations de sécurité. Les dernières versions
de ceux-ci héritage les bases de données sont :

· cert8.db pour les certificats

· key3.db pour les clés

· secmod.db pour les informations du module PKCS #11

BerkeleyDB a cependant des limitations de performances, qui l'empêchent d'être facilement utilisé par
plusieurs applications simultanément. NSS a une certaine flexibilité qui permet aux applications de
utiliser leur propre moteur de base de données indépendant tout en conservant une base de données partagée et en travaillant
autour des problèmes d'accès. Néanmoins, NSS a besoin de plus de flexibilité pour fournir un
base de données de sécurité.

En 2009, NSS a introduit un nouvel ensemble de bases de données qui sont des bases de données SQLite plutôt que
BerkeleyDB. Ces nouvelles bases de données offrent plus d'accessibilité et de performances :

· cert9.db pour les certificats

· key4.db pour les clés

· pkcs11.txt, une liste de tous les modules PKCS #11, contenus dans un nouveau sous-répertoire
dans le répertoire des bases de données de sécurité

Parce que les bases de données SQLite sont conçues pour être partagées, ce sont les commun base de données
taper. Le type de base de données partagée est préféré ; le format hérité est inclus pour l'arrière
compatibilité.

Par défaut, les outils (certutil, pk12util, moduleutil) supposons que la sécurité donnée
les bases de données suivent le type hérité le plus courant. L'utilisation des bases de données SQLite doit être effectuée manuellement
spécifié en utilisant le sql : préfixe avec le répertoire de sécurité donné. Par exemple:

$ certutil -L -d sql:/home/my/sharednssdb

Pour définir le type de base de données partagée comme type par défaut pour les outils, définissez le
NSS_DEFAULT_DB_TYPE variable d'environnement à sql:

exporter NSS_DEFAULT_DB_TYPE="sql"

Cette ligne peut être ajoutée au ~ / .bashrc fichier pour rendre le changement permanent.

La plupart des applications n'utilisent pas la base de données partagée par défaut, mais elles peuvent être configurées pour
Utilise les. Par exemple, cet article explique comment configurer Firefox et Thunderbird
pour utiliser les nouvelles bases de données NSS partagées :

· https://wiki.mozilla.org/NSS_Shared_DB_Howto

Pour un projet d'ingénierie sur les changements dans les bases de données NSS partagées, voir le projet NSS
wiki :

· https://wiki.mozilla.org/NSS_Shared_DB

Utilisez certutil en ligne à l'aide des services onworks.net


Serveurs et postes de travail gratuits

Télécharger des applications Windows et Linux

Commandes Linux

Ad