OCSP(1SSL) | OpenSSL | OCSP(1SSL) |
NOM¶
ocsp - Utilitaire pour le protocole d’état de certificat en ligne
SYNOPSIS¶
openssl ocsp [-out nom_fichier] [-issuer fichier] [-cert fichier] [-serial n] [-signer fichier] [-signkey fichier] [-sign_other fichier] [-no_certs] [-req_text] [-resp_text] [-text] [-reqout fichier] [-respout fichier] [-reqin fichier] [-respin fichier] [-nonce] [-no_nonce] [-url URL] [-host hôte:n] [-path] [-CApath rép] [-CAfile fichier][-no_alt_chains] [-VAfile fichier] [-validity_period n] [-status_age age] [-noverify] [-verify_other fichier] [-trust_other] [-no_intern] [-no_signature_verify] [-no_cert_verify] [-no_chain] [-no_cert_checks] [-no_explicit] [-port num] [-index fichier] [-CA fichier] [-rsigner fichier] [-rkey fichier] [-rother fichier] [-resp_no_certs] [-nmin n] [-ndays n] [-resp_key_id] [-nrequest n] [-md5|-sha1|...]
DESCRIPTION¶
Le protocole d'état de certificat en ligne (OCSP) permet aux applications de déterminer l’état (de révocation) d'un certificat identifié (RFC 2560).
La commande ocsp effectue de nombreuses tâches OCSP communes. Elle permet d’afficher les demandes et les réponses, créer des demandes et envoyer des requêtes à un répondeur OCSP et se comporter comme un mini serveur OCSP lui-même.
OPTIONS DE CLIENT OCSP¶
- -out nom_fichier
- Indiquer le fichier de sortie, par défaut la sortie standard.
- -issuer fichier
- Indiquer le certificat de l'émetteur actuel. Cette option peut être utilisée plusieurs fois. Le certificat mentionné dans le fichier doit être au format PEM. Cette option doit être fournie avant toute option -cert.
- -cert fichier
- Ajouter le certificat fichier à la demande. Le certificat d’émetteur est pris à partir de l'option -issuer précédente ou une erreur se produit si aucun certificat d’émetteur n’est indiqué.
- -serial n
- Identique à l'option de -cert sauf que le certificat de numéro de série num est ajouté à la demande. Le numéro de série est interprété comme un entier décimal sauf s’il est précédé par 0x. Des nombres négatifs peuvent aussi être indiqués par un signe - précédant la valeur.
- -signer fichier, -signkey fichier
- Signer la demande OCSP à l'aide du certificat indiqué dans l'option -signer et la clef privée indiquée par l'option -signkey. Si l'option -signkey n'est pas présente, alors la clef privée est lue à partir du même fichier que le certificat. Si aucune option n'est indiquée, alors la demande OCSP n'est pas signée.
- -sign_other fichier
- Certificats supplémentaires à inclure dans la demande signée.
- -nonce, -no_nonce
- Ajouter une extension nonce OCSP à une demande ou désactiver l’ajout de nonce OCSP. Normalement, si une demande OCSP est entrée en utilisant l'option -respin, aucun nonce n’est ajouté : utiliser l'option -nonce forcera l’ajout d'un nonce. Si une demande OCSP est créé (avec les options -cert et -serial), un nonce est automatiquement ajouté, indiquer -no_nonce remplace cela.
- -req_text, -resp_text, -text
- Afficher respectivement au format texte la requête OCSP, la réponse ou les deux.
- -reqout fichier, -respout fichier
- Écrire la demande ou la réponse de certificat encodée en DER dans fichier.
- -reqin fichier, -respin fichier
- Lire un fichier de demande ou de réponse OCSP dans fichier. Ces options sont ignorées si la création de demande ou réponse OCSP est implicite grâce à d'autres options (par exemple avec les options -serial, -cert et -host).
- -url URL
- Indiquer l’URL de répondeur. Des URL HTTP et HTTPS (SSL ou TLS) peuvent être indiquées.
- -host hôte:n, -path chemin
- Si l'option -host est présente, alors la demande OCSP est envoyée à l’hôte sur le port n. chemin indique le nom de chemin d'accès HTTP à utiliser ou « / » par défaut.
- -timeout secondes
- Délai de connexion au répondeur OCSP en seconde.
- -CAfile fichier, -CApath rép
- Fichier ou chemin d'accès contenant les certificats de confiance. Ils sont utilisés pour vérifier la signature dans la réponse OCSP.
- -no_alt_chains
- Consultez la page de manuel verify pour plus de précisions.
- -verify_other fichier
- Fichier contenant les certificats supplémentaires où tenter de localiser le certificat de signature de réponse OCSP. Certains répondeurs omettent le certificat du signataire réel de la réponse : cette option permet de fournir le certificat nécessaire dans ces cas là.
- -trust_other
- Les certificats indiqués par l'option -verify_other devraient être explicitement de confiance et aucune vérification supplémentaire ne sera effectuée. C’est utile lorsque la chaîne complète de certificats répondeur n'est pas disponible ou quand faire confiance à une autorité de certification racine n'est pas approprié.
- -VAfile fichier
- Fichier contenant les certificats de répondeur explicitement approuvés. Équivalent aux options -verify_other et -trust_other.
- -noverify
- Ne pas essayer de vérifier la signature de réponse OCSP ou les valeurs de nonce. Cette option ne sera normalement utilisée que pour le débogage, car elle désactive toute vérification du certificat des répondeurs.
- -no_intern
- Ignorer les certificats contenus dans la réponse OCSP lors de la recherche du certificat des signataires. Avec cette option, le certificat des signataires doit être indiqué avec les options -verify_other ou -VAfile
- -no_signature_verify
- Ne pas vérifier la signature de réponse OCSP. Puisque cette option tolère les signatures non valables des réponses OCSP, elle ne devrait être utilisée qu’à des fins de test.
- -no_cert_verify
- Ne pas vérifier du tout le certificat des signataires de réponse OCSP. Puisque cette option permet à la réponse OCSP d’être signée par n’importe quel certificat, elle ne devrait être utilisée qu’à des fins de test.
- -no_chain
- Ne pas utiliser les certificats dans la réponse comme des certificats supplémentaires d’autorité non fiables.
- -no_explicit
- Ne pas catégoriquement croire le certificat d’autorité racine s’il est utilisé comme autorité de confiance pour une signature OCSP.
- -no_cert_checks
- Ne pas effectuer de contrôle supplémentaire sur le certificat des signataires de réponse OCSP. C'est-à-dire, ne pas faire de contrôle pour vérifier que le certificat des signataires est autorisé à fournir les informations d'état nécessaires : par conséquent, cette option ne devrait être utilisée qu’à des fins de test.
- -validity_period n, -status_age age
- Ces options indiquent la plage de temps, en seconde, qui sera
tolérée dans une réponse OCSP. Chaque réponse
d'état de certificat comprend un temps notBefore et un temps
notAfter. Le temps actuel devrait se situer entre ces deux valeurs,
mais l'intervalle entre les deux temps peut n’être que de
quelques secondes. En pratique, les horloges du répondeur et des
clients OCSP peuvent ne pas être précisément
synchronisées et donc ce type de contrôle peut
échouer. Pour éviter cela, l’option
-validity_period peut être utilisée pour indiquer une
plage d'erreur acceptable en secondes, la valeur par défaut est de
5 minutes.
Si le temps notAfter est omis dans une réponse, cela signifie que de nouvelles informations d'état sont disponibles immédiatement. Dans ce cas, l'âge du champ notBefore est vérifié pour voir s’il n'est pas plus vieux que age en seconde. Par défaut, cette vérification supplémentaire n'est pas effectuée.
- -md5|-sha1|-sha256|-ripemod160|...
- Cette option définit l’algorithme de signature à utiliser pour l'identification de certificat dans la demande OCSP. Par défaut, SHA-1 est utilisé.
OPTIONS DE SERVEUR OCSP¶
- -index fichier
- fichier est un fichier texte d'indices au format ca
contenant des informations de révocations de certificat.
Si l'option -index est indiquée, l'utilitaire ocsp est en mode répondeur, sinon il est en mode client. La ou les demandes que les répondeurs traitent peuvent être soit indiquées sur la ligne de commande (avec des options -issuer et -serial), soit fournies dans un fichier (en utilisant l'option -respin) ou à l’aide de clients OCSP externes (si -port ou -url sont indiquées).
Si l'option -index est présente, alors les options -CA et -rsigner doivent également être présentes.
- -CA fichier
- Certificat d’autorité correspondant aux informations de révocations de -indexfile.
- -rsigner fichier
- Le certificat à utiliser pour signer les réponses OCSP.
- -rother fichier
- Certificats supplémentaires à inclure dans la réponse OCSP.
- -resp_no_certs
- Ne pas inclure les certificats dans la réponse OCSP.
- -resp_key_id
- Identifier le certificat de signataire en utilisant l'identifiant de clef, par défaut, cela consiste à utiliser le nom d’objet.
- -rkey fichier
- La clef privée à utiliser pour signer les réponses OCSP : en cas d’absence, le fichier indiqué dans l'option -rsigner est utilisé.
- -port num
- Port où écouter les demandes OCSP. Le port peut également être indiqué par l'option -url .
- -nrequest n
- Le serveur OCSP se terminera après avoir reçu n demandes, par défaut sans limite.
- -nmin n, -ndays n
- Temps en minute ou jour pendant lequel les informations fraîches de révocations ne sont pas disponibles : utilisé dans le champ nextUpdate. Si aucune option n'est présente, alors le champ nextUpdate est omis, ce qui signifie que les informations fraîches de révocations sont disponibles immédiatement.
Vérification de réponse OCSP.¶
La réponse OCSP suit les règles précisées dans la RFC 2560.
Initialement, le certificat de répondeur OCSP est localisé puis la signature de la demande OCSP vérifiée en utilisant la clef publique du certificat de répondeur.
Ensuite, une vérification normale de certificat est effectuée sur le certificat de répondeur OCSP en construisant une chaîne de certificats dans le processus. Les emplacements de certificats de confiance utilisés pour construire la chaîne peuvent être indiqués par les options -CAfile et -CApath ou ils seront recherchés dans le répertoire standard des certificats OpenSSL.
Si la première vérification échoue, alors le processus de vérification OCSP s'arrête avec une erreur.
Sinon, le certificat d'autorité de certification émettrice dans la demande est comparé au certificat de répondeur OCSP : en cas de correspondance, la vérification OCSP réussit.
Sinon, le certificat d’autorité du répondeur OCSP est comparé au certificat d’autorité émis dans la demande. En cas de correspondance, et que l’utilisation de clef étendue OCSPSigning est présente dans le certificat de répondeur OCSP, la vérification OCSP réussit.
Sinon, si -no_explicit n’est pas défini, la confiance de l’autorité de certification racine des autorités de certification des répondeurs OCSP est vérifiée pour la signature OCSP. Si c’est le cas, la vérification OCSP réussit.
Si aucune de ces vérifications ne réussit, la vérification OCSP échoue.
Ce que cela signifie effectivement est que si le certificat du répondeur OCSP est autorisé directement par l’autorité de certificat à propos de laquelle il publie des informations de révocations (et qu’il est correctement configuré), alors la vérification réussira.
Si le répondeur OCSP est un « répondeur global » qui peut donner des précisions sur plusieurs autorités de certification et possède sa propre chaîne de certificats distincte, alors son autorité de certification racine peut être de confiance pour la signature OCSP. Par exemple :
openssl x509 -in CAocsp.pem -addtrust OCSPSigning -out CAconfiance.pem
Alternativement, le certificat de répondeur lui-même peut être approuvé explicitement avec l'option -VAfile.
NOTES¶
Comme indiqué précédemment, la plupart des options de vérification sont à des fins de test ou de débogage. Normalement, seules les options -CApath, -CAfile et (si le répondeur est un « VA global ») -VAfile doivent être utilisées.
Le serveur OCSP n'est utile qu’à des fins de test et de démonstration : il n'est pas vraiment utilisable comme un répondeur OCSP complet. Il ne contient qu'une gestion très basique de la requête HTTP et ne peut que gérer la forme POST des requêtes OCSP. Il gère également les demandes en série, il ne peut donc pas répondre à de nouvelles demandes avant d’avoir traité l’actuelle. Le format de fichier texte d'index de la révocation est également inefficace pour de grandes quantités de données de révocations.
L’application ocsp peut être exécutée en mode répondeur à l’aide d’un script CGI en utilisant les options -respin et -respout.
EXEMPLES¶
Créer une demande OCSP et écrire dans un fichier :
openssl ocsp -issuer émetteur.pem -cert c1.pem -cert c2.pem \ -reqout dem.der
Envoyer une requête à un répondeur OCSP avec l'URL http://ocsp.example.com/, sauvegarder la réponse dans un fichier et l’afficher au format texte :
openssl ocsp -issuer émetteur.pem -cert c1.pem -cert c2.pem \ -url http://ocsp.example.com/ -resp_text -respout rep.der
Lire une réponse OCSP et l’afficher au format texte :
openssl ocsp -respin rep.der -text
Serveur OCSP sur le port 8888 utilisant une configuration ca standard et un certificat de répondeur séparé. Toutes les demandes et les réponses sont envoyées dans un fichier :
openssl ocsp -index demoCA/index.txt -port 8888 -rsigner rcert.pem \ -CA demoCA/cacert.pem -text -out log.txt
Comme ci-dessus mais en se terminant après traitement d'une demande :
openssl ocsp -index demoCA/index.txt -port 8888 -rsigner rcert.pem \ -CA demoCA/cacert.pem -nrequest 1
Demander des informations d'état en utilisant une demande générée en interne :
openssl ocsp -index demoCA/index.txt -rsigner rcert.pem \ -CA demoCA/cacert.pem -issuer demoCA/cacert.pem -serial 1
Demander des informations d’état en utilisant une demande lue dans un fichier, écrire la réponse dans un second fichier.
openssl ocsp -index demoCA/index.txt -rsigner rcert.pem -CA demoCA/cacert.pem -reqin req.der -respout resp.der
HISTORIQUE¶
L'option -no_alt_chains a été ajoutée dans la version 1.0.2b d'OpenSSL.
TRADUCTION¶
La traduction de cette page de manuel est maintenue par les membres de la liste <debian-l10n-french AT lists DOT debian DOT org>. Veuillez signaler toute erreur de traduction par un rapport de bogue sur le paquet manpages-fr-extra.
2015-12-31 | 1.0.2a 1.0.2c |