Provided by: manpages-fr-extra_20151231_all bug

NOM

       s_server - programme serveur SSL ou TLS

SYNOPSIS

       openssl s_server [-accept port] [-context identifiant] [-verify profondeur] [-Verify
       profondeur] [-crl_check] [-crl_check_all] [-cert fichier] [-certform DER|PEM] [-key
       fichier] [-keyform DER|PEM] [-pass param] [-dcert fichier] [-dcertform DER|PEM] [-dkey
       fichier] [-dkeyform DER|PEM] [-dpass param] [-dhparam fichier] [-nbio] [-nbio_test]
       [-crlf] [-debug] [-msg] [-state] [-CApath répertoire] [-CAfile fichier] [-no_alt_chains]
       [-nocert] [-cipher listechiffrements] [-serverpref] [-quiet] [-no_tmp_rsa] [-ssl2] [-ssl3]
       [-tls1] [-no_ssl2] [-no_ssl3] [-no_tls1] [-no_dhe] [-bugs] [-hack] [-www] [-WWW] [-HTTP]
       [-engine identifiant] [-tlsextdebug] [-no_ticket] [-id_prefix param] [-rand fichier(s)]
       [-serverinfo fichier] [-no_resumption_on_reneg] [-status] [-status_verbose]
       [-status_timeout nsec] [-status_url URL] [-nextprotoneg protocoles]

DESCRIPTION

       La commande s_server implémente un serveur SSL ou TLS générique qui attend les connexions
       sur un port donné en utilisant SSL ou TLS.

