tsget(1) Client d’horodatage HTTP et HTTPS

SYNOPSIS

tsget -h URL_serveur [-e extension] [-o sortie] [-v] [-d] [-k clef_privée.pem] [-p mot_de_passe_clef] [-c cert_client.pem] [-C certs_CA.pem] [-P chemin_CA] [-r fichier:fichier...] [-g socket_EGD] [demande] ...

DESCRIPTION

La commande tsget permet d’envoyer une demande d'horodatage, comme spécifiée dans la RFC 3161, à un serveur d'horodatage HTTP ou HTTPS et de stocker la réponse d'horodatage dans un fichier. Cet outil ne peut pas être utilisé pour créer les demandes et vérifier les réponses, la commande ts(1) d’OpenSSL permet de le faire. tsget peut envoyer plusieurs requêtes au serveur sans fermer la connexion TCP si plus d'une demande est indiquée sur la ligne de commande.

L'outil envoie la requête HTTP suivante pour chaque demande d'horodatage :

        POST url HTTP/1.1
        User-Agent: OpenTSA tsget.pl/<version>
        Host: <hôte>:<port>
        Pragma: no-cache
        Content-Type: application/timestamp-query
        Accept: application/timestamp-reply
        Content-Length: taille du corps
        ... demande binaire indiquée par l'utilisateur ...

tsget attend une réponse de type application/timestamp-reply, qui est écrite dans un fichier sans aucune interprétation.

OPTIONS

-h URL_serveur
L'URL du serveur HTTP ou HTTPS qui écoute les demandes d'horodatage.
-e extension
Si l'option -o n'est pas donnée, cet argument indique l'extension des fichiers de sortie. Le nom de base du fichier de sortie est le même que celui des fichiers d'entrée. L'extension par défaut est « .tsr ». (Facultatif)
-o sortie
Cette option ne peut être indiquée que si une seule requête est envoyée au serveur. La réponse d'horodatage sera écrite dans le fichier de sortie donné. « - » signifie la sortie standard. Dans le cas de plusieurs demandes d'horodatage ou d'absence de cet argument, les noms des fichiers de sortie seront déduits des noms des fichiers d'entrée et de l’argument d’extension par défaut ou indiqué. (Facultatif)
-v
Le nom de la demande en cours de traitement est affiché sur la sortie d’erreur standard. (Facultatif)
-d
Activer le mode bavard de la bibliothèque curl sous-jacente. Les messages détaillés de débogage sont visibles pour la connexion. (Facultatif)
-k clef_privée.pem
(HTTPS) En cas d’authentification client à base de certificat par HTTPS, clef_privée.pem doit contenir la clef privée de l'utilisateur. Le fichier de clef privée peut éventuellement être protégé par une phrase secrète. L’option -c doit aussi être indiquée. (Facultatif)
-p mot_de_passe_clef
(HTTPS) Indiquer la phrase secrète de la clef privée indiquée par l’argument de l'option -k. Si cette option est omise et que la clef est protégée par phrase secrète, tsget la demandera. (Facultatif)
-c cert_client.pem
(HTTPS) En cas d’authentification client à base de certificat par HTTPS, cert_client.pem doit contenir le certificat X.509 de l'utilisateur. L’option -k doit également être indiquée. Si cette option n'est pas indiquée, aucune authentification du client à base de certificat n’aura lieu. (Facultatif)
-C certs_CA.pem
(HTTPS) L’ensemble des certificats d’autorité de confiance. La chaîne de certificats du certificat du pair doit inclure l'un des certificats d’autorité indiqués dans ce fichier. Soit l'option -C, soit l'option -P doit être donnée avec HTTPS. (Facultatif)
-P chemin_CA
(HTTPS) Le chemin d'accès aux certificats d’autorité de confiance pour vérifier le certificat du pair. Le répertoire doit être préparé avec l’utilitaire c_rehash d’OpenSSL. Soit l'option -C, soit l'option -P doit être donnée avec HTTPS. (Facultatif)
-rand fichier:fichier...
Les fichiers contenant des données aléatoires utilisées pour initialiser le générateur de nombres pseudoaléatoires. Plusieurs fichiers peuvent être indiqués en utilisant le séparateur du système d'exploitation : « ; » pour Windows, « , » pour OpenVMS et « : » pour tous les autres. (Facultatif)
-g socket_EGD
Le nom d'une socket EGD pour obtenir des données aléatoires. (Facultatif)
[demande] ...
Liste des fichiers contenant les demandes d’horodatage RFC 3161 encodées DER. Si aucune demande n'est indiquée, une seule demande sera envoyée au serveur et sera lue à partir de l'entrée standard. (Facultatif)

VARIABLES D'ENVIRONNEMENT

La variable d'environnement TSGET peut éventuellement contenir des arguments par défaut. Le contenu de cette variable est ajouté à la liste des arguments de ligne de commande.

EXEMPLES

Les exemples ci-dessous supposent que fichier1.tsq et fichier2.tsq contiennent des demandes d'horodatage valables, tsa.opentsa.org écoute sur le port 8080 les requêtes HTTP et sur le port 8443 les requêtes HTTPS, le service TSA est disponible au chemin absolu /tsa.

Obtenir une réponse d'horodatage pour fichier1.tsq sur HTTP, la sortie est écrite dans fichier1.tsr :

  tsget -h http://tsa.opentsa.org:8080/tsa fichier1.tsq

Obtenir une réponse d'horodatage pour fichier1.tsq et fichier2.tsq sur HTTP en montrant l’activité, la sortie est respectivement écrite dans fichier1.réponse et fichier2.réponse :

  tsget -h http://tsa.opentsa.org:8080/tsa -v -e .réponse \
        fichier1.tsq fichier2.tsq

Créer une demande d'horodatage, l’écrire dans fichier3.tsq, l'envoyer au serveur et écrire la réponse dans fichier3.tsr :

  openssl ts -query -data fichier3.txt -cert | tee fichier3.tsq \
        | tsget -h http://tsa.opentsa.org:8080/tsa \
        -o fichier3.tsr

Obtenir une réponse d'horodatage pour fichier1.tsq par HTTPS sans authentification du client :

  tsget -h https://tsa.opentsa.org:8443/tsa \
        -C cacerts.pem fichier1.tsq

Obtenir une réponse d'horodatage pour fichier1.tsq par HTTPS avec authentification du client à base de certificat (la phrase secrète sera demandée si clef_client.pem est protégée) :

  tsget -h https://tsa.opentsa.org:8443/tsa -C cacerts.pem \
        -k clef_client.pem -c client_cert.pem fichier1.tsq

La ligne de commande précédente peut être raccourcie en utilisant la variable d'environnement TSGET. Les commandes suivantes font la même chose que l'exemple précédent :

  TSGET='-h https://tsa.opentsa.org:8443/tsa -C cacerts.pem \
        -k clef_client.pem -c client_cert.pem'
  export TSGET
  tsget fichier1.tsq

AUTEUR

Zoltan Glozik <[email protected]>, projet OpenTSA (<http://www.opentsa.org>)

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.