<-
Apache > Serveur HTTP > Documentation > Version 2.4 > Modules

Module Apache mod_ssl

Langues Disponibles:  en  |  fr 

Description:Chiffrement de haut niveau bas� sur les protocoles Secure Sockets Layer (SSL) et Transport Layer Security (TLS)
Statut:Extension
Identificateur�de�Module:ssl_module
Fichier�Source:mod_ssl.c

Sommaire

Ce module fournit le support SSL v3 et TLS v1 au serveur HTTP Apache. SSL v2 n'est plus support�.

Ce module s'appuie sur OpenSSL pour fournir le moteur de chiffrement.

D'autres d�tails, discussions et exemples sont fournis dans la documentation SSL.

Directives

Sujets

top

Variables d'environnement

Ce module peut �tre configur� pour fournir aux espaces de nommage SSI et CGI de nombreux �l�ments d'informations concernant SSL par le biais de variables d'environnement suppl�mentaires. Par d�faut, et pour des raisons de performances, ces informations ne sont pas fournies (Voir la directive SSLOptions StdEnvVars ci-dessous). Les variables g�n�r�es se trouvent dans la table ci-dessous. Ces informations peuvent �galement �tre disponible sous des noms diff�rents � des fins de compatibilit� ascendante. Reportez-vous au chapitre Compatibilit� pour plus de d�tails � propos des variables de compatibilit�.

Nom de la variable : Type de valeur : Description :
HTTPS drapeau HTTPS est utilis�.
SSL_PROTOCOL cha�ne La version du protocole SSL (SSLv3, TLSv1, TLSv1.1, TLSv1.2)
SSL_SESSION_ID cha�ne L'identifiant de session SSL cod� en hexad�cimal
SSL_SESSION_RESUMED cha�ne Session SSL initiale ou reprise. Note : plusieurs requ�tes peuvent �tre servies dans le cadre de la m�me session SSL (initiale ou reprise) si les connexions persistantes (HTTP KeepAlive) sont utilis�es
SSL_SECURE_RENEG cha�ne true si la ren�gociation s�curis�e est support�e, false dans le cas contraire
SSL_CIPHER cha�ne Le nom de l'algorithme de chiffrement
SSL_CIPHER_EXPORT cha�ne true si l'algorithme de chiffrement est un algorithme export�
SSL_CIPHER_USEKEYSIZE nombre Nombre de bits de chiffrement (r�ellement utilis�s)
SSL_CIPHER_ALGKEYSIZE nombre Nombre de bits de chiffrement (possible)
SSL_COMPRESS_METHOD cha�ne M�thode de compression SSL n�goci�e
SSL_VERSION_INTERFACE cha�ne La version du programme mod_ssl
SSL_VERSION_LIBRARY cha�ne La version du programme OpenSSL
SSL_CLIENT_M_VERSION cha�ne La version du certificat client
SSL_CLIENT_M_SERIAL cha�ne Le num�ro de s�rie du certificat client
SSL_CLIENT_S_DN cha�ne Le DN sujet du certificat client
SSL_CLIENT_S_DN_x509 cha�ne El�ment du DN sujet du client
SSL_CLIENT_I_DN cha�ne DN de l'�metteur du certificat du client
SSL_CLIENT_I_DN_x509 cha�ne El�ment du DN de l'�metteur du certificat du client
SSL_CLIENT_V_START cha�ne Validit� du certificat du client (date de d�but)
SSL_CLIENT_V_END cha�ne Validit� du certificat du client (date de fin)
SSL_CLIENT_V_REMAIN cha�ne Nombre de jours avant expiration du certificat du client
SSL_CLIENT_A_SIG cha�ne Algorithme utilis� pour la signature du certificat du client
SSL_CLIENT_A_KEY cha�ne Algorithme utilis� pour la cl� publique du certificat du client
SSL_CLIENT_CERT cha�ne Certificat du client au format PEM
SSL_CLIENT_CERT_CHAIN_n cha�ne Certificats de la cha�ne de certification du client au format PEM
SSL_CLIENT_VERIFY cha�ne NONE, SUCCESS, GENEROUS ou FAILED:raison
SSL_SERVER_M_VERSION cha�ne La version du certificat du serveur
SSL_SERVER_M_SERIAL cha�ne The serial of the server certificate
SSL_SERVER_S_DN cha�ne DN sujet du certificat du serveur
SSL_SERVER_S_DN_x509 cha�ne El�ment du DN sujet du certificat du serveur
SSL_SERVER_I_DN cha�ne DN de l'�metteur du certificat du serveur
SSL_SERVER_I_DN_x509 cha�ne El�ment du DN de l'�metteur du certificat du serveur
SSL_SERVER_V_START cha�ne Validit� du certificat du serveur (date de d�dut)
SSL_SERVER_V_END cha�ne Validit� du certificat du serveur (date de fin)
SSL_SERVER_A_SIG cha�ne Algorithme utilis� pour la signature du certificat du serveur
SSL_SERVER_A_KEY cha�ne Algorithme utilis� pour la cl� publique du certificat du serveur
SSL_SERVER_CERT cha�ne Certificat du serveur au format PEM
SSL_SRP_USER cha�ne nom d'utilisateur SRP
SSL_SRP_USERINFO cha�ne informations sur l'utilisateur SRP
SSL_TLS_SNI string Contenu de l'extension SNI TLS (si support� par ClientHello)

x509 sp�cifie un �l�ment de DN X.509 parmi C,ST,L,O,OU,CN,T,I,G,S,D,UID,Email. A partir de la version 2.1 d'Apache, x509 peut aussi comporter un suffixe num�rique _n. Si le DN en question comporte plusieurs attributs de noms identiques, ce suffixe constitue un index d�butant � z�ro et permettant de s�lectionner un attribut particulier. Par exemple, si le DN sujet du certificat du serveur comporte deux champs OU, on peut utiliser SSL_SERVER_S_DN_OU_0 et SSL_SERVER_S_DN_OU_1 pour r�f�rencer chacun d'entre eux. Un nom de variable sans suffixe _n est �quivalent au m�me nom avec le suffixe _0, ce qui correspond au premier attribut (ou au seul) caract�risant le DN. Lorsque la table d'environnement est remplie en utilisant l'option StdEnvVars de la directive SSLOptions, le premier attribut (ou le seul) caract�risant le DN est enregistr� avec un nom sans suffixe ; autrement dit, aucune entr�e poss�dant comme suffixe _0 n'est enregistr�e.

Le format des variables *_DN a chang� depuis la version 2.3.11 d'Apache HTTPD. Voir l'option LegacyDNStringFormat de la directive SSLOptions pour plus de d�tails.

SSL_CLIENT_V_REMAIN n'est disponible qu'� partir de la version 2.1.

Plusieurs variables d'environnement additionnelles peuvent �tre utilis�es dans les expressions SSLRequire, ou dans les formats de journalisation personnalis�s :

HTTP_USER_AGENT        PATH_INFO             AUTH_TYPE
HTTP_REFERER           QUERY_STRING          SERVER_SOFTWARE
HTTP_COOKIE            REMOTE_HOST           API_VERSION
HTTP_FORWARDED         REMOTE_IDENT          TIME_YEAR
HTTP_HOST              IS_SUBREQ             TIME_MON
HTTP_PROXY_CONNECTION  DOCUMENT_ROOT         TIME_DAY
HTTP_ACCEPT            SERVER_ADMIN          TIME_HOUR
THE_REQUEST            SERVER_NAME           TIME_MIN
REQUEST_FILENAME       SERVER_PORT           TIME_SEC
REQUEST_METHOD         SERVER_PROTOCOL       TIME_WDAY
REQUEST_SCHEME         REMOTE_ADDR           TIME
REQUEST_URI            REMOTE_USER

Dans ces contextes, deux formats sp�ciaux peuvent aussi �tre utilis�s :

ENV:nom_variable
Correspond � la variable d'environnement standard nom_variable.
HTTP:nom_en-t�te
Correspond � la valeur de l'en-t�te de requ�te dont le nom est nom_en-t�te.
top

Formats de journaux personnalis�s

Lorsque mod_ssl est compil� dans le serveur Apache ou m�me charg� (en mode DSO), des fonctions suppl�mentaires sont disponibles pour le Format de journal personnalis� du module mod_log_config. A ce titre, la fonction de format d'eXtension ``%{nom-var}x'' peut �tre utilis�e pour pr�senter en extension toute variable fournie par tout module, et en particulier celles fournies par mod_ssl et que vous trouverez dans la table ci-dessus.

A des fins de compatibilit� ascendante, il existe une fonction de format cryptographique suppl�mentaire ``%{nom}c''. Vous trouverez toutes les informations � propos de cette fonction dans le chapitre Compatibilit�.

Exemple

CustomLog logs/ssl_request_log "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"
top

Information � propos de la requ�te

mod_ssl enregistre des informations � propos de la requ�te que l'on peut restituer dans les journaux avec la cha�ne de format %{nom}n via le module mod_log_config.

Les informations enregistr�es sont les suivantes :

ssl-access-forbidden
Cette information contient la valeur 1 si l'acc�s a �t� refus� suite � une directive SSLRequire ou SSLRequireSSL.
ssl-secure-reneg
Si mod_ssl a �t� compil� avec une version d'OpenSSL qui supporte la ren�gociation s�curis�e, si SSL est utilis� pour la connexion courante et si le client supporte lui aussi la ren�gociation s�curis�e, cette information contiendra la valeur 1. Si le client ne supporte pas la ren�gociation s�curis�e, l'information contiendra la valeur 0. Si mod_ssl n'a pas �t� compil� avec une version d'OpenSSL qui supporte la ren�gociation s�curis�e, ou si SSL n'est pas utilis� pour la connexion courante, le contenu de l'information ne sera pas d�fini.
top

Fournisseurs d'autorisation disponibles avec Require

mod_ssl propose quelques fournisseurs d'autorisation � utiliser avec la directive Require du module mod_authz_core.

Require ssl

Le fournisseur ssl refuse l'acc�s si une connexion n'est pas chiffr�e avec SSL. L'effet est similaire � celui de la directive SSLRequireSSL.

Require ssl

Require ssl-verify-client

Le fournisseur ssl autorise l'acc�s si l'utilisateur est authentifi� via un certificat client valide. Ceci n'a un effet que si SSLVerifyClient optional est actif.

Dans l'exemple suivant, l'acc�s est autoris� si le client est authentifi� via un certificat client ou par nom d'utilisateur/mot de passe :

      Require ssl-verify-client
Require valid-user
top

SSLCACertificateFile Directive

