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.

1.0.2a 1.0.2c                                      2015-12-31                                     S_SERVER(1SSL)