OPTIONS

       -accept port
           Le port TCP où attendre les connexions. Sans indication, le port 4433 est utilisé.

       -context identifiant
           Définir l’identifiant de contexte SSL. N’importe quelle valeur de chaîne peut être
           donnée. Si cette option est absente, une valeur par défaut sera utilisée.

       -cert fichier
           Le certificat à utiliser, la plupart des ensembles de chiffrements de serveurs
           nécessitent l’utilisation d’un certificat et certains ont besoin d’un certificat avec
           un certain type de clef publique : par exemple les ensembles de chiffrements DSS ont
           besoin d’un certificat contenant une clef DSS (DSA). Si aucun n’est indiqué, le nom de
           fichier server.pem sera utilisé.

       -certform format
           Le format de certificat à utiliser : DER ou PEM. Par défaut, PEM est utilisé.

       -key fichier
           La clef privée à utiliser. En absence d’indication, le fichier de certificats sera
           utilisé.

       -keyform format
           Le format privé à utiliser : DER ou PEM. Par défaut, PEM est utilisé.

       -pass param
           La source du mot de passe de la clef privée. Pour plus d'informations sur le format de
           param, consultez la section PARAMÈTRES DE PHRASE SECRÈTE d'openssl(1).

       -dcert fichier, -dkey fichier
           Indiquer un certificat et une clef privée supplémentaires, cela se comporte de la même
           façon que les options -cert et -key à part, si elles ne sont pas indiquées, l’absence
           de valeur par défaut (aucun certificat ni clef supplémentaires ne seront utilisés).
           Comme indiqué précédemment, certains ensembles de chiffrements nécessitent un
           certificat contenant une clef d’un certain type. Certains ensembles de chiffrements
           ont besoin d’un certificat contenant une clef RSA et d’autres une clef DSS (DSA). En
           utilisant des certificats et clefs RSA et DSS, un serveur peut accepter les clients
           qui ne gèrent que les ensembles de chiffrements RSA ou DSS en utilisant un certificat
           approprié.

       -dcertform format, -dkeyform format, -dpass param
           Ajouter respectivement le format de certificat et de clef privée, et la phrase
           secrète.

       -nocert
           Si cette option est définie, aucun certificat n’est utilisé. Cela restreint les
           ensembles de chiffrements disponibles à ceux anonymes (actuellement seulement DH
           anonyme).

       -dhparam fichier
           Le fichier de paramètres DH à utiliser. Les ensembles de chiffrements DH éphémères
           génèrent des clefs utilisant un ensemble de paramètres DH. Sans indication, une
           tentative de chargement des paramètres est réalisée à partir du fichier de certificats
           serveur. Si cela échoue, alors un ensemble fixe de paramètres, et propre au programme
           s_server, sera utilisé.

       -no_dhe
           Si cette option est définie, aucun paramètre DH ne sera chargé, désactivant
           effectivement les ensembles de chiffrements DH éphémères.

       -no_tmp_rsa
           Certains ensembles de chiffrements d’exportation utilisent parfois une clef RSA
           temporaire, cette option désactive la création de clef RSA temporaire.

       -verify profondeur, -Verify profondeur
           La profondeur de vérification à utiliser. Cela indique la taille maximale de la chaîne
           de certificats du client et force le serveur à demander un certificat au client. Avec
           l’option -verify, un certificat est demandé mais le client ne doit pas nécessairement
           en envoyer un, avec l’option -Verify, le client doit fournir un certificat sinon une
           erreur survient.

           Si l’ensemble de chiffrements ne peut pas demander un client de certificat (par
           exemple un ensemble de chiffrements anonyme ou PSK), cette option est sans effet.

       -crl_check, -crl_check_all
           Vérifier que le certificat du pair n’a pas été révoqué par son autorité de
           certification. Les listes de révocations de certificat sont ajoutées au fichier de
           certificats. Avec l’option -crl_check_all, toutes les listes de révocations de
           certificat de toutes les autorités de certification de la chaîne sont vérifiées.

       -CApath répertoire
           Le répertoire utilisé pour la vérification de certificat du client. Ce répertoire doit
           être au « format de hachage », consultez verify pour plus de renseignements. Il est
           aussi utilisé pour construire la chaîne de certificats du serveur.

       -CAfile fichier
           Un fichier contenant les certificats de confiance à utiliser lors d’une
           authentification de client et à utiliser lors d’une tentative de construction de
           chaîne de certificats du serveur. La liste est aussi utilisée dans la liste
           d’autorités de certification possibles transmise au client quand un certificat est
           demandé.

       -no_alt_chains
           Consultez la page de manuel verify(1) pour plus de précisions.

       -state
           Afficher les états de session SSL.

       -debug
           Afficher des renseignements de débogage complets y compris l’intégralité des échanges
           au format hexadécimal.

       -msg
           Montrer tous les messages de protocole avec les échanges au format hexadécimal.

       -nbio_test
           Tester les entrées et sorties non bloquantes.

       -nbio
           Activer les entrées et sorties non bloquantes.

       -crlf
           Cette option traduit un changement de ligne du terminal en RC+PAL (CR+LF).

       -quiet
           Empêcher l’affichage de renseignements sur la session et le certificat.

       -psk_hint suggestion
           Utiliser la suggestion PSK lors de l’utilisation d’un ensemble de chiffrements PSK.

       -psk clef
           Utiliser la clef PSK clef lors de l’utilisation d’un ensemble de chiffrements PSK. La
           clef est donnée comme un nombre hexadécimal sans être précédé par 0x, par exemple -psk
           1a2b3c4d.

       -ssl2, -ssl3, -tls1, -no_ssl2, -no_ssl3, -no_tls1
           Ces options désactivent l’utilisation de certains protocoles SSL ou TLS. Par défaut,
           l’initialisation de connexion utilise une méthode qui devrait être compatible avec
           tous les serveurs et leur permettre d’utiliser SSL v3, SSL v2 ou TLS comme approprié.

       -bugs
           Plusieurs bogues sont connus dans les implémentations SSL et TLS. L'ajout de cette
           option permet de contourner certains problèmes.

       -hack
           Cette option active un autre contournement pour du vieux code SSL de Netscape.

       -cipher listechiffrements
           Cela permet à la liste de chiffrements utilisée par le serveur d’être modifiée. Quand
           le client envoie une liste de chiffrements pris en charge, le premier algorithme de
           chiffrement client pris en charge, aussi inclus dans la liste du serveur, est utilisé.
           Comme le client indique l’ordre de préférence, l’ordre de la liste de chiffrements du
           serveur n’a pas d’importance. Consultez la commande ciphers pour plus de
           renseignements.

       -serverpref
           Utiliser les préférences de chiffrement du serveur au lieu des préférences du client.

       -tlsextdebug
           Afficher les échanges au format hexadécimal de toutes les extensions TLS reçues du
           serveur.

       -no_ticket
           Désactiver la prise en charge des tickets de session RFC 4507 bis.

       -www
           Renvoyer un message d’état au client quand il se connecte. Cela contient beaucoup de
           renseignements sur les algorithmes de chiffrement utilisés et divers paramètres de
           session. La sortie est au format HTML donc cette option sera normalement utilisée avec
           un navigateur web.

       -WWW
           Émuler un serveur web simple. Les pages seront résolues relativement au répertoire
           actuel, par exemple si l’URL https://hôte/page.html est demandée, le fichier
           ./page.html sera chargé.

       -HTTP
           Émuler un serveur web simple. Les pages seront résolues relativement au répertoire
           actuel, par exemple si l’URL https://hôte/page.html est demandée, le fichier
           ./page.html sera chargé. Les fichiers chargés sont supposés contenir une réponse HTTP
           complète et correcte (les lignes qui font partie de la ligne de réponse HTTP et les
           en-têtes doivent se terminer par RC+PAL (CR+LF).

       -engine identifiant
           Indiquer un moteur (en utilisant son identifiant unique identifiant) obligera s_server
           à essayer d'obtenir une référence fonctionnelle pour le moteur indiqué et
           l'initialiser si nécessaire. Le moteur sera ensuite utilisé par défaut pour tous les
           algorithmes disponibles.

       -id_prefix param
           Générer des identifiants de session SSL ou TLS précédés par param. C’est surtout utile
           pour tester n’importe quel code SSL ou TLS (par exemple les mandataires, ou « proxy »)
           qui désire échanger avec plusieurs serveurs quand chacun d’eux pourrait générer une
           série d’identifiants particuliers de session (par exemple avec un certain préfixe).

       -rand fichier(s)
           Un ou plusieurs fichiers contenant des données aléatoires utilisées pour initialiser
           le générateur de nombres pseudoaléatoires, ou une socket EGD (consultez RAND_egd(3)).
           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.

       -serverinfo fichier
           Un fichier contenant au moins un bloc de données PEM. Chaque bloc PEM doit encoder une
           extension TLS ServerHello (2 octets de type, 2 octets de taille, suivis de « taille »
           octets de données d’extension). Si le client envoie une extension TLS ClientHello vide
           correspondant au type, l’extension ServerHello correspondante sera renvoyée.

       -no_resumption_on_reneg
           Activer l’attribut SSL_OP_NO_SESSION_RESUMPTION_ON_RENEGOTIATION.

       -status
           Activer la prise en charge de demande d’état de certificat au serveur (agrafage OCSP).

       -status_verbose
           Activer la prise en charge de demande d’état de certificat au serveur (agrafage OCSP)
           et donner une sortie bavarde de la réponse OCSP.

       -status_timeout nsec
           Définir la durée d'expiration pour la réponse OCSP à nsec secondes.

       -status_url URL
           Définir une URL de répondeur de repli à utiliser si aucune URL de répondeur n’est
           présente dans le certificat du serveur. Sans cette option, une erreur est renvoyée si
           le certificat du serveur ne contient pas d’adresse de répondeur.

       -nextprotoneg protocoles
           Activer l’extension TLS de négociation du prochain protocole (« Next Protocol
           Negotiation ») et fournir une liste de noms de protocoles séparés par des virgules. La
           liste devrait d’abord contenir les protocoles les plus voulus. Les noms de protocole
           sont des chaînes ASCII affichables, par exemple « http/1.1 » ou « spdy/3 ».

COMMANDES DE CONNEXION

       Si une connexion demandée est établie avec un client SSL et qu’aucune des options -www ou
       -WWW n’a été utilisée, alors normalement, toutes les données reçues du client sont
       affichées et n’importe quel appui de touche sera envoyé au client.

       Certaines commandes d’une seule lettre sont aussi reconnues et réalisent des opération
       particulières : la liste est ci-dessous.

       q   Terminer la connexion SSL actuelle mais continuer à accepter de nouvelles connexions.

       Q   Terminer la connexion SSL actuelle et quitter.

       r   Renégocier la session SSL.

       R   Renégocier la session SSL et demander un certificat client.

       P   Envoyer du texte en clair dans la connexion TCP sous-jacente : cela devrait forcer le
           client à se déconnecter à cause d’une violation de protocole.

       S   Afficher certains renseignements d’état sur le cache de session.

NOTES

       s_server peut être utilisée pour déboguer les clients SSL. Pour accepter les connexions
       d’un navigateur web, la commande :

        openssl s_server -accept 443 -www

       peut par exemple être utilisée.

       La plupart des navigateurs web (en particulier Netscape et MSIE) n’acceptent que les
       ensembles de chiffrements RSA, donc ne peuvent pas se connecter à des serveurs qui
       n’utilisent pas de certificat ne comportant pas de clef RSA ou à une version d’OpenSSL
       avec RSA désactivé.

       Bien qu’indiquer une liste vide d’autorités de certification lors de la demande de
       certificat client est une violation de protocole au sens strict, certains clients SSL
       interprètent cela comme une indication que n’importe quelle autorité de certification est
       acceptable. C’est utile dans des buts de débogage.

       Les paramètres de session peuvent être affichés en utilisant le programme sess_id.

BOGUES

       Puisque ce programme a beaucoup d’options, et aussi parce que certaines des techniques
       utilisées sont plutôt vieilles, le code source C de s_server est plutôt difficile à lire
       et n’est pas un exemple à suivre. Un programme serveur SSL typique serait beaucoup plus
       simple.

       L’affichage des algorithmes de chiffrement communs est faux : il ne donne que la liste
       d’algorithmes de chiffrement reconnus par OpenSSL et pris en charge par le client.

       Le programme s_server devrait pouvoir afficher des précisions sur tous les ensembles de
       chiffrements inconnus qu’un client prétend prendre en charge.

VOIR AUSSI

       ciphers(1), sess_id(1), s_client(1)

HISTORIQUE

       L’option -no_alt_chains a été ajoutée à OpenSSL 1.0.2b.

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.