Description:Fichier contenant une concat�nation des certificats de CA cod�s en PEM pour l'authentification des clients
Syntaxe:SSLCACertificateFile chemin-fichier
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le fichier tout-en-un o� vous pouvez rassembler les certificats des Autorit�s de Certification (CAs) pour les clients auxquels vous avez � faire. On les utilise pour l'authentification des clients. Un tel fichier contient la simple concat�nation des diff�rents fichiers de certificats cod�s en PEM, par ordre de pr�f�rence. Cette directive peut �tre utilis�e � la place et/ou en compl�ment de la directive SSLCACertificatePath.

Exemple

SSLCACertificateFile /usr/local/apache2/conf/ssl.crt/ca-bundle-client.crt
top

SSLCACertificatePath Directive

Description:R�pertoire des certificats de CA cod�s en PEM pour l'authentification des clients
Syntaxe:SSLCACertificatePath chemin-r�pertoire
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le r�pertoire o� sont stock�s les certificats des Autorit�s de Certification (CAs) pour les clients auxquels vous avez � faire. On les utilise pour v�rifier le certificat du client au cours de l'authentification de ce dernier.

Les fichiers de ce r�pertoire doivent �tre cod�s en PEM et ils sont acc�d�s via des noms de fichier sous forme de condens�s ou hash. Il ne suffit donc pas de placer les fichiers de certificats dans ce r�pertoire : vous devez aussi cr�er des liens symboliques nomm�s valeur-de-hashage.N, et vous devez toujours vous assurer que ce r�pertoire contient les liens symboliques appropri�s.

Exemple

SSLCACertificatePath /usr/local/apache2/conf/ssl.crt/
top

SSLCADNRequestFile Directive

Description:Fichier contenant la concat�nation des certificats de CA cod�s en PEM pour la d�finition de noms de CA acceptables
Syntaxe:SSLCADNRequestFile chemin-fichier
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Lorsque mod_ssl demande un certificat client, une liste de noms d'Autorit�s de Certification acceptables est envoy�e au client au cours de la phase d'initialisation de la connexion SSL. Le client peut alors utiliser cette liste de noms de CA pour s�lectionner un certificat client appropri� parmi ceux dont il dispose.

Si aucune des directives SSLCADNRequestPath ou SSLCADNRequestFile n'est d�finie, la liste de noms de CsA acceptables envoy�e au client est la liste des noms de tous les certificats de CA sp�cifi�s par les directives SSLCACertificateFile et SSLCACertificatePath ; en d'autres termes, c'est la liste des noms de CAs qui sera effectivement utilis�e pour v�rifier le certificat du client.

Dans certaines situations, il est utile de pouvoir envoyer une liste de noms de CA acceptables qui diff�re de la liste des CAs effectivement utilis�s pour v�rifier le certificat du client ; consid�rons par exemple le cas o� le certificat du client est sign� par des CAs interm�diaires. On peut ici utiliser les directives SSLCADNRequestPath et/ou SSLCADNRequestFile, et les noms de CA acceptables seront alors extraits de l'ensemble des certificats contenus dans le r�pertoire et/ou le fichier d�finis par cette paire de directives.

SSLCADNRequestFile doit sp�cifier un fichier tout-en-un contenant une concat�nation des certificats de CA cod�s en PEM.

Exemple

SSLCADNRequestFile /usr/local/apache2/conf/ca-names.crt
top

SSLCADNRequestPath Directive

Description:R�pertoire contenant des fichiers de certificats de CA cod�s en PEM pour la d�finition de noms de CA acceptables
Syntaxe:SSLCADNRequestPath chemin-r�pertoire
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive optionnelle permet de d�finir la liste de noms de CAs acceptables qui sera envoy�e au client lorsqu'un certificat de client est demand�. Voir la directive SSLCADNRequestFile pour plus de d�tails.

Les fichiers de ce r�pertoire doivent �tre cod�s en PEM et ils sont acc�d�s via des noms de fichier sous forme de condens�s ou hash. Il ne suffit donc pas de placer les fichiers de certificats dans ce r�pertoire : vous devez aussi cr�er des liens symboliques nomm�s valeur-de-hashage.N, et vous devez toujours vous assurer que ce r�pertoire contient les liens symboliques appropri�s.

Exemple

SSLCADNRequestPath /usr/local/apache2/conf/ca-names.crt/
top

SSLCARevocationCheck Directive

Description:Active la v�rification des r�vocations bas�e sur les CRL
Syntaxe:SSLCARevocationCheck chain|leaf|none
D�faut:SSLCARevocationCheck none
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Active la v�rification des r�vocations bas�e sur les Listes de R�vocations de Certificats (CRL). Au moins une des directives SSLCARevocationFile ou SSLCARevocationPath doit �tre d�finie. Lorsque cette directive est d�finie � chain (valeur recommand�e), les v�rifications CRL sont effectu�es sur tous les certificats de la cha�ne, alors que la valeur leaf limite la v�rification au certificat hors cha�ne (la feuille).

Lorsque la directive est d�finie � chain ou leaf, les CRLs doivent �tre disponibles pour que la validation r�ussisse

Avant la version 2.3.15, les v�rifications CRL dans mod_ssl r�ussissaient m�me si aucune CRL n'�tait trouv�e dans les chemins d�finis par les directives SSLCARevocationFile ou SSLCARevocationPath. Le comportement a chang� avec l'introduction de cette directive : lorsque la v�rification est activ�e, les CRLs doivent �tre pr�sentes pour que la validation r�ussisse ; dans le cas contraire, elle �chouera avec une erreur "CRL introuvable".

Exemple

SSLCARevocationCheck chain
top

SSLCARevocationFile Directive

Description:Fichier contenant la concat�nation des CRLs des CA cod�s en PEM pour l'authentification des clients
Syntaxe:SSLCARevocationFile chemin-fichier
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le fichier tout-en-un o� sont rassembl�es les Listes de R�vocation de Certificats (CRLs) des Autorit�s de certification (CAs) pour les clients auxquels vous avez � faire. On les utilise pour l'authentification des clients. Un tel fichier contient la simple concat�nation des diff�rents fichiers de CRLs cod�s en PEM, dans l'ordre de pr�f�rence. Cette directive peut �tre utilis�e � la place et/ou en compl�ment de la directive SSLCARevocationPath.

Exemple

SSLCARevocationFile /usr/local/apache2/conf/ssl.crl/ca-bundle-client.crl
top

SSLCARevocationPath Directive

Description:R�pertoire des CRLs de CA cod�s en PEM pour l'authentification des clients
Syntaxe:SSLCARevocationPath chemin-r�pertoire
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le r�pertoire o� sont stock�es les Listes de R�vocation de Certificats (CRL) des Autorit�s de Certification (CAs) pour les clients auxquels vous avez � faire. On les utilise pour r�voquer les certificats des clients au cours de l'authentification de ces derniers.

Les fichiers de ce r�pertoire doivent �tre cod�s en PEM et ils sont acc�d�s via des noms de fichier sous forme de condens�s ou hash. Il ne suffit donc pas de placer les fichiers de CRL dans ce r�pertoire : vous devez aussi cr�er des liens symboliques nomm�s valeur-de-hashage.N, et vous devez toujours vous assurer que ce r�pertoire contient les liens symboliques appropri�s.

Exemple

SSLCARevocationPath /usr/local/apache2/conf/ssl.crl/
top

SSLCertificateChainFile Directive

Description:Fichier contenant les certificats de CA du serveur cod�s en PEM
Syntaxe:SSLCertificateChainFile chemin-fichier
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

SSLCertificateChainFile est obsol�te

SSLCertificateChainFile est devenue obsol�te avec la version 2.4.8, lorsque la directive SSLCertificateFile a �t� �tendue pour supporter aussi les certificats de CA interm�diaires dans le fichier de certificats du serveur.

Cette directive permet de d�finir le fichier optionnel tout-en-un o� vous pouvez rassembler les certificats des Autorit�s de Certification (CA) qui forment la cha�ne de certification du certificat du serveur. Cette cha�ne d�bute par le certificat de la CA qui a d�livr� le certificat du serveur et peut remonter jusqu'au certificat de la CA racine. Un tel fichier contient la simple concat�nation des diff�rents certificats de CA cod�s en PEM, en g�n�ral dans l'ordre de la cha�ne de certification.

Elle doit �tre utilis�e � la place et/ou en compl�ment de la directive SSLCACertificatePath pour construire explicitement la cha�ne de certification du serveur qui est envoy�e au navigateur en plus du certificat du serveur. Elle s'av�re particuli�rement utile pour �viter les conflits avec les certificats de CA lorsqu'on utilise l'authentification du client. Comme le fait de placer un certificat de CA de la cha�ne de certification du serveur dans la directive SSLCACertificatePath produit le m�me effet pour la construction de la cha�ne de certification, cette directive a pour effet colat�ral de faire accepter les certificats clients fournis par cette m�me CA, au cours de l'authentification du client.

Soyez cependant prudent : fournir la cha�ne de certification ne fonctionne que si vous utilisez un simple certificat de serveur RSA ou DSA. Si vous utilisez une paire de certificats coupl�s RSA+DSA , cela ne fonctionnera que si les deux certificats utilisent vraiment la m�me cha�ne de certification. Dans le cas contraire, la confusion risque de s'installer au niveau des navigateurs.

Exemple

SSLCertificateChainFile /usr/local/apache2/conf/ssl.crt/ca.crt
top

SSLCertificateFile Directive

Description:Fichier de donn�es contenant le certificat X.509 du serveur cod� en PEM
Syntaxe:SSLCertificateFile chemin-fichier
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le fichier de donn�es contenant les informations de certificat X.509 du serveur cod�es au format PEM. Ce fichier doit contenir au minimum un certificat d'entit� finale (feuille). Depuis la version 2.4.8, il peut aussi contenir des certificats de CA interm�diaires tri�s des feuilles � la racine, ainsi que des SSLCertificateChainFile (obsol�tes).

Des �l�ments additionnels peuvent �tre pr�sents, comme des param�tres DH et/ou le nom EC curve pour les cl�s eph�m�res, respectivement g�n�r�s par openssl dhparam et openssl ecparam (support� � partir de la version 2.4.7), et enfin la cl� priv�e du certificat d'entit� finale. Si la cl� priv�e est chiffr�e, une bo�te de dialogue demandant le mot de passe s'ouvre au d�marrage.

Cette directive peut �tre utilis�e plusieurs fois pour r�f�rencer diff�rents noms de fichiers, afin de supporter plusieurs algorithmes pour l'authentification du serveur - en g�n�ral RSA, DSA et ECC. Le nombre d'algorithmes support�s d�pend de la version d'OpenSSL utilis�e pour mod_ssl : � partir de la version 1.0.0, la commande openssl list-public-key-algorithms renvoie la liste de ces algorithmes.

A partir de la version 1.0.2 d'OpenSSL, cette directive permet de configurer la cha�ne de certification en fonction du certificat, ce qui supprime une limitation de la directive obsol�te SSLCertificateChainFile. Cependant, les param�tres DH et ECDH ne sont lus que depuis la premi�re directive SSLCertificateFile car ils s'appliquent ind�pendamment du type d'algorithme d'authentification.

Interop�rabilit� des param�tres DH avec les nombres premiers de plus de 1024 bits

Depuis la version 2.4.7, mod_ssl utilise des param�tres DH standardis�s avec des nombres premiers de 2048, 3072 et 4096 bits, et avec des nombres premiers de 6144 et 8192 bits depuis la version 2.4.10 (voir RFC 3526), et les fournit aux clients en fonction de la longueur de la cl� du certificat RSA/DSA. En particulier avec les clients bas�s sur Java (versions 7 et ant�rieures), ceci peut provoquer des erreurs au cours de la n�gociation - voir cette r�ponse de la FAQ SSL pour contourner les probl�mes de ce genre.

Exemple

SSLCertificateFile /usr/local/apache2/conf/ssl.crt/server.crt
top

SSLCertificateKeyFile Directive

Description:Fichier contenant la cl� priv�e du serveur cod�e en PEM
Syntaxe:SSLCertificateKeyFile chemin-fichier
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le fichier contenant la cl� priv�e du serveur cod�e en PEM (la cl� priv�e peut �tre associ�e au certificat dans le fichier d�fini par la directive SSLCertificateFile, mais cette pratique est d�conseill�e). Si la cl� priv�e est chiffr�e, une bo�te de dialogue demandant le mot de passe s'ouvre au d�marrage.

Cette directive peut �tre utilis�e plusieurs fois pour r�f�rencer diff�rents noms de fichiers, afin de supporter plusieurs algorithmes pour l'authentification du serveur. A chaque directive SSLCertificateKeyFile doit �tre associ�e une directive SSLCertificateFile correspondante.

Exemple

SSLCertificateKeyFile /usr/local/apache2/conf/ssl.key/server.key
top

SSLCipherSuite Directive

Description:Algorithmes de chiffrement disponibles pour la n�gociation au cours de l'initialisation de la connexion SSL
Syntaxe:SSLCipherSuite algorithmes
D�faut:SSLCipherSuite DEFAULT (d�pend de la version d'OpenSSL install�e)
Contexte:configuration du serveur, serveur virtuel, r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_ssl

Cette directive complexe utilise la cha�ne algorithmes contenant la liste des algorithmes de chiffrement OpenSSL que le client peut utiliser au cours de la phase d'initialisation de la connexion SSL. Notez que cette directive peut �tre utilis�e aussi bien dans un contexte de serveur que dans un contexte de r�pertoire. Dans un contexte de serveur, elle s'applique � l'initialisation SSL standard lorsqu'une connexion est �tablie. Dans un contexte de r�pertoire, elle force une ren�gociation SSL avec la liste d'algorithmes de chiffrement sp�cifi�e apr�s la lecture d'une requ�te HTTP, mais avant l'envoi de la r�ponse HTTP.

La liste d'algorithmes de chiffrement SSL sp�cifi�e par l'argument algorithmes comporte quatre attributs principaux auxquels s'ajoutent quelques attributs secondaires :

L'algorithme de chiffrement peut aussi provenir de l'ext�rieur. Les algorithmes SSLv2 ne sont plus support�s. Pour d�finir les algorithmes � utiliser, on peut soit sp�cifier tous les algorithmes � la fois, soit utiliser des alias pour sp�cifier une liste d'algorithmes dans leur ordre de pr�f�rence (voir Table 1). Les algorithmes et alias effectivement disponibles d�pendent de la version d'openssl utilis�e. Les versions ult�rieures d'openssl inclueront probablement des algorithmes suppl�mentaires.

Symbole Description
Algorithme d'�change de cl�s :
kRSA Echange de cl�s RSA
kDHr Echange de cl�s Diffie-Hellman avec cl� RSA
kDHd Echange de cl�s Diffie-Hellman avec cl� DSA
kEDH Echange de cl�s Diffie-Hellman temporaires (pas de certificat)
kSRP �change de cl�s avec mot de passe distant s�curis� (SRP)
Algorithmes d'authentification :
aNULL Pas d'authentification
aRSA Authentification RSA
aDSS Authentification DSS
aDH Authentification Diffie-Hellman
Algorithmes de chiffrement :
eNULL Pas de chiffrement
NULL alias pour eNULL
AES Chiffrement AES
DES Chiffrement DES
3DES Chiffrement Triple-DES
RC4 Chiffrement RC4
RC2 Chiffrement RC2
IDEA Chiffrement IDEA
Algorithmes de condens�s MAC :
MD5 Fonction de hashage MD5
SHA1 Fonction de hashage SHA1
SHA alias pour SHA1
SHA256 >Fonction de hashage SHA256
SHA384 >Fonction de hashage SHA384
Alias :
SSLv3 tous les algorithmes de chiffrement SSL version 3.0
TLSv1 tous les algorithmes de chiffrement TLS version 1.0
EXP tous les algorithmes de chiffrement externes
EXPORT40 tous les algorithmes de chiffrement externes limit�s � 40 bits
EXPORT56 tous les algorithmes de chiffrement externes limit�s � 56 bits
LOW tous les algorithmes de chiffrement faibles (non externes, DES simple)
MEDIUM tous les algorithmes avec chiffrement 128 bits
HIGH tous les algorithmes utilisant Triple-DES
RSA tous les algorithmes utilisant l'�change de cl�s RSA
DH tous les algorithmes utilisant l'�change de cl�s Diffie-Hellman
EDH tous les algorithmes utilisant l'�change de cl�s Diffie-Hellman temporaires
ECDH �change de cl�s Elliptic Curve Diffie-Hellman
ADH tous les algorithmes utilisant l'�change de cl�s Diffie-Hellman anonymes
AECDH tous les algorithmes utilisant l'�change de cl�s Elliptic Curve Diffie-Hellman
SRP tous les algorithmes utilisant l'�change de cl�s avec mot de passe distant s�curis� (SRP)
DSS tous les algorithmes utilisant l'authentification DSS
ECDSA tous les algorithmes utilisant l'authentification ECDSA
aNULL tous les algorithmes n'utilisant aucune authentification

Cela devient int�ressant lorsque tous ces symboles sont combin�s ensemble pour sp�cifier les algorithmes disponibles et l'ordre dans lequel vous voulez les utiliser. Pour simplifier tout cela, vous disposez aussi d'alias (SSLv3, TLSv1, EXP, LOW, MEDIUM, HIGH) pour certains groupes d'algorithmes. Ces symboles peuvent �tre reli�s par des pr�fixes pour former la cha�ne algorithmes. Les pr�fixes disponibles sont :

Les algorithmes aNULL, eNULL et EXP sont toujours d�sactiv�s

Depuis la version 2.4.7, les algorithmes de type null ou destin�s � l'exportation sont toujours d�sactiv�s car mod_ssl fait obligatoirement pr�c�der toute cha�ne de suite d'algorithmes par !aNULL:!eNULL:!EXP: � l'initialisation.

Pour vous simplifier la vie, vous pouvez utiliser la commande ``openssl ciphers -v'' qui vous fournit un moyen simple de cr�er la cha�ne algorithmes avec succ�s. La cha�ne algorithmes par d�faut d�pend de la version des biblioth�ques SSL install�es. Supposons qu'elle contienne ``RC4-SHA:AES128-SHA:HIGH:MEDIUM:!aNULL:!MD5'', ce qui stipule de mettre RC4-SHA et AES128-SHA en premiers, car ces algorithmes pr�sentent un bon compromis entre vitesse et s�curit�. Viennent ensuite les algorithmes de s�curit� �lev�e et moyenne. En fin de compte, les algorithmes qui n'offrent aucune authentification sont exclus, comme les algorithmes anonymes Diffie-Hellman pour SSL, ainsi que tous les algorithmes qui utilisent MD5 pour le hashage, car celui-ci est reconnu comme insuffisant.

$ openssl ciphers -v 'RC4-SHA:AES128-SHA:HIGH:MEDIUM:!aNULL:!MD5'
RC4-SHA                 SSLv3 Kx=RSA      Au=RSA  Enc=RC4(128)  Mac=SHA1
AES128-SHA              SSLv3 Kx=RSA      Au=RSA  Enc=AES(128)  Mac=SHA1
DHE-RSA-AES256-SHA      SSLv3 Kx=DH       Au=RSA  Enc=AES(256)  Mac=SHA1
...                     ...               ...     ...           ...
SEED-SHA                SSLv3 Kx=RSA      Au=RSA  Enc=SEED(128) Mac=SHA1
PSK-RC4-SHA             SSLv3 Kx=PSK      Au=PSK  Enc=RC4(128)  Mac=SHA1
KRB5-RC4-SHA            SSLv3 Kx=KRB5     Au=KRB5 Enc=RC4(128)  Mac=SHA1

Vous trouverez la liste compl�te des algorithmes RSA & DH sp�cifiques � SSL dans la Table 2.

Exemple

SSLCipherSuite RSA:!EXP:!NULL:+HIGH:+MEDIUM:-LOW
Symbole algorithme Protocole Echange de cl�s Authentification Chiffrement Condens� MAC Type
Algorithmes RSA :
DES-CBC3-SHA SSLv3 RSA RSA 3DES(168) SHA1
IDEA-CBC-SHA SSLv3 RSA RSA IDEA(128) SHA1
RC4-SHA SSLv3 RSA RSA RC4(128) SHA1
RC4-MD5 SSLv3 RSA RSA RC4(128) MD5
DES-CBC-SHA SSLv3 RSA RSA DES(56) SHA1
EXP-DES-CBC-SHA SSLv3 RSA(512) RSA DES(40) SHA1 export
EXP-RC2-CBC-MD5 SSLv3 RSA(512) RSA RC2(40) MD5 export
EXP-RC4-MD5 SSLv3 RSA(512) RSA RC4(40) MD5 export
NULL-SHA SSLv3 RSA RSA None SHA1
NULL-MD5 SSLv3 RSA RSA None MD5
Algorithmes Diffie-Hellman :
ADH-DES-CBC3-SHA SSLv3 DH None 3DES(168) SHA1
ADH-DES-CBC-SHA SSLv3 DH None DES(56) SHA1
ADH-RC4-MD5 SSLv3 DH None RC4(128) MD5
EDH-RSA-DES-CBC3-SHA SSLv3 DH RSA 3DES(168) SHA1
EDH-DSS-DES-CBC3-SHA SSLv3 DH DSS 3DES(168) SHA1
EDH-RSA-DES-CBC-SHA SSLv3 DH RSA DES(56) SHA1
EDH-DSS-DES-CBC-SHA SSLv3 DH DSS DES(56) SHA1
EXP-EDH-RSA-DES-CBC-SHA SSLv3 DH(512) RSA DES(40) SHA1 export
EXP-EDH-DSS-DES-CBC-SHA SSLv3 DH(512) DSS DES(40) SHA1 export
EXP-ADH-DES-CBC-SHA SSLv3 DH(512) None DES(40) SHA1 export
EXP-ADH-RC4-MD5 SSLv3 DH(512) None RC4(40) MD5 export
top

SSLCompression Directive

Description:Permet d'activer la compression au niveau SSL
Syntaxe:SSLCompression on|off
D�faut:SSLCompression off
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible � partir de la version 2.4.3 du serveur HTTP Apache, si on utilise une version d'OpenSSL 0.9.8 ou sup�rieure ; l'utilisation dans un contexte de serveur virtuel n'est disponible que si on utilise une version d'OpenSSL 1.0.0 ou sup�rieure. La valeur par d�faut �tait on dans la version 2.4.3.

Cette directive permet d'activer la compression au niveau SSL.

L'activation de la compression est � l'origine de probl�mes de s�curit� dans la plupart des configurations (l'attaque nomm�e CRIME).

top

SSLCryptoDevice Directive

Description:Active l'utilisation d'un acc�l�rateur mat�riel de chiffrement
Syntaxe:SSLCryptoDevice moteur
D�faut:SSLCryptoDevice builtin
Contexte:configuration du serveur
Statut:Extension
Module:mod_ssl

Cette directive permet d'activer l'utilisation d'une carte acc�l�ratrice de chiffrement qui prendra en compte certaines parties du traitement relatif � SSL. Cette directive n'est utilisable que si la bo�te � outils SSL � �t� compil�e avec le support "engine" ; les versions 0.9.7 et sup�rieures d'OpenSSL poss�dent par d�faut le support "engine", alors qu'avec la version 0.9.6, il faut utiliser les distributions s�par�es "-engine".

Pour d�terminer les moteurs support�s, ex�cutez la commande "openssl engine".

Exemple

# Pour un acc�l�rateur Broadcom :
SSLCryptoDevice ubsec
top

SSLEngine Directive

Description:Interrupteur marche/arr�t du moteur SSL
Syntaxe:SSLEngine on|off|optional
D�faut:SSLEngine off
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet d'activer/d�sactiver le moteur du protocole SSL/TLS. Elle doit �tre utilis�e dans une section <VirtualHost> pour activer SSL/TLS pour ce serveur virtuel particulier. Par d�faut, le moteur du protocole SSL/TLS est d�sactiv� pour le serveur principal et tous les serveurs virtuels configur�s.

Exemple

<VirtualHost _default_:443>
SSLEngine on
#...
</VirtualHost>

Depuis la version 2.1 d'Apache, la directive SSLEngine peut �tre d�finie � optional, ce qui active le support de RFC 2817, Upgrading to TLS Within HTTP/1.1. Pour le moment, aucun navigateur web ne supporte RFC 2817.

top

SSLFIPS Directive

Description:Coimmutateur du mode SSL FIPS
Syntaxe:SSLFIPS on|off
D�faut:SSLFIPS off
Contexte:configuration du serveur
Statut:Extension
Module:mod_ssl

Cette directive permet d'activer/d�sactiver l'utilisation du drapeau FIPS_mode de la biblioth�que SSL. Elle doit �tre d�finie dans le contexte du serveur principal, et n'accepte pas les configurations sources de conflits (SSLFIPS on suivi de SSLFIPS off par exemple). Le mode s'applique � toutes les op�rations de la biblioth�que SSL.

Si httpd a �t� compil� avec une biblioth�que SSL qui ne supporte pas le drapeau FIPS_mode, la directive SSLFIPS on �chouera. Reportez-vous au document sur la politique de s�curit� FIPS 140-2 de la biblioth�que du fournisseur SSL, pour les pr�requis sp�cifiques n�cessaires � l'utilisation de mod_ssl selon un mode d'op�ration approuv� par FIPS 140-2 ; notez que mod_ssl en lui-m�me n'est pas valid�, mais peut �tre d�crit comme utilisant un module de chiffrement valid� par FIPS 140-2, lorsque tous les composants sont assembl�s et mis en oeuvre selon les recommandations de la politique de s�curit� applicable.

top

SSLHonorCipherOrder Directive

Description:Option permettant de classer les algorithmes de chiffrement du serveur par ordre de pr�f�rence
Syntaxe:SSLHonorCipherOrder on|off
D�faut:SSLHonorCipherOrder off
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Normalement, ce sont les pr�f�rences du client qui sont prises en compte lors du choix d'un algorithme de chiffrement au cours d'une n�gociation SSLv3 ou TLSv1. Si cette directive est activ�e, ce sont les pr�f�rences du serveur qui seront prises en compte � la place.

Exemple

SSLHonorCipherOrder on
top

SSLInsecureRenegotiation Directive

Description:Option permettant d'activer le support de la ren�gociation non s�curis�e
Syntaxe:SSLInsecureRenegotiation on|off
D�faut:SSLInsecureRenegotiation off
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible depuis httpd 2.2.15, si une version 0.9.8m ou sup�rieure d'OpenSSL est utilis�e

Comme il a �t� sp�cifi�, toutes les versions des protocoles SSL et TLS (jusqu'� la version 1.2 de TLS incluse) �taient vuln�rables � une attaque de type Man-in-the-Middle (CVE-2009-3555) au cours d'une ren�gociation. Cette vuln�rabilit� permettait � un attaquant de pr�fixer la requ�te HTTP (telle qu'elle �tait vue du serveur) avec un texte choisi. Une extension du protocole a �t� d�velopp�e pour corriger cette vuln�rabilit�, sous r�serve qu'elle soit support�e par le client et le serveur.

Si mod_ssl est li� � une version 0.9.8m ou sup�rieure d'OpenSSL, par d�faut, la ren�gociation n'est accord�e qu'aux clients qui supportent la nouvelle extension du protocole. Si cette directive est activ�e, la ren�gociation sera accord�e aux anciens clients (non patch�s), quoique de mani�re non s�curis�e

Avertissement � propos de la s�curit�

Si cette directive est activ�e, les connexions SSL seront vuln�rables aux attaques de type pr�fixe Man-in-the-Middle comme d�crit dans CVE-2009-3555.

Exemple

SSLInsecureRenegotiation on

La variable d'environnement SSL_SECURE_RENEG peut �tre utilis�e dans un script SSI ou CGI pour d�terminer si la ren�gociation s�curis�e est support�e pour une connexion SSL donn�e.

top

SSLOCSPDefaultResponder Directive

Description:D�finit l'URI du r�pondeur par d�faut pour la validation OCSP
Syntaxe:SSLOCSDefaultResponder uri
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le r�pondeur OCSP par d�faut. Si la directive SSLOCSPOverrideResponder n'est pas activ�e, l'URI sp�cifi� ne sera utilis� que si aucun URI de r�pondeur n'est sp�cifi� dans le certificat en cours de v�rification.

top

SSLOCSPEnable Directive

Description:Active la validation OCSP de la cha�ne de certificats du client
Syntaxe:SSLOCSPEnable on|off
D�faut:SSLOCSPEnable off
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet d'activer la validation OCSP de la cha�ne de certificats du client. Si elle est activ�e, les certificats de la cha�ne de certificats du client seront valid�s aupr�s d'un r�pondeur OCSP, une fois la v�rification normale effectu�e (v�rification des CRLs incluse).

Le r�pondeur OCSP utilis� est soit extrait du certificat lui-m�me, soit sp�cifi� dans la configuration ; voir les directives SSLOCSPDefaultResponder et SSLOCSPOverrideResponder.

Exemple

SSLVerifyClient on
SSLOCSPEnable on
SSLOCSPDefaultResponder http://responder.example.com:8888/responder
SSLOCSPOverrideResponder on
top

SSLOCSPOverrideResponder Directive

Description:Force l'utilisation de l'URI du r�pondeur par d�faut pour la validation OCSP
Syntaxe:SSLOCSPOverrideResponder on|off
D�faut:SSLOCSPOverrideResponder off
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Force l'utilisation, au cours d'une validation OCSP de certificat, du r�pondeur OCSP par d�faut sp�cifi� dans la configuration, que le certificat en cours de v�rification fasse mention d'un r�pondeur OCSP ou non.

top

SSLOCSPResponderTimeout Directive

Description:D�lai d'attente pour les requ�tes OCSP
Syntaxe:SSLOCSPResponderTimeout secondes
D�faut:SSLOCSPResponderTimeout 10
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette option permet de d�finir le d�lai d'attente pour les requ�tes � destination des r�pondeurs OCSP, lorsque la directive SSLOCSPEnable est � on.

top

SSLOCSPResponseMaxAge Directive

Description:Age maximum autoris� pour les r�ponses OCSP
Syntaxe:SSLOCSPResponseMaxAge secondes
D�faut:SSLOCSPResponseMaxAge -1
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette option permet de d�finir l'�ge maximum autoris� (la "fraicheur") des r�ponses OCSP. La valeur par d�fault (-1) signifie qu'aucun �ge maximum n'est d�fini ; autrement dit, les r�ponses OCSP sont consid�r�es comme valides tant que la valeur de leur champ nextUpdate se situe dans le futur.

top

SSLOCSPResponseTimeSkew Directive

Description:D�rive temporelle maximale autoris�e pour la validation des r�ponses OCSP
Syntaxe:SSLOCSPResponseTimeSkew secondes
D�faut:SSLOCSPResponseTimeSkew 300
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette option permet de d�finir la d�rive temporelle maximale autoris�e pour les r�ponses OCSP (lors de la v�rification des champs thisUpdate et nextUpdate).

top

SSLOCSPUseRequestNonce Directive

Description:Use a nonce within OCSP queries
Syntaxe:SSLOCSPUseRequestNonce on|off
D�faut:SSLOCSPUseRequestNonce on
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Available in httpd 2.4.10 and later

La documentation de cette directive n'a pas encore t traduite. Veuillez vous reporter la version en langue anglaise.

top

SSLOpenSSLConfCmd Directive

Description:Configuration des param�tres d'OpenSSL via son API SSL_CONF
Syntaxe:SSLOpenSSLConfCmd commande valeur
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible depuis la version 2.4.8 du serveur HTTP Apache avec OpenSSL 1.0.2 ou sup�rieur

Cette directive permet � mod_ssl d'acc�der � l'API SSL_CONF d'OpenSSL. Il n'est ainsi plus n�cessaire d'impl�menter des directives suppl�mentaires pour mod_ssl lorsque de nouvelles fonctionnalit�s sont ajout�es � OpenSSL, ce qui rend la configuration de ce dernier beaucoup plus souple.

Le jeu de commandes disponibles pour la directive SSLOpenSSLConfCmd d�pend de la version d'OpenSSL utilis�e pour mod_ssl (la version minimale 1.0.2 est un pr�requis). Pour obtenir la liste des commandes support�es, voir la section Supported configuration file commands de la page de manuel SSL_CONF_cmd(3) d'OpenSSL.

Certaines commandes peuvent remplacer des directives existantes (comme SSLCipherSuite ou SSLProtocol) ; notez cependant que la syntaxe et/ou les valeurs possibles peuvent diff�rer.

Examples

SSLOpenSSLConfCmd Options -SessionTicket,ServerPreference
SSLOpenSSLConfCmd ECDHParameters brainpoolP256r1
SSLOpenSSLConfCmd ServerInfoFile /usr/local/apache2/conf/server-info.pem
SSLOpenSSLConfCmd Protocol "-ALL, TLSv1.2"
SSLOpenSSLConfCmd SignatureAlgorithms RSA+SHA384:ECDSA+SHA256
top

SSLOptions Directive

Description:Configure diff�rentes options d'ex�cution du moteur SSL
Syntaxe:SSLOptions [+|-]option ...
Contexte:configuration du serveur, serveur virtuel, r�pertoire, .htaccess
AllowOverride:Options
Statut:Extension
Module:mod_ssl

Cette directive permet de contr�ler diff�rentes options d'ex�cution du moteur SSL dans un contexte de r�pertoire. Normalement, si plusieurs SSLOptions peuvent s'appliquer � un r�pertoire, c'est la plus sp�cifique qui est v�ritablement prise en compte ; les options ne se combinent pas entre elles. Elles se combinent cependant entre elles si elles sont toutes pr�c�d�es par un symbole plus (+) ou moins (-). Toute option pr�c�d�e d'un + est ajout�e aux options actuellement en vigueur, et toute option pr�c�d�e d'un - est supprim�e de ces m�mes options.

Les options disponibles sont :

Exemple

SSLOptions +FakeBasicAuth -StrictRequire
<Files ~ "\.(cgi|shtml)$">
    SSLOptions +StdEnvVars -ExportCertData
<Files>
top

SSLPassPhraseDialog Directive

Description:M�thode utilis�e pour entrer le mot de passe pour les cl�s priv�es chiffr�es
Syntaxe:SSLPassPhraseDialog type
D�faut:SSLPassPhraseDialog builtin
Contexte:configuration du serveur
Statut:Extension
Module:mod_ssl

Lors de son d�marrage, Apache doit lire les diff�rents fichiers de certificats (voir la directive SSLCertificateFile) et de cl�s priv�es (voir la directive SSLCertificateKeyFile) des serveurs virtuels o� SSL est activ�. Comme, pour des raisons de s�curit�, les fichiers de cl�s priv�es sont en g�n�ral chiffr�s, mod_ssl doit demander � l'administrateur un mot de passe pour d�chiffrer ces fichiers. L'argument type permet de choisir la mani�re dont cette demande peut �tre formul�e parmi les trois suivantes :

Exemple

SSLPassPhraseDialog exec:/usr/local/apache/sbin/pp-filter
top

SSLProtocol Directive

Description:Indique les versions du protocole SSL/TLS disponibles
Syntaxe:SSLProtocol [+|-]protocole ...
D�faut:SSLProtocol all
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir quelles versions du protocole SSL/TLS seront accept�es lors de l'initialisation d'une nouvelle connexion.

Les protocoles disponibles sont les suivants (sensibles � la casse) :

Exemple

SSLProtocol TLSv1
top

SSLProxyCACertificateFile Directive

Description:Fichier contenant la concat�nation des certificats de CA cod�s en PEM pour l'authentification des serveurs distants
Syntaxe:SSLProxyCACertificateFile file-path
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le fichier tout-en-un o� sont stock�s les certificats des Autorit�s de Certification (CA) pour les serveurs distants auxquels vous avez � faire. On les utilise lors de l'authentification du serveur distant. Un tel fichier contient la simple concat�nation des diff�rents fichiers de certificats cod�s en PEM, class�s par ordre de pr�f�rence. On peut utiliser cette directive � la place et/ou en compl�ment de la directive SSLProxyCACertificatePath.

Exemple

SSLProxyCACertificateFile
/usr/local/apache2/conf/ssl.crt/ca-bundle-serveur.distant.crt
top

SSLProxyCACertificatePath Directive

Description:R�pertoire des certificats de CA cod�s en PEM pour l'authentification des serveurs distants
Syntaxe:SSLProxyCACertificatePath chemin-r�pertoire
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet de sp�cifier le r�pertoire o� sont stock�s les certificats des Autorit�s de Certification (CAs) pour les serveurs distants auxquels vous avez � faire. On les utilise pour v�rifier le certificat du serveur distant lors de l'authentification de ce dernier.

Les fichiers de ce r�pertoire doivent �tre cod�s en PEM et ils sont acc�d�s via des noms de fichier sous forme de condens�s ou hash. Il ne suffit donc pas de placer les fichiers de certificats dans ce r�pertoire : vous devez aussi cr�er des liens symboliques nomm�s valeur-de-hashage.N, et vous devez toujours vous assurer que ce r�pertoire contient les liens symboliques appropri�s.

Exemple

SSLProxyCACertificatePath /usr/local/apache2/conf/ssl.crt/
top

SSLProxyCARevocationCheck Directive

Description:Active la v�rification des r�vocations bas�e sur les CRLs pour l'authentification du serveur distant
Syntaxe:SSLProxyCARevocationCheck chain|leaf|none
D�faut:SSLProxyCARevocationCheck none
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Active la v�rification des r�vocations bas�e sur les Listes de r�vocations de Certificats (CRL) pour les serveurs distants auxquels vous vous connectez. A moins une des directives SSLProxyCARevocationFile ou SSLProxyCARevocationPath doit �tre d�finie. Lorsque cette directive est d�finie � chain (valeur recommand�e), les v�rifications CRL sont effectu�es sur tous les certificats de la cha�ne, alors que la valeur leaf limite la v�rification au certificat hors cha�ne (la feuille).

Lorsque la directive est d�finie � chain ou leaf, les CRLs doivent �tre disponibles pour que la validation r�ussisse

Avant la version 2.3.15, les v�rifications CRL dans mod_ssl r�ussissaient m�me si aucune CRL n'�tait trouv�e dans les chemins d�finis par les directives SSLProxyCARevocationFile ou SSLProxyCARevocationPath. Le comportement a chang� avec l'introduction de cette directive : lorsque la v�rification est activ�e, les CRLs doivent �tre pr�sentes pour que la validation r�ussisse ; dans le cas contraire, elle �chouera avec une erreur "CRL introuvable".

Exemple

SSLProxyCARevocationCheck chain
top

SSLProxyCARevocationFile Directive

Description:Fichier contenant la concat�nation des CRLs de CA cod�s en PEM pour l'authentification des serveurs distants
Syntaxe:SSLProxyCARevocationFile chemin-fichier
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le fichier tout-en-un o� sont rassembl�es les Listes de R�vocation de Certificats (CRLs) des Autorit�s de certification (CAs) pour les serveurs distants auxquels vous avez � faire. On les utilise pour l'authentification des serveurs distants. Un tel fichier contient la simple concat�nation des diff�rents fichiers de CRLs cod�s en PEM, class�s par ordre de pr�f�rence. Cette directive peut �tre utilis�e � la place et/ou en compl�ment de la directive SSLProxyCARevocationPath.

Exemple

SSLProxyCARevocationFile
/usr/local/apache2/conf/ssl.crl/ca-bundle-serveur.distant.crl
top

SSLProxyCARevocationPath Directive

Description:R�pertoire des CRLs de CA cod�s en PEM pour l'authentification des serveurs distants
Syntaxe:SSLProxyCARevocationPath chemin-r�pertoire
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le r�pertoire o� sont stock�es les Listes de R�vocation de Certificats (CRL) des Autorit�s de Certification (CAs) pour les serveurs distants auxquels vous avez � faire. On les utilise pour r�voquer les certificats des serveurs distants au cours de l'authentification de ces derniers.

Les fichiers de ce r�pertoire doivent �tre cod�s en PEM et ils sont acc�d�s via des noms de fichier sous forme de condens�s ou hash. Il ne suffit donc pas de placer les fichiers de CRL dans ce r�pertoire : vous devez aussi cr�er des liens symboliques nomm�s valeur-de-hashage.rN, et vous devez toujours vous assurer que ce r�pertoire contient les liens symboliques appropri�s.

Exemple

SSLProxyCARevocationPath /usr/local/apache2/conf/ssl.crl/
top

SSLProxyCheckPeerCN Directive

Description:Configuration de la v�rification du champ CN du certificat du serveur distant
Syntaxe:SSLProxyCheckPeerCN on|off
D�faut:SSLProxyCheckPeerCN on
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir si le champ CN du certificat du serveur distant doit �tre compar� au nom de serveur de l'URL de la requ�te. S'ils ne correspondent pas, un code d'�tat 502 (Bad Gateway) est envoy�.

A partir de la version 2.4.5, SSLProxyCheckPeerCN a �t� remplac� par SSLProxyCheckPeerName, et sa d�finition n'est prise en compte que si SSLProxyCheckPeerName off a �t� sp�cifi�.

Exemple

SSLProxyCheckPeerCN on
top

SSLProxyCheckPeerExpire Directive

Description:Configuration de la v�rification de l'expiration du certificat du serveur distant
Syntaxe:SSLProxyCheckPeerExpire on|off
D�faut:SSLProxyCheckPeerExpire on
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir si l'expiration du certificat du serveur distant doit �tre v�rifi�e ou non. Si la v�rification �choue, un code d'�tat 502 (Bad Gateway) est envoy�.

Exemple

SSLProxyCheckPeerExpire on
top

SSLProxyCheckPeerName Directive

Description:Configure la v�rification du nom d'h�te dans les certificats serveur distants
Syntaxe:SSLProxyCheckPeerName on|off
D�faut:SSLProxyCheckPeerName on
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible � partir de la version 2.4.5 du serveur HTTP Apache

Cette directive permet de configurer la v�rification du nom d'h�te dans les certificats de serveur lorsque mod_ssl agit en tant que client SSL. La v�rification est concluante si le nom d'h�te de l'URI de la requ�te correspond soit � l'extension subjectAltName, soit � l'un des attributs CN dans le sujet du certificat. Si la v�rification �choue, la requ�te SSL est annul�e et un code d'erreur 502 (Bad Gateway) est renvoy�. Cette directive remplace la directive SSLProxyCheckPeerCN qui ne prenait en compte que le premier attribut CN pour la v�rification du nom d'h�te.

La v�rification du nom d'h�te avec caract�res g�n�rique est support�e de la mani�re suivante : les entr�es subjectAltName de type dNSName ou les attributs CN commen�ant par *. correspondront � tout nom DNS comportant le m�me nombre d'�l�ments et le m�me suffixe (par exemple, *.example.org correspondra � foo.example.org, mais pas � foo.bar.example.org).

top

SSLProxyCipherSuite Directive

Description:Algorithmes de chiffrement disponibles pour la n�gociation lors de l'initialisation d'une connexion SSL de mandataire
Syntaxe:SSLProxyCipherSuite algorithmes
D�faut:SSLProxyCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+EXP
Contexte:configuration du serveur, serveur virtuel, r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_ssl

Cette directive est �quivalente � la directive SSLCipherSuite, mais s'applique � une connexion de mandataire. Veuillez vous reporter � la directive SSLCipherSuite pour plus d'informations.

top

SSLProxyEngine Directive

Description:Interrupteur marche/arr�t du moteur de mandataire SSL
Syntaxe:SSLProxyEngine on|off
D�faut:SSLProxyEngine off
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Cette directive permet d'activer/d�sactiver l'utilisation du moteur de protocole SSL/TLS pour le mandataire. On l'utilise en g�n�ral � l'int�rieur d'une section <VirtualHost> pour activer le protocole SSL/TLS dans le cadre d'un mandataire pour un serveur virtuel particulier. Par d�faut, le moteur de protocole SSL/TLS est d�sactiv� pour la fonction de mandataire du serveur principal et de tous les serveurs virtuels configur�s.

Notez que la directive SSLProxyEngine ne doit g�n�ralement pas �tre utilis�e dans le cadre d'un serveur virtuel qui agit en tant que mandataire direct (via les directives <Proxy> ou <ProxyRequest>). SSLProxyEngine n'est pas n�cessaire pour activer un serveur mandataire direct pour les requ�tes SSL/TLS.

Exemple

<VirtualHost _default_:443>
    SSLProxyEngine on
    #...
</VirtualHost>
top

SSLProxyMachineCertificateChainFile Directive

Description:Fichier de certificats de CA encod�s PEM concat�n�s permettant au mandataire de choisir un certificat
Syntaxe:SSLProxyMachineCertificateChainFile nom-fichier
Contexte:configuration du serveur
AllowOverride:Sans objet
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le fichier global o� est enregistr�e la cha�ne de certification pour tous les certificats clients utilis�s. Elle est n�cessaire si le serveur distant pr�sente une liste de certificats de CA qui ne sont pas les signataires directs d'un des certificats clients configur�s.

Ce fichier contient tout simplement la concat�nation des diff�rents fichiers de certificats encod�s PEM. Au d�marrage, chaque certificat client configur� est examin� et une cha�ne de certification est construite.

Avertissement en mati�re de s�curit�

Si cette directive est d�finie, tous les certificats contenus dans le fichier sp�cifi� seront consid�r�s comme �tant de confiance, comme s'ils �taient aussi d�sign�s dans la directive SSLProxyCACertificateFile.

Exemple

SSLProxyMachineCertificateChainFile /usr/local/apache2/conf/ssl.crt/proxyCA.pem
top

SSLProxyMachineCertificateFile Directive

Description:Fichier contenant la concat�nation des cl�s et certificats clients cod�s en PEM que le mandataire doit utiliser
Syntaxe:SSLProxyMachineCertificateFile chemin-fichier
Contexte:configuration du serveur
AllowOverride:Sans objet
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le fichier tout-en-un o� sont stock�s les cl�s et certificats permettant au serveur mandataire de s'authentifier aupr�s des serveurs distants.

Le fichier sp�cifi� est la simple concat�nation des diff�rents fichiers de certificats cod�s en PEM, class�s par ordre de pr�f�rence. Cette directive s'utilise � la place ou en compl�ment de la directive SSLProxyMachineCertificatePath.

Actuellement, les cl�s priv�es chiffr�es ne sont pas support�es.

Exemple

SSLProxyMachineCertificateFile /usr/local/apache2/conf/ssl.crt/proxy.pem
top

SSLProxyMachineCertificatePath Directive

Description:R�pertoire des cl�s et certificats clients cod�s en PEM que le mandataire doit utiliser
Syntaxe:SSLProxyMachineCertificatePath chemin-r�pertoire
Contexte:configuration du serveur
AllowOverride:Sans objet
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le r�pertoire o� sont stock�s les cl�s et certificats permettant au serveur mandataire de s'authentifier aupr�s des serveurs distants.

Les fichiers de ce r�pertoire doivent �tre cod�s en PEM et ils sont acc�d�s via des noms de fichier sous forme de condens�s ou hash. Vous devez donc aussi cr�er des liens symboliques nomm�s valeur-de-hashage.N, et vous devez toujours vous assurer que ce r�pertoire contient les liens symboliques appropri�s.

Actuellement, les cl�s priv�es chiffr�es ne sont pas support�es.

Exemple

SSLProxyMachineCertificatePath /usr/local/apache2/conf/proxy.crt/
top

SSLProxyProtocol Directive

Description:D�finit les protocoles SSL disponibles pour la fonction de mandataire
Syntaxe:SSLProxyProtocol [+|-]protocole ...
D�faut:SSLProxyProtocol all
Contexte:configuration du serveur, serveur virtuel
AllowOverride:Options
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir les protocoles SSL que mod_ssl peut utiliser lors de l'�laboration de son environnement de serveur pour la fonction de mandataire. Il ne se connectera qu'aux serveurs utilisant un des protocoles sp�cifi�s.

Veuillez vous reporter � la directive SSLProtocol pour plus d'informations.

top

SSLProxyVerify Directive

Description:Niveau de v�rification du certificat du serveur distant
Syntaxe:SSLProxyVerify niveau
D�faut:SSLProxyVerify none
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl

Lorsqu'un mandataire est configur� pour faire suivre les requ�tes vers un serveur SSL distant, cette directive permet de configurer la v�rification du certificat de ce serveur distant.

Les valeurs de niveaux disponibles sont les suivantes :

En pratique, seuls les niveaux none et require sont vraiment int�ressants, car le niveau optional ne fonctionne pas avec tous les serveurs, et le niveau optional_no_ca va tout � fait � l'encontre de l'id�e que l'on peut se faire de l'authentification (mais peut tout de m�me �tre utilis� pour �tablir des pages de test SSL, etc...).

Exemple

SSLProxyVerify require
top

SSLProxyVerifyDepth Directive

Description:Niveau de profondeur maximum dans les certificats de CA lors de la v�rification du certificat du serveur distant
Syntaxe:SSLProxyVerifyDepth niveau
D�faut:SSLProxyVerifyDepth 1
Contexte:configuration du serveur, serveur virtuel
AllowOverride:AuthConfig
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le niveau de profondeur maximum jusqu'auquel mod_ssl doit aller au cours de sa v�rification avant de d�cider que le serveur distant ne poss�de pas de certificat valide.

La profondeur correspond en fait au nombre maximum de fournisseurs de certificats interm�diaires, c'est � dire le nombre maximum de certificats de CA que l'on peut consulter lors de la v�rification du certificat du serveur distant. Une profondeur de 0 signifie que seuls les certificats de serveurs distants auto-sign�s sont accept�s, et la profondeur par d�faut de 1 que le certificat du serveur distant peut �tre soit auto-sign�, soit sign� par une CA connue directement du serveur (en d'autres termes, le certificat de CA est r�f�renc� par la directive SSLProxyCACertificatePath), etc...

Exemple

SSLProxyVerifyDepth 10
top

SSLRandomSeed Directive

Description:Source de d�clenchement du G�n�rateur de Nombres Pseudo-Al�atoires (PRNG)
Syntaxe:SSLRandomSeed contexte source [nombre]
Contexte:configuration du serveur
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir une ou plusieurs sources de d�clenchement du G�n�rateur de Nombres Pseudo-Al�atoires (PRNG) dans OpenSSL au d�marrage du serveur (si contexte a pour valeur startup) et/ou juste avant l'�tablissement d'une nouvelle connexion SSL (si contexte a pour valeur connect). Cette directive ne peut �tre utilis�e qu'au niveau du serveur global car le PRNG est un service global.

Les diff�rentes valeurs de source disponibles sont :

Exemple

SSLRandomSeed startup builtin
SSLRandomSeed startup file:/dev/random
SSLRandomSeed startup file:/dev/urandom 1024
SSLRandomSeed startup exec:/usr/local/bin/truerand 16
SSLRandomSeed connect builtin
SSLRandomSeed connect file:/dev/random
SSLRandomSeed connect file:/dev/urandom 1024
top

SSLRenegBufferSize Directive

Description:D�finit la taille du tampon de ren�gociation SSL
Syntaxe:SSLRenegBufferSize taille
D�faut:SSLRenegBufferSize 131072
Contexte:r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_ssl

Si une ren�gociation SSL est requise dans un contexte de r�pertoire, par exemple avec l'utilisation de SSLVerifyClient dans un bloc Directory ou Location, mod_ssl doit mettre en tampon en m�moire tout corps de requ�te HTTP en attendant qu'une nouvelle initialisation de connexion SSL puisse �tre effectu�e. Cette directive permet de d�finir la quantit� de m�moire � allouer pour ce tampon.

Notez que dans de nombreuses configurations, le client qui envoie un corps de requ�te n'est pas forc�ment digne de confiance, et l'on doit par cons�quent prendre en consid�ration la possibilit� d'une attaque de type d�ni de service lorsqu'on modifie la valeur de cette directive.

Exemple

SSLRenegBufferSize 262144
top

SSLRequire Directive

Description:N'autorise l'acc�s que lorsqu'une expression bool�enne complexe et arbitraire est vraie
Syntaxe:SSLRequire expression
Contexte:r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_ssl

SSLRequire est obsol�te

SSLRequire est obsol�te et doit en g�n�ral �tre remplac�e par l'expression Require. La syntaxe ap_expr de l'expression Require est une extension de la syntaxe de SSLRequire, avec les diff�rences suivantes :

Avec SSLRequire, les op�rateurs de comparaison <, <=, ... sont strictement �quivalents aux op�rateurs lt, le, ... , et fonctionnent selon une m�thode qui compare tout d'abord la longueur des deux cha�nes, puis l'ordre alphab�tique. Les expressions ap_expr, quant � elles, poss�dent deux jeux d'op�rateurs de comparaison : les op�rateurs <, <=, ... effectuent une comparaison alphab�tique de cha�nes, alors que les op�rateurs -lt, -le, ... effectuent une comparaison d'entiers. Ces derniers poss�dent aussi des alias sans tiret initial : lt, le, ...

Cette directive permet de sp�cifier une condition g�n�rale d'acc�s qui doit �tre enti�rement satisfaite pour que l'acc�s soit autoris�. C'est une directive tr�s puissante, car la condition d'acc�s sp�cifi�e est une expression bool�enne complexe et arbitraire contenant un nombre quelconque de v�rifications quant aux autorisations d'acc�s.

L'expression doit respecter la syntaxe suivante (fournie ici sous la forme d'une notation dans le style de la grammaire BNF) :

expr     ::= "true" | "false"
           | "!" expr
           | expr "&&" expr
           | expr "||" expr
           | "(" expr ")"
           | comp

comp     ::= word "==" word | word "eq" word
           | word "!=" word | word "ne" word
           | word "<"  word | word "lt" word
           | word "<=" word | word "le" word
           | word ">"  word | word "gt" word
           | word ">=" word | word "ge" word
           | word "in" "{" wordlist "}"
           | word "in" "PeerExtList(" word ")"
           | word "=~" regex
           | word "!~" regex

wordlist ::= word
           | wordlist "," word

word     ::= digit
           | cstring
           | variable
           | function

digit    ::= [0-9]+
cstring  ::= "..."
variable ::= "%{" varname "}"
function ::= funcname "(" funcargs ")"

Pour varname, toute variable d�crite dans Variables d'environnement pourra �tre utilis�e. Pour funcname, vous trouverez la liste des fonctions disponibles dans la documentation ap_expr.

expression est interpr�t�e et traduite sous une forme machine interne lors du chargement de la configuration, puis �valu�e lors du traitement de la requ�te. Dans le contexte des fichiers .htaccess, expression est interpr�t�e et ex�cut�e chaque fois que le fichier .htaccess intervient lors du traitement de la requ�te.

Exemple

SSLRequire (    %{SSL_CIPHER} !~ m/^(EXP|NULL)-/                   \
            and %{SSL_CLIENT_S_DN_O} eq "Snake Oil, Ltd."          \
            and %{SSL_CLIENT_S_DN_OU} in {"Staff", "CA", "Dev"}    \
            and %{TIME_WDAY} -ge 1 and %{TIME_WDAY} -le 5          \
            and %{TIME_HOUR} -ge 8 and %{TIME_HOUR} -le 20       ) \
           or %{REMOTE_ADDR} =~ m/^192\.76\.162\.[0-9]+$/

La fonction PeerExtList(identifiant objet) recherche une instance d'extension de certificat X.509 identifi�e par identifiant objet (OID) dans le certificat client. L'expression est �valu�e � true si la partie gauche de la cha�ne correspond exactement � la valeur d'une extension identifi�e par cet OID (Si plusieurs extensions poss�dent le m�me OID, l'une d'entre elles au moins doit correspondre).

Exemple

SSLRequire "foobar" in PeerExtList("1.2.3.4.5.6")

Notes � propos de la fonction PeerExtList

  • L'identifiant objet peut �tre sp�cifi� soit comme un nom descriptif reconnu par la biblioth�que SSL, tel que "nsComment", soit comme un OID num�rique tel que "1.2.3.4.5.6".

  • Les expressions contenant des types connus de la biblioth�que SSL sont transform�es en cha�nes avant comparaison. Pour les extensions contenant un type non connu de la biblioth�que SSL, mod_ssl va essayer d'interpr�ter la valeur s'il s'agit d'un des types ASN.1 primaires UTF8String, IA5String, VisibleString, ou BMPString. Si l'extension correspond � un de ces types, la cha�ne sera convertie en UTF-8 si n�cessaire, puis compar�e avec la partie gauche de l'expression.

Voir aussi

top

SSLRequireSSL Directive

Description:Interdit l'acc�s lorsque la requ�te HTTP n'utilise pas SSL
Syntaxe:SSLRequireSSL
Contexte:r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_ssl

Cette directive interdit l'acc�s si HTTP sur SSL (c'est � dire HTTPS) n'est pas activ� pour la connexion courante. Ceci est tr�s pratique dans un serveur virtuel o� SSL est activ� ou dans un r�pertoire pour se prot�ger des erreurs de configuration qui pourraient donner acc�s � des ressources prot�g�es. Lorsque cette directive est pr�sente, toutes les requ�tes qui n'utilisent pas SSL sont rejet�es.

Exemple

SSLRequireSSL
top

SSLSessionCache Directive

Description:Type du cache de session SSL global et inter-processus
Syntaxe:SSLSessionCache type
D�faut:SSLSessionCache none
Contexte:configuration du serveur
Statut:Extension
Module:mod_ssl

Cette directive permet de configurer le type de stockage du cache de session SSL global et inter-processus. Ce cache est une fonctionnalit� optionnelle qui acc�l�re le traitement parall�le des requ�tes. Pour ce qui est des requ�tes vers un m�me processus du serveur (via HTTP keep-alive), OpenSSL met en cache les informations de session SSL en interne. Mais comme les clients modernes demandent des images en ligne et d'autres donn�es via des requ�tes parall�les (un nombre de quatre requ�tes parall�les est courant), ces requ�tes vont �tre servies par plusieurs processus du serveur pr�-d�clench�s. Ici, un cache inter-processus permet d'�viter des n�gociations de session inutiles.

Les quatre types de stockage suivants sont actuellement support�s :

Exemples

SSLSessionCache dbm:/usr/local/apache/logs/ssl_gcache_data
SSLSessionCache shmcb:/usr/local/apache/logs/ssl_gcache_data(512000)

Le mutex ssl-cache permet de s�rialiser l'acc�s au cache de session afin d'�viter toute corruption. Ce mutex peut �tre configur� via la directive Mutex.

top

SSLSessionCacheTimeout Directive

Description:Nombre de secondes avant l'expiration d'une session SSL dans le cache de sessions
Syntaxe:SSLSessionCacheTimeout secondes
D�faut:SSLSessionCacheTimeout 300
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:S'applique aussi � la reprise de session TLS (RFC 5077) � partir de la version 2.4.10 du serveur HTTP Apache

Cette directive permet de d�finir la dur�e de vie en secondes des informations stock�es dans le cache de sessions SSL global et inter-processus, dans le cache OpenSSL interne en m�moire et pour les sessions r�initialis�es par la reprise de session TLS (RFC 5077). elle peut �tre d�finie � une valeur d'environ 15 � des fins de test, mais � une valeur tr�s sup�rieure comme 300 en production.

Exemple

SSLSessionCacheTimeout 600
top

SSLSessionTicketKeyFile Directive

Description:Cl� de chiffrement/d�chiffrement permanente pour les tickets de session TLS
Syntaxe:SSLSessionTicketKeyFile chemin-fichier
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible depuis la version 2.4.0 du serveur HTTP Apache, sous r�serve que l'on utilise une version 0.9.8h ou sup�rieure d'OpenSSL

Cette directive permet de d�finir une cl� secr�te pour le chiffrement et le d�chiffrement des tickets de session TLS selon les pr�conisations de la RFC 5077. Elle a �t� con�ue � l'origine pour les environnements de clusters o� les donn�es des sessions TLS doivent �tre partag�es entre plusieurs noeuds. Pour les configurations ne comportant qu'une seule instance de httpd, il est pr�f�rable d'utiliser les cl�s (al�atoires) g�n�r�es par mod_ssl au d�marrage du serveur.

Le fichier doit contenir 48 octets de donn�es al�atoires cr��es de pr�f�rence par une source � haute entropie. Sur un syst�me de type UNIX, il est possible de cr�er le fichier contenant la cl� de la mani�re suivante :

dd if=/dev/random of=/chemin/vers/fichier.tkey bs=1 count=48

Ces cl�s doivent �tre renouvel�es fr�quemment, car il s'agit du seul moyen d'invalider un ticket de session existant - OpenSSL ne permet pas actuellement de sp�cifier une limite � la dur�e de vie des tickets.

Ce fichier contient des donn�es sensibles et doit donc �tre prot�g� par des permissions similaires � celles du fichier sp�cifi� par la directive SSLCertificateKeyFile.

top

SSLSRPUnknownUserSeed Directive

Description:Source d'al�a pour utilisateur SRP inconnu
Syntaxe:SSLSRPUnknownUserSeed secret-string
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible depuis la version 2.4.4 du serveur HTTP Apache, si la version 1.0.1 ou sup�rieure d'OpenSSL est utilis�e.

Cette directive permet de d�finir la source d'al�a � utiliser pour les utilisateurs SRP inconnus, ceci afin de combler les manques en cas d'existence d'un tel utilisateur. Elle d�finit une cha�ne secr�te. Si cette directive n'est pas d�finie, Apache renverra une alerte UNKNOWN_PSK_IDENTITY aux clients qui fournissent un nom d'utilisateur inconnu.

Exemple

SSLSRPUnknownUserSeed "secret"

top

SSLSRPVerifierFile Directive

Description:Chemin du fichier de v�rification SRP
Syntaxe:SSLSRPVerifierFile file-path
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible depuis la version 2.4.4 du serveur HTTP Apache, si la version 1.0.1 ou sup�rieure d'OpenSSL est utilis�e.

Cette directive permet d'activer TLS-SRP et de d�finir le chemin du fichier de v�rification OpenSSL SRP (Mot de passe distant s�curis�) contenant les noms d'utilisateurs TLS-SRP, les v�rificateurs, les "grains de sel" (salts), ainsi que les param�tres de groupe.

Exemple

SSLSRPVerifierFile "/path/to/file.srpv"

Le fichier de v�rification peut �tre cr�� via l'utilitaire en ligne de commande openssl :

Cr�ation du fichier de v�rification SRP

openssl srp -srpvfile passwd.srpv -userinfo "some info" -add username

La valeur affect�e au param�tre optionnel -userinfo est enregistr�e dans la variable d'environnement SSL_SRP_USERINFO.

top

SSLStaplingCache Directive

Description:Configuration du cache pour l'agrafage OCSP
Syntaxe:SSLStaplingCache type
Contexte:configuration du serveur
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible si on utilise OpenSSL version 0.9.8h ou sup�rieure

Si SSLUseStapling est � "on", cette directive permet de configurer le cache destin� � stocker les r�ponses OCSP incluses dans la n�gociation TLS. La configuration d'un cache est obligatoire pour pouvoir utiliser l'agrafage OCSP. A l'exception de none et nonenotnull, cette directive supporte les m�mes types de stockage que la directive SSLSessionCache.

Le mutex ssl-stapling permet de s�rialiser l'acc�s au cache d'agrafage OCSP afin d'en pr�venir la corruption. Ce mutex peut �tre configur� via la directive Mutex.

top

SSLStaplingErrorCacheTimeout Directive

Description:Dur�e de vie des r�ponses invalides dans le cache pour agrafage OCSP
Syntaxe:SSLStaplingErrorCacheTimeout secondes
D�faut:SSLStaplingErrorCacheTimeout 600
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible si on utilise OpenSSL version 0.9.8h ou sup�rieure

Cette directive permet de d�finir la dur�e de vie des r�ponses invalides dans le cache pour agrafage OCSP configur� via la directive SSLStaplingCache. Pour d�finir la dur�e de vie des r�ponses valides, voir la directive SSLStaplingStandardCacheTimeout.

top

SSLStaplingFakeTryLater Directive

Description:G�n�re une r�ponse "tryLater" pour les requ�tes OCSP �chou�es
Syntaxe:SSLStaplingFakeTryLater on|off
D�faut:SSLStaplingFakeTryLater on
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible si on utilise OpenSSL version 0.9.8h ou sup�rieure

Lorsque cette directive est activ�e, et si une requ�te vers un serveur OCSP � des fins d'inclusion dans une n�gociation TLS �choue, mod_ssl va g�n�rer une r�ponse "tryLater" pour le client (SSLStaplingReturnResponderErrors doit �tre activ�e).

top

SSLStaplingForceURL Directive

Description:Remplace l'URI du serveur OCSP sp�cifi� dans l'extension AIA du certificat
Syntaxe:SSLStaplingForceURL uri
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible si on utilise OpenSSL version 0.9.8h ou sup�rieure

Cette directive permet de remplacer l'URI du serveur OCSP extraite de l'extension authorityInfoAccess (AIA) du certificat. Elle peut s'av�rer utile lorsqu'on passe par un mandataire

top

SSLStaplingResponderTimeout Directive

Description:Temps d'attente maximum pour les requ�tes vers les serveurs OCSP
Syntaxe:SSLStaplingResponderTimeout secondes
D�faut:SSLStaplingResponderTimeout 10
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible si on utilise OpenSSL version 0.9.8h ou sup�rieure

Cette directive permet de d�finir le temps d'attente maximum lorsque mod_ssl envoie une requ�te vers un serveur OCSP afin d'obtenir une r�ponse destin�e � �tre incluse dans les n�gociations TLS avec les clients (SSLUseStapling doit avoir �t� activ�e au pr�alable).

top

SSLStaplingResponseMaxAge Directive

Description:Age maximum autoris� des r�ponses OCSP incluses dans la n�gociation TLS
Syntaxe:SSLStaplingResponseMaxAge secondes
D�faut:SSLStaplingResponseMaxAge -1
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible si on utilise OpenSSL version 0.9.8h ou sup�rieure

Cette directive permet de d�finir l'�ge maximum autoris� ("fra�cheur") des r�ponses OCSP incluses dans la n�gociation TLS (SSLUseStapling doit avoir �t� activ�e au pr�alable). La valeur par d�faut (-1) ne d�finit aucun �ge maximum, ce qui signifie que les r�ponses OCSP sont consid�r�es comme valides � partir du moment o� le contenu de leur champ nextUpdate se trouve dans le futur.

top

SSLStaplingResponseTimeSkew Directive

Description:Dur�e de vie maximale autoris�e des r�ponses OCSP incluses dans la n�gociation TLS
Syntaxe:SSLStaplingResponseTimeSkew secondes
D�faut:SSLStaplingResponseTimeSkew 300
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible si on utilise OpenSSL version 0.9.8h ou sup�rieure

Cette directive permet de sp�cifier l'intervalle de temps maximum que mod_ssl va calculer en faisant la diff�rence entre les contenus des champs nextUpdate et thisUpdate des r�ponses OCSP incluses dans la n�gociation TLS. Pour pouvoir utiliser cette directive, SSLUseStapling doit �tre � "on".

top

SSLStaplingReturnResponderErrors Directive

Description:Transmet au client les erreurs survenues lors des requ�tes OCSP
Syntaxe:SSLStaplingReturnResponderErrors on|off
D�faut:SSLStaplingReturnResponderErrors on
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible si on utilise OpenSSL version 0.9.8h ou sup�rieure

Lorsque cette directive est activ�e, mod_ssl va transmettre au client les r�ponses concernant les requ�tes OCSP �chou�es (erreurs d'�tat, r�ponses p�rim�es, etc...). Lorsqu'elle est � off, aucune r�ponse concernant les requ�tes OCSP �chou�es ne sera incluse dans les n�gociation TLS avec les clients.

top

SSLStaplingStandardCacheTimeout Directive

Description:Dur�e de vie des r�ponses OCSP dans le cache
Syntaxe:SSLStaplingStandardCacheTimeout secondes
D�faut:SSLStaplingStandardCacheTimeout 3600
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible si on utilise OpenSSL version 0.9.8h ou sup�rieure

Cette directive permet de d�finir la dur�e de vie des r�ponses OCSP dans le cache configur� via la directive SSLStaplingCache. Elle ne s'applique qu'aux r�ponse valides, alors que la directive SSLStaplingErrorCacheTimeout s'applique aux r�ponses invalides ou non disponibles.

top

SSLStrictSNIVHostCheck Directive

Description:Contr�le de l'acc�s des clients non-SNI � un serveur virtuel � base de nom.
Syntaxe:SSLStrictSNIVHostCheck on|off
D�faut:SSLStrictSNIVHostCheck off
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible depuis la version 2.2.12 d'Apache

Cette directive permet de contr�ler l'acc�s des clients non-SNI � un serveur virtuel � base de nom. Si elle est d�finie � on dans le serveur virtuel � base de nom par d�faut, les clients non-SNI ne seront autoris�s � acc�der � aucun serveur virtuel appartenant � cette combinaison IP/port. Par contre, si elle est d�finie � on dans un serveur virtuel quelconque, les clients non-SNI ne se verront interdire l'acc�s qu'� ce serveur.

Cette option n'est disponible que si httpd a �t� compil� avec une version d'OpenSSL supportant SNI.

Exemple

SSLStrictSNIVHostCheck on
top

SSLUserName Directive

Description:Nom de la variable servant � d�terminer le nom de l'utilisateur
Syntaxe:SSLUserName nom-var
Contexte:configuration du serveur, r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_ssl

Cette variable permet de d�finir le champ "user" de l'objet de la requ�te Apache. Ce champ est utilis� par des modules de plus bas niveau pour identifier l'utilisateur avec une cha�ne de caract�res. En particulier, l'utilisation de cette directive peut provoquer la d�finition de la variable d'environnement REMOTE_USER. La valeur de l'argument nom-var peut correspondre � toute variable d'environnement SSL.

Notez que cette directive est sans effet si l'option FakeBasicAuth est utilis�e (voir SSLOptions).

Exemple

SSLUserName SSL_CLIENT_S_DN_CN
top

SSLUseStapling Directive

Description:Active l'ajout des r�ponses OCSP � la n�gociation TLS
Syntaxe:SSLUseStapling on|off
D�faut:SSLUseStapling off
Contexte:configuration du serveur, serveur virtuel
Statut:Extension
Module:mod_ssl
Compatibilit�:Disponible si on utilise OpenSSL version 0.9.8h ou sup�rieure

Cette directive permet d'activer l'"Agrafage OCSP" (OCSP stapling) selon la d�finition de l'extension TLS "Certificate Status Request" fournie dans la RFC 6066. Si elle est activ�e et si le client le demande, mod_ssl va inclure une r�ponse OCSP � propos de son propre certificat dans la n�gociation TLS. Pour pouvoir activer l'Agrafage OCSP, il est n�cessaire de configurer un SSLStaplingCache.

L'agrafage OCSP dispense le client de requ�rir le serveur OCSP directement ; il faut cependant noter que selon les sp�cifications de la RFC 6066, la r�ponse CertificateStatus du serveur ne peut inclure une r�ponse OCSP que pour un seul certificat. Pour les certificats de serveur comportant des certificats de CA interm�diaires dans leur cha�ne (c'est un cas typique de nos jours), l'impl�mentation actuelle de l'agrafage OCSP n'atteint que partiellement l'objectif d' "�conomie en questions/r�ponse et en ressources". Pour plus de d�tails, voir la RFC 6961 (TLS Multiple Certificate Status Extension).

top

SSLVerifyClient Directive

Description:Niveau de v�rification du certificat client
Syntaxe:SSLVerifyClient niveau
D�faut:SSLVerifyClient none
Contexte:configuration du serveur, serveur virtuel, r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_ssl

Cette directive permet de d�finir le niveau de v�rification du certificat pour l'authentification du client. Notez que cette directive peut �tre utilis�e � la fois dans les contextes du serveur principal et du r�pertoire. Dans le contexte du serveur principal, elle s'applique au processus d'authentification du client utilis� au cours de la n�gociation SSL standard lors de l'�tablissement d'une connexion. Dans un contexte de r�pertoire, elle force une ren�gociation SSL avec le niveau de v�rification du client sp�cifi�, apr�s la lecture d'une requ�te HTTP, mais avant l'envoi de la r�ponse HTTP.

Les valeurs de niveau disponibles sont les suivantes :

En pratique, seuls les niveaux none et require sont vraiment int�ressants, car le niveau optional ne fonctionne pas avec tous les navigateurs, et le niveau optional_no_ca va vraiment � l'encontre de l'id�e que l'on peut se faire de l'authentification (mais peut tout de m�me �tre utilis� pour �tablir des pages de test SSL, etc...)

Exemple

SSLVerifyClient require
top

SSLVerifyDepth Directive

Description:Profondeur maximale des certificats de CA pour la v�rification des certificats clients
Syntaxe:SSLVerifyDepth nombre
D�faut:SSLVerifyDepth 1
Contexte:configuration du serveur, serveur virtuel, r�pertoire, .htaccess
AllowOverride:AuthConfig
Statut:Extension
Module:mod_ssl

Cette directive permet de sp�cifier la profondeur maximale � laquelle mod_ssl va effectuer sa v�rification avant de d�cider que le client ne poss�de pas de certificat valide. Notez que cette directive peut �tre utilis�e � la fois dans les contextes du serveur principal et de r�pertoire. Dans le contexte du serveur principal, elle s'applique au processus d'authentification du client utilis� au cours de la n�gociation SSL standard lors de l'�tablissement d'une connexion. Dans un contexte de r�pertoire, elle force une ren�gociation SSL avec le client selon la nouvelle profondeur sp�cifi�e, apr�s la lecture d'une requ�te HTTP, mais avant l'envoi de la r�ponse HTTP.

La profondeur correspond au nombre maximum de fournisseurs de certificats interm�diaires, c'est � dire le nombre maximum de certificats de CA que l'on est autoris� � suivre lors de la v�rification du certificat du client. Une profondeur de 0 signifie que seuls les certificats clients auto-sign�s sont accept�s ; la profondeur par d�faut de 1 signifie que le certificat client peut �tre soit auto-sign�, soit sign� par une CA connue directement du serveur (c'est � dire que le certificat de la CA doit �tre r�f�renc� par la directive SSLCACertificatePath), etc...

Exemple

SSLVerifyDepth 10

Langues Disponibles:  en  |  fr 

top

Commentaires

Notice:
This is not a Q&A section. Comments placed here should be pointed towards suggestions on improving the documentation or server, and may be removed again by our moderators if they are either implemented or considered invalid/off-topic. Questions on how to manage the Apache HTTP Server should be directed at either our IRC channel, #httpd, on Freenode, or sent to our mailing lists.