mirror of
https://github.com/apache/httpd.git
synced 2025-10-28 20:34:59 +03:00
git-svn-id: https://svn.apache.org/repos/asf/httpd/httpd/trunk@1827095 13f79535-47bb-0310-9956-ffa450edef68
3305 lines
207 KiB
Forth
3305 lines
207 KiB
Forth
<?xml version="1.0" encoding="ISO-8859-1"?>
|
||
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
|
||
<html xmlns="http://www.w3.org/1999/xhtml" lang="fr" xml:lang="fr"><head>
|
||
<meta content="text/html; charset=ISO-8859-1" http-equiv="Content-Type" />
|
||
<!--
|
||
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
||
This file is generated from xml source: DO NOT EDIT
|
||
XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX
|
||
-->
|
||
<title>mod_ssl - Serveur Apache HTTP Version 2.5</title>
|
||
<link href="../style/css/manual.css" rel="stylesheet" media="all" type="text/css" title="Main stylesheet" />
|
||
<link href="../style/css/manual-loose-100pc.css" rel="alternate stylesheet" media="all" type="text/css" title="No Sidebar - Default font size" />
|
||
<link href="../style/css/manual-print.css" rel="stylesheet" media="print" type="text/css" /><link rel="stylesheet" type="text/css" href="../style/css/prettify.css" />
|
||
<script src="../style/scripts/prettify.min.js" type="text/javascript">
|
||
</script>
|
||
|
||
<link href="../images/favicon.ico" rel="shortcut icon" /></head>
|
||
<body>
|
||
<div id="page-header">
|
||
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p>
|
||
<p class="apache">Serveur Apache HTTP Version 2.5</p>
|
||
<img alt="" src="../images/feather.png" /></div>
|
||
<div class="up"><a href="./"><img title="<-" alt="<-" src="../images/left.gif" /></a></div>
|
||
<div id="path">
|
||
<a href="http://www.apache.org/">Apache</a> > <a href="http://httpd.apache.org/">Serveur HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentation</a> > <a href="../">Version 2.5</a> > <a href="./">Modules</a></div>
|
||
<div id="page-content">
|
||
<div id="preamble"><h1>Module Apache mod_ssl</h1>
|
||
<div class="toplang">
|
||
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_ssl.html" hreflang="en" rel="alternate" title="English"> en </a> |
|
||
<a href="../es/mod/mod_ssl.html" hreflang="es" rel="alternate" title="Espa<70>ol"> es </a> |
|
||
<a href="../fr/mod/mod_ssl.html" title="Fran<61>ais"> fr </a></p>
|
||
</div>
|
||
<table class="module"><tr><th><a href="module-dict.html#Description">Description:</a></th><td>Chiffrement de haut niveau bas<EFBFBD> sur les protocoles Secure
|
||
Sockets Layer (SSL) et Transport Layer Security (TLS)</td></tr>
|
||
<tr><th><a href="module-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="module-dict.html#ModuleIdentifier">Identificateur<75>de<64>Module:</a></th><td>ssl_module</td></tr>
|
||
<tr><th><a href="module-dict.html#SourceFile">Fichier<65>Source:</a></th><td>mod_ssl.c</td></tr></table>
|
||
<h3>Sommaire</h3>
|
||
|
||
<p>Ce module fournit le support SSL v3 et TLS v1.x au serveur HTTP
|
||
Apache. SSL v2 n'est plus support<EFBFBD>.</p>
|
||
|
||
<p>Ce module s'appuie sur <a href="http://www.openssl.org/">OpenSSL</a>
|
||
pour fournir le moteur de chiffrement.</p>
|
||
|
||
<p>D'autres d<EFBFBD>tails, discussions et exemples sont fournis dans la <a href="../ssl/">documentation SSL</a>.</p>
|
||
</div>
|
||
<div id="quickview"><h3>Sujets</h3>
|
||
<ul id="topics">
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#envvars">Variables d'environnement</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#logformats">Formats de journaux
|
||
personnalis<EFBFBD>s</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#notes">Information <EFBFBD> propos de la requ<EFBFBD>te</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#expressionparser">Extension pour l'interpr<70>tation
|
||
des expressions</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#authzproviders">Fournisseurs d'autorisation
|
||
disponibles avec Require</a></li>
|
||
</ul><h3 class="directives">Directives</h3>
|
||
<ul id="toc">
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslcacertificatefile">SSLCACertificateFile</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslcacertificatepath">SSLCACertificatePath</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslcadnrequestfile">SSLCADNRequestFile</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslcadnrequestpath">SSLCADNRequestPath</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslcarevocationcheck">SSLCARevocationCheck</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslcarevocationfile">SSLCARevocationFile</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslcarevocationpath">SSLCARevocationPath</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslcertificatechainfile">SSLCertificateChainFile</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslcertificatefile">SSLCertificateFile</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslcertificatekeyfile">SSLCertificateKeyFile</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslciphersuite">SSLCipherSuite</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslcompression">SSLCompression</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslcryptodevice">SSLCryptoDevice</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslengine">SSLEngine</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslfips">SSLFIPS</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslhonorcipherorder">SSLHonorCipherOrder</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslinsecurerenegotiation">SSLInsecureRenegotiation</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslocspdefaultresponder">SSLOCSPDefaultResponder</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslocspenable">SSLOCSPEnable</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslocspnoverify">SSLOCSPNoverify</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslocspoverrideresponder">SSLOCSPOverrideResponder</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslocspproxyurl">SSLOCSPProxyURL</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslocsprespondercertificatefile">SSLOCSPResponderCertificateFile</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslocsprespondertimeout">SSLOCSPResponderTimeout</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslocspresponsemaxage">SSLOCSPResponseMaxAge</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslocspresponsetimeskew">SSLOCSPResponseTimeSkew</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslocspuserequestnonce">SSLOCSPUseRequestNonce</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslopensslconfcmd">SSLOpenSSLConfCmd</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#ssloptions">SSLOptions</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslpassphrasedialog">SSLPassPhraseDialog</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslpolicy">SSLPolicy</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslpolicydefinesection"><SSLPolicyDefine></a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslprotocol">SSLProtocol</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxycacertificatefile">SSLProxyCACertificateFile</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxycacertificatepath">SSLProxyCACertificatePath</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxycarevocationcheck">SSLProxyCARevocationCheck</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxycarevocationfile">SSLProxyCARevocationFile</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxycarevocationpath">SSLProxyCARevocationPath</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxycheckpeercn">SSLProxyCheckPeerCN</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxycheckpeerexpire">SSLProxyCheckPeerExpire</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxycheckpeername">SSLProxyCheckPeerName</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxyciphersuite">SSLProxyCipherSuite</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxyengine">SSLProxyEngine</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxymachinecertificatechainfile">SSLProxyMachineCertificateChainFile</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxymachinecertificatefile">SSLProxyMachineCertificateFile</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxymachinecertificatepath">SSLProxyMachineCertificatePath</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxypolicy">SSLProxyPolicy</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxyprotocol">SSLProxyProtocol</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxyverify">SSLProxyVerify</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslproxyverifydepth">SSLProxyVerifyDepth</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslrandomseed">SSLRandomSeed</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslrenegbuffersize">SSLRenegBufferSize</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslrequire">SSLRequire</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslrequiressl">SSLRequireSSL</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslsessioncache">SSLSessionCache</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslsessioncachetimeout">SSLSessionCacheTimeout</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslsessionticketkeyfile">SSLSessionTicketKeyFile</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslsessiontickets">SSLSessionTickets</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslsrpunknownuserseed">SSLSRPUnknownUserSeed</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslsrpverifierfile">SSLSRPVerifierFile</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslstaplingcache">SSLStaplingCache</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslstaplingerrorcachetimeout">SSLStaplingErrorCacheTimeout</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslstaplingfaketrylater">SSLStaplingFakeTryLater</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslstaplingforceurl">SSLStaplingForceURL</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslstaplingrespondertimeout">SSLStaplingResponderTimeout</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslstaplingresponsemaxage">SSLStaplingResponseMaxAge</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslstaplingresponsetimeskew">SSLStaplingResponseTimeSkew</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslstaplingreturnrespondererrors">SSLStaplingReturnResponderErrors</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslstaplingstandardcachetimeout">SSLStaplingStandardCacheTimeout</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslstrictsnivhostcheck">SSLStrictSNIVHostCheck</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslusername">SSLUserName</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslusestapling">SSLUseStapling</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslverifyclient">SSLVerifyClient</a></li>
|
||
<li><img alt="" src="../images/down.gif" /> <a href="#sslverifydepth">SSLVerifyDepth</a></li>
|
||
</ul>
|
||
<h3>Traitement des bugs</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">Journal des modifications de httpd</a></li><li><a href="https://bz.apache.org/bugzilla/buglist.cgi?bug_status=__open__&list_id=144532&product=Apache%20httpd-2&query_format=specific&order=changeddate%20DESC%2Cpriority%2Cbug_severity&component=mod_ssl">Probl<62>mes connus</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&component=mod_ssl">Signaler un bug</a></li></ul><h3>Voir aussi</h3>
|
||
<ul class="seealso">
|
||
<li><a href="#comments_section">Commentaires</a></li></ul></div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="envvars" id="envvars">Variables d'environnement</a></h2>
|
||
|
||
<p>Ce module peut <EFBFBD>tre configur<EFBFBD> pour fournir aux espaces de nommage SSI
|
||
et CGI de nombreux <EFBFBD>l<EFBFBD>ments d'informations concernant SSL par le biais
|
||
de variables d'environnement suppl<EFBFBD>mentaires. Par d<EFBFBD>faut, et ceci pour
|
||
des raisons de performances, ces informations ne sont pas fournies (Voir
|
||
la directive <code class="directive">SSLOptions</code> StdEnvVars ci-dessous).
|
||
Les variables g<EFBFBD>n<EFBFBD>r<EFBFBD>es se trouvent dans la table ci-dessous.
|
||
L'information peut aussi <EFBFBD>tre disponible sous des noms diff<EFBFBD>rents <EFBFBD> des
|
||
fins de compatibilit<EFBFBD> ascendante. Reportez-vous au chapitre <a href="../ssl/ssl_compat.html">Compatibilit<69></a> pour plus de d<EFBFBD>tails <EFBFBD>
|
||
propos des variables de compatibilit<EFBFBD>.</p>
|
||
|
||
<table class="bordered">
|
||
|
||
<tr>
|
||
<th><a name="table3">Nom de la variable :</a></th>
|
||
<th>Type de valeur :</th>
|
||
<th>Description :</th>
|
||
</tr>
|
||
<tr><td><code>HTTPS</code></td> <td>drapeau</td>
|
||
<td>HTTPS est utilis<EFBFBD>.</td></tr>
|
||
<tr><td><code>SSL_PROTOCOL</code></td> <td>cha<68>ne</td>
|
||
<td>La version du protocole SSL (SSLv3, TLSv1, TLSv1.1, TLSv1.2)</td></tr>
|
||
<tr><td><code>SSL_SESSION_ID</code></td> <td>cha<68>ne</td>
|
||
<td>L'identifiant de session SSL cod<EFBFBD> en hexad<EFBFBD>cimal</td></tr>
|
||
<tr><td><code>SSL_SESSION_RESUMED</code></td> <td>cha<68>ne</td>
|
||
<td>Session SSL initiale ou reprise. Note : plusieurs requ<EFBFBD>tes peuvent
|
||
<EFBFBD>tre servies dans le cadre de la m<EFBFBD>me session SSL (initiale ou reprise)
|
||
si les connexions persistantes (HTTP KeepAlive) sont utilis<EFBFBD>es</td></tr>
|
||
<tr><td><code>SSL_SECURE_RENEG</code></td> <td>cha<68>ne</td>
|
||
<td><code>true</code> si la ren<EFBFBD>gociation s<EFBFBD>curis<EFBFBD>e est support<EFBFBD>e,
|
||
<code>false</code> dans le cas contraire</td></tr>
|
||
<tr><td><code>SSL_CIPHER</code></td> <td>cha<68>ne</td>
|
||
<td>Le nom de l'algorithme de chiffrement</td></tr>
|
||
<tr><td><code>SSL_CIPHER_EXPORT</code></td> <td>cha<68>ne</td>
|
||
<td><code>true</code> si l'algorithme de chiffrement est un algorithme
|
||
export<EFBFBD></td></tr>
|
||
<tr><td><code>SSL_CIPHER_USEKEYSIZE</code></td> <td>nombre</td>
|
||
<td>Nombre de bits de chiffrement (r<>ellement utilis<EFBFBD>s)</td></tr>
|
||
<tr><td><code>SSL_CIPHER_ALGKEYSIZE</code></td> <td>nombre</td>
|
||
<td>Nombre de bits de chiffrement (possible)</td></tr>
|
||
<tr><td><code>SSL_COMPRESS_METHOD</code></td> <td>cha<68>ne</td>
|
||
<td>M<>thode de compression SSL n<EFBFBD>goci<EFBFBD>e</td></tr>
|
||
|
||
<tr><td><code>SSL_VERSION_INTERFACE</code></td> <td>cha<68>ne</td>
|
||
<td>La version du programme mod_ssl</td></tr>
|
||
<tr><td><code>SSL_VERSION_LIBRARY</code></td> <td>cha<68>ne</td>
|
||
<td>La version du programme OpenSSL</td></tr>
|
||
<tr><td><code>SSL_CLIENT_M_VERSION</code></td> <td>cha<68>ne</td>
|
||
<td>La version du certificat client</td></tr>
|
||
<tr><td><code>SSL_CLIENT_M_SERIAL</code></td> <td>cha<68>ne</td>
|
||
<td>Le num<EFBFBD>ro de s<EFBFBD>rie du certificat client</td></tr>
|
||
<tr><td><code>SSL_CLIENT_S_DN</code></td> <td>cha<68>ne</td>
|
||
<td>Le DN sujet du certificat client</td></tr>
|
||
<tr><td><code>SSL_CLIENT_S_DN_</code><em>x509</em></td> <td>cha<68>ne</td>
|
||
<td>El<45>ment du DN sujet du client</td></tr>
|
||
<tr><td><code>SSL_CLIENT_SAN_Email_</code><em>n</em></td>
|
||
<td>cha<68>ne</td> <td>Extensions subjectAltName de type rfc822Name du certificat client</td></tr>
|
||
<tr><td><code>SSL_CLIENT_SAN_DNS_</code><em>n</em></td> <td>cha<68>ne</td>
|
||
<td>Extensions subjectAltName de type dNSName du certificat client</td></tr>
|
||
<tr><td><code>SSL_CLIENT_SAN_OTHER_msUPN_</code><em>n</em></td>
|
||
<td>cha<68>ne</td> <td>Extensions subjectAltName de type otherName du
|
||
certificat client, forme Microsoft du nom principal de l'utilisateur (OID 1.3.6.1.4.1.311.20.2.3)</td></tr>
|
||
<tr><td><code>SSL_CLIENT_I_DN</code></td> <td>cha<68>ne</td>
|
||
<td>DN de l'<27>metteur du certificat du client</td></tr>
|
||
<tr><td><code>SSL_CLIENT_I_DN_</code><em>x509</em></td> <td>cha<68>ne</td>
|
||
<td>El<45>ment du DN de l'<27>metteur du certificat du client</td></tr>
|
||
<tr><td><code>SSL_CLIENT_V_START</code></td> <td>cha<68>ne</td>
|
||
<td>Validit<69> du certificat du client (date de d<EFBFBD>but)</td></tr>
|
||
<tr><td><code>SSL_CLIENT_V_END</code></td> <td>cha<68>ne</td>
|
||
<td>Validit<69> du certificat du client (date de fin)</td></tr>
|
||
<tr><td><code>SSL_CLIENT_V_REMAIN</code></td> <td>cha<68>ne</td>
|
||
<td>Nombre de jours avant expiration du certificat du client</td></tr>
|
||
<tr><td><code>SSL_CLIENT_A_SIG</code></td> <td>cha<68>ne</td>
|
||
<td>Algorithme utilis<EFBFBD> pour la signature du certificat du client</td></tr>
|
||
<tr><td><code>SSL_CLIENT_A_KEY</code></td> <td>cha<68>ne</td>
|
||
<td>Algorithme utilis<EFBFBD> pour la cl<EFBFBD> publique du certificat du client</td></tr>
|
||
<tr><td><code>SSL_CLIENT_CERT</code></td> <td>cha<68>ne</td>
|
||
<td>Certificat du client au format PEM</td></tr>
|
||
<tr><td><code>SSL_CLIENT_CERT_CHAIN_</code><em>n</em></td>
|
||
<td>cha<68>ne</td> <td>Certificats de la cha<EFBFBD>ne de certification du
|
||
client au format PEM</td></tr>
|
||
<tr><td><code>SSL_CLIENT_CERT_RFC4523_CEA</code></td> <td>cha<68>ne</td>
|
||
<td>Num<75>ro de s<EFBFBD>rie et fournisseur du certificat. Le format correspond <EFBFBD>
|
||
celui de la CertificateExactAssertion de la RFC4523</td></tr>
|
||
<tr><td><code>SSL_CLIENT_VERIFY</code></td> <td>cha<68>ne</td>
|
||
<td><code>NONE</code>, <code>SUCCESS</code>, <code>GENEROUS</code> ou
|
||
<code>FAILED:</code><em>raison</em></td></tr>
|
||
<tr><td><code>SSL_SERVER_M_VERSION</code></td> <td>cha<68>ne</td>
|
||
<td>La version du certificat du serveur</td></tr>
|
||
<tr><td><code>SSL_SERVER_M_SERIAL</code></td> <td>cha<68>ne</td> <td>
|
||
|
||
The serial of the server certificate</td></tr>
|
||
<tr><td><code>SSL_SERVER_S_DN</code></td> <td>cha<68>ne</td>
|
||
<td>DN sujet du certificat du serveur</td></tr>
|
||
<tr><td><code>SSL_SERVER_S_DN_</code><em>x509</em></td> <td>cha<68>ne</td>
|
||
<td>El<45>ment du DN sujet du certificat du serveur</td></tr>
|
||
<tr><td><code>SSL_SERVER_SAN_Email_</code><em>n</em></td>
|
||
<td>cha<68>ne</td> <td>Extensions subjectAltName de type rfc822Name du
|
||
certificat serveur</td></tr>
|
||
<tr><td><code>SSL_CLIENT_SAN_DNS_</code><em>n</em></td> <td>cha<68>ne</td>
|
||
<td>Extensions subjectAltName de type dNSName du certificat serveur</td></tr>
|
||
<tr><td><code>SSL_SERVER_SAN_OTHER_dnsSRV_</code><em>n</em></td>
|
||
<td>cha<68>ne</td> <td>Extensions subjectAltName de type otherName du
|
||
certificat serveur, sous la forme SRVName (OID 1.3.6.1.5.5.7.8.7, RFC 4985)</td></tr>
|
||
<tr><td><code>SSL_SERVER_I_DN</code></td> <td>cha<68>ne</td>
|
||
<td>DN de l'<27>metteur du certificat du serveur</td></tr>
|
||
<tr><td><code>SSL_SERVER_I_DN_</code><em>x509</em></td> <td>cha<68>ne</td>
|
||
<td>El<45>ment du DN de l'<27>metteur du certificat du serveur</td></tr>
|
||
<tr><td><code>SSL_SERVER_V_START</code></td> <td>cha<68>ne</td>
|
||
<td>Validit<69> du certificat du serveur (date de d<EFBFBD>dut)</td></tr>
|
||
<tr><td><code>SSL_SERVER_V_END</code></td> <td>cha<68>ne</td>
|
||
<td>Validit<69> du certificat du serveur (date de fin)</td></tr>
|
||
<tr><td><code>SSL_SERVER_A_SIG</code></td> <td>cha<68>ne</td>
|
||
<td>Algorithme utilis<EFBFBD> pour la signature du certificat du serveur</td></tr>
|
||
<tr><td><code>SSL_SERVER_A_KEY</code></td> <td>cha<68>ne</td>
|
||
<td>Algorithme utilis<EFBFBD> pour la cl<EFBFBD> publique du certificat du serveur</td></tr>
|
||
<tr><td><code>SSL_SERVER_CERT</code></td> <td>cha<68>ne</td>
|
||
<td>Certificat du serveur au format PEM</td></tr>
|
||
<tr><td><code>SSL_SRP_USER</code></td> <td>string</td>
|
||
<td>nom d'utilisateur SRP</td></tr>
|
||
<tr><td><code>SSL_SRP_USERINFO</code></td> <td>string</td>
|
||
<td>informations sur l'utilisateur SRP</td></tr>
|
||
<tr><td><code>SSL_TLS_SNI</code></td> <td>string</td>
|
||
<td>Contenu de l'extension SNI TLS (si support<EFBFBD> par ClientHello)</td></tr>
|
||
</table>
|
||
|
||
<p><em>x509</em> sp<EFBFBD>cifie un <EFBFBD>l<EFBFBD>ment de DN X.509 parmi
|
||
<code>C,ST,L,O,OU,CN,T,I,G,S,D,UID,Email</code>. A partir de la version
|
||
2.2.0 de httpd, <em>x509</em> peut aussi comporter un suffixe num<EFBFBD>rique
|
||
<code>_n</code>. Si le DN en question comporte plusieurs attributs de
|
||
noms identiques, ce suffixe constitue un index d<EFBFBD>butant <EFBFBD> z<EFBFBD>ro et
|
||
permettant de s<EFBFBD>lectionner un
|
||
attribut particulier. Par exemple, si le DN sujet du certificat du
|
||
serveur comporte deux champs OU, on peut utiliser
|
||
<code>SSL_SERVER_S_DN_OU_0</code> et <code>SSL_SERVER_S_DN_OU_1</code>
|
||
pour r<EFBFBD>f<EFBFBD>rencer chacun d'entre eux. Un nom de variable sans suffixe
|
||
<code>_n</code> est <EFBFBD>quivalent au m<EFBFBD>me nom avec le suffixe
|
||
<code>_0</code>, ce qui correspond au premier attribut (ou au seul)
|
||
caract<EFBFBD>risant le DN.
|
||
Lorsque la table d'environnement est remplie en utilisant l'option
|
||
<code>StdEnvVars</code> de la directive <code class="directive"><a href="#ssloptions">SSLOptions</a></code>, le premier attribut (ou le
|
||
seul) caract<EFBFBD>risant le DN est enregistr<EFBFBD> avec un nom sans suffixe ;
|
||
autrement dit, aucune entr<EFBFBD>e poss<EFBFBD>dant comme suffixe <code>_0</code>
|
||
n'est enregistr<EFBFBD>e.</p>
|
||
|
||
<p>Depuis la version 2.5.0 de httpd, il est possible d'ajouter le suffixe
|
||
<em>_RAW</em> <EFBFBD> <em>x509</em> dans un <EFBFBD>l<EFBFBD>ment DN afin d'<27>viter la conversion en
|
||
UTF-8 de la valeur de l'attribut. Il doit <EFBFBD>tre plac<EFBFBD> apr<EFBFBD>s le suffixe index
|
||
(s'il existe), par exemple <code>SSL_SERVER_S_DN_OU_RAW</code> ou
|
||
<code>SSL_SERVER_S_DN_OU_0_RAW</code>.</p>
|
||
|
||
<p>Le format des variables <em>*_DN</em> a chang<EFBFBD> depuis la version
|
||
2.3.11 d'Apache HTTPD. Voir l'option <code>LegacyDNStringFormat</code>
|
||
de la directive <code class="directive"><a href="#ssloptions">SSLOptions</a></code> pour
|
||
plus de d<EFBFBD>tails.</p>
|
||
|
||
<p><code>SSL_CLIENT_V_REMAIN</code> n'est disponible qu'<27> partir de la
|
||
version 2.1.</p>
|
||
|
||
<p>Plusieurs variables d'environnement additionnelles peuvent <EFBFBD>tre
|
||
utilis<EFBFBD>es dans les expressions <code class="directive">SSLRequire</code>, ou
|
||
dans les formats de journalisation personnalis<EFBFBD>s :</p>
|
||
|
||
<div class="note"><pre>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</pre></div>
|
||
|
||
<p>Dans ces contextes, deux formats sp<EFBFBD>ciaux peuvent aussi <EFBFBD>tre utilis<EFBFBD>s
|
||
:</p>
|
||
|
||
<dl>
|
||
<dt><code>ENV:<em>nom_variable</em></code></dt>
|
||
<dd>Correspond <EFBFBD> la variable d'environnement standard
|
||
<em>nom_variable</em>.</dd>
|
||
|
||
<dt><code>HTTP:<em>nom_en-t<>te</em></code></dt>
|
||
<dd>Correspond <EFBFBD> la valeur de l'en-t<>te de requ<EFBFBD>te dont le nom est
|
||
<em>nom_en-t<>te</em>.</dd>
|
||
</dl>
|
||
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="logformats" id="logformats">Formats de journaux
|
||
personnalis<EFBFBD>s</a></h2>
|
||
|
||
<p>Lorsque <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> est compil<EFBFBD> dans le serveur Apache
|
||
ou m<EFBFBD>me charg<EFBFBD> (en mode DSO), des fonctions suppl<EFBFBD>mentaires sont
|
||
disponibles pour le <a href="mod_log_config.html#formats">Format de journal personnalis<EFBFBD></a> du
|
||
module <code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code>. A ce titre, la fonction de
|
||
format d'eXtension ``<code>%{</code><em>nom-var</em><code>}x</code>''
|
||
peut <EFBFBD>tre utilis<EFBFBD>e pour pr<EFBFBD>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.</p>
|
||
<p>
|
||
A des fins de compatibilit<EFBFBD> ascendante, il existe une fonction de format
|
||
cryptographique suppl<EFBFBD>mentaire
|
||
``<code>%{</code><em>nom</em><code>}c</code>''. Vous trouverez toutes
|
||
les informations <EFBFBD> propos de cette fonction dans le chapitre <a href="../ssl/ssl_compat.html">Compatibilit<69></a>.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">CustomLog "logs/ssl_request_log" "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"</pre>
|
||
</div>
|
||
<p>Ces formats sont disponibles m<EFBFBD>me si l'option <code>StdEnvVars</code> de la
|
||
directive <code class="directive"><a href="#ssloptions">SSLOptions</a></code> n'a pas <EFBFBD>t<EFBFBD>
|
||
d<EFBFBD>finie.</p>
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="notes" id="notes">Information <EFBFBD> propos de la requ<EFBFBD>te</a></h2>
|
||
|
||
<p><code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> enregistre des informations <EFBFBD> propos de la
|
||
requ<EFBFBD>te que l'on peut restituer dans les journaux avec la cha<EFBFBD>ne de
|
||
format <code>%{<em>nom</em>}n</code> via le module
|
||
<code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code>.</p>
|
||
|
||
<p>Les informations enregistr<EFBFBD>es sont les suivantes :</p>
|
||
|
||
<dl>
|
||
<dt><code>ssl-access-forbidden</code></dt>
|
||
<dd>Cette information contient la valeur <code>1</code> si l'acc<63>s a
|
||
<EFBFBD>t<EFBFBD> refus<EFBFBD> suite <EFBFBD> une directive <code class="directive">SSLRequire</code> ou
|
||
<code class="directive">SSLRequireSSL</code>.</dd>
|
||
|
||
<dt><code>ssl-secure-reneg</code></dt>
|
||
<dd>Si <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> a <EFBFBD>t<EFBFBD> compil<EFBFBD> avec une version
|
||
d'OpenSSL qui supporte la ren<EFBFBD>gociation s<EFBFBD>curis<EFBFBD>e, si SSL est utilis<EFBFBD>
|
||
pour la connexion courante et si le client supporte lui aussi la
|
||
ren<EFBFBD>gociation s<EFBFBD>curis<EFBFBD>e, cette information contiendra la valeur
|
||
<code>1</code>. Si le client ne supporte pas la ren<EFBFBD>gociation
|
||
s<EFBFBD>curis<EFBFBD>e, l'information contiendra la valeur <code>0</code>. Si
|
||
<code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> n'a pas <EFBFBD>t<EFBFBD> compil<EFBFBD> avec une version
|
||
d'OpenSSL qui supporte la ren<EFBFBD>gociation s<EFBFBD>curis<EFBFBD>e, ou si SSL n'est pas
|
||
utilis<EFBFBD> pour la connexion courante, le contenu de l'information ne
|
||
sera pas d<EFBFBD>fini.</dd>
|
||
</dl>
|
||
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="expressionparser" id="expressionparser">Extension pour l'interpr<70>tation
|
||
des expressions</a></h2>
|
||
|
||
<p>Lorsque <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> est compil<EFBFBD> statiquement avec
|
||
Apache, ou m<EFBFBD>me charg<EFBFBD> dynamiquement (en tant que module DSO), toute <a name="envvars">variable</a> en provenance de <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> peut
|
||
<EFBFBD>tre utilis<EFBFBD>e pour l'<a href="../expr.html">interpr<70>tation des
|
||
expression ap_expr</a>. Les variables peuvent <EFBFBD>tre r<EFBFBD>f<EFBFBD>renc<EFBFBD>es en
|
||
utilisant la syntaxe ``<code>%{</code><em>varname</em><code>}</code>''.
|
||
A partir de la version 2.4.18, on peut aussi utiliser la syntaxe de
|
||
style <code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code>
|
||
``<code>%{SSL:</code><em>varname</em><code>}</code>'', ou la syntaxe de
|
||
style fonction ``<code>ssl(</code><em>varname</em><code>)</code>''.</p>
|
||
<div class="example"><h3>Exemple (en utilisant <code class="module"><a href="../mod/mod_headers.html">mod_headers</a></code>)</h3><pre class="prettyprint lang-config">Header set X-SSL-PROTOCOL "expr=%{SSL_PROTOCOL}"
|
||
Header set X-SSL-CIPHER "expr=%{SSL:SSL_CIPHER}"</pre>
|
||
</div>
|
||
<p>Cette fonctionnalit<EFBFBD> est disponible m<EFBFBD>me si l'option
|
||
<code>StdEnvVars</code> de la directive <code class="directive"><a href="#ssloptions">SSLOptions</a></code> n'a pas <EFBFBD>t<EFBFBD> d<EFBFBD>finie.</p>
|
||
</div><div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="section">
|
||
<h2><a name="authzproviders" id="authzproviders">Fournisseurs d'autorisation
|
||
disponibles avec Require</a></h2>
|
||
|
||
<p><code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> propose quelques fournisseurs
|
||
d'autorisation <EFBFBD> utiliser avec la directive <code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code> du module
|
||
<code class="module"><a href="../mod/mod_authz_core.html">mod_authz_core</a></code>.</p>
|
||
|
||
<h3><a name="reqssl" id="reqssl">Require ssl</a></h3>
|
||
|
||
<p>Le fournisseur <code>ssl</code> refuse l'acc<63>s si une connexion
|
||
n'est pas chiffr<EFBFBD>e avec SSL. L'effet est similaire <EFBFBD> celui de la
|
||
directive <code class="directive">SSLRequireSSL</code>.</p>
|
||
|
||
|
||
<pre class="prettyprint lang-config">Require ssl</pre>
|
||
|
||
|
||
|
||
|
||
|
||
<h3><a name="reqverifyclient" id="reqverifyclient">Require ssl-verify-client</a></h3>
|
||
|
||
<p>Le fournisseur <code>ssl</code> autorise l'acc<63>s si
|
||
l'utilisateur est authentifi<EFBFBD> via un certificat client valide. Ceci
|
||
n'a un effet que si <code>SSLVerifyClient optional</code> est actif.</p>
|
||
|
||
<p>Dans l'exemple suivant, l'acc<63>s est autoris<EFBFBD> si le client est
|
||
authentifi<EFBFBD> via un certificat client ou par nom d'utilisateur/mot de
|
||
passe :</p>
|
||
|
||
<pre class="prettyprint lang-config">Require ssl-verify-client
|
||
Require valid-user</pre>
|
||
|
||
|
||
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslcacertificatefile" id="sslcacertificatefile">Directive</a> <a name="SSLCACertificateFile" id="SSLCACertificateFile">SSLCACertificateFile</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Fichier contenant une concat<EFBFBD>nation des certificats de CA
|
||
cod<EFBFBD>s en PEM pour l'authentification des clients</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLCACertificateFile <em>chemin-fichier</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le fichier <em>tout-en-un</em> o<EFBFBD> vous
|
||
pouvez rassembler les certificats des Autorit<EFBFBD>s de Certification (CAs)
|
||
pour les clients auxquels vous avez <EFBFBD> faire. On les utilise pour
|
||
l'authentification des clients. Un tel fichier contient la simple
|
||
concat<EFBFBD>nation des diff<EFBFBD>rents fichiers de certificats cod<EFBFBD>s en PEM, par
|
||
ordre de pr<EFBFBD>f<EFBFBD>rence. Cette directive peut <EFBFBD>tre utilis<EFBFBD>e <EFBFBD> la place et/ou
|
||
en compl<EFBFBD>ment de la directive <code class="directive"><a href="#sslcacertificatepath">SSLCACertificatePath</a></code>.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLCACertificateFile "/usr/local/apache2/conf/ssl.crt/ca-bundle-client.crt"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslcacertificatepath" id="sslcacertificatepath">Directive</a> <a name="SSLCACertificatePath" id="SSLCACertificatePath">SSLCACertificatePath</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>R<>pertoire des certificats de CA cod<EFBFBD>s en PEM pour
|
||
l'authentification des clients</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLCACertificatePath <em>chemin-r<>pertoire</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le r<EFBFBD>pertoire o<EFBFBD> sont stock<EFBFBD>s les
|
||
certificats des Autorit<EFBFBD>s de Certification (CAs) pour les clients
|
||
auxquels vous avez <EFBFBD> faire. On les utilise pour v<EFBFBD>rifier le certificat
|
||
du client au cours de l'authentification de ce dernier.</p>
|
||
<p>
|
||
Les fichiers de ce r<EFBFBD>pertoire doivent <EFBFBD>tre cod<EFBFBD>s en PEM et ils sont
|
||
acc<EFBFBD>d<EFBFBD>s via des noms de fichier sous forme de condens<EFBFBD>s ou hash. Il ne
|
||
suffit donc pas de placer les fichiers de certificats dans ce r<EFBFBD>pertoire
|
||
: vous devez aussi cr<EFBFBD>er des liens symboliques nomm<EFBFBD>s
|
||
<em>valeur-de-hashage</em><code>.N</code>, et vous devez toujours vous
|
||
assurer que ce r<EFBFBD>pertoire contient les liens symboliques appropri<EFBFBD>s.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLCACertificatePath "/usr/local/apache2/conf/ssl.crt/"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslcadnrequestfile" id="sslcadnrequestfile">Directive</a> <a name="SSLCADNRequestFile" id="SSLCADNRequestFile">SSLCADNRequestFile</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Fichier contenant la concat<EFBFBD>nation des certificats de CA
|
||
cod<EFBFBD>s en PEM pour la d<EFBFBD>finition de noms de CA acceptables</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLCADNRequestFile <em>chemin-fichier</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>Lorsque mod_ssl demande un certificat client, une liste de <em>noms
|
||
d'Autorit<69>s de Certification acceptables</em> est envoy<EFBFBD>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<EFBFBD>lectionner un certificat
|
||
client appropri<EFBFBD> parmi ceux dont il dispose.</p>
|
||
|
||
<p>Si aucune des directives <code class="directive"><a href="#sslcadnrequestpath">SSLCADNRequestPath</a></code> ou <code class="directive"><a href="#sslcadnrequestfile">SSLCADNRequestFile</a></code> n'est d<EFBFBD>finie, la liste
|
||
de noms de CsA acceptables envoy<EFBFBD>e au client est la liste des noms de
|
||
tous les certificats de CA sp<EFBFBD>cifi<EFBFBD>s par les directives <code class="directive"><a href="#sslcacertificatefile">SSLCACertificateFile</a></code> et <code class="directive"><a href="#sslcacertificatepath">SSLCACertificatePath</a></code> ; en d'autres termes,
|
||
c'est la liste des noms de CAs qui sera effectivement utilis<EFBFBD>e pour
|
||
v<EFBFBD>rifier le certificat du client.</p>
|
||
|
||
<p>Dans certaines situations, il est utile de pouvoir envoyer
|
||
une liste de noms de CA acceptables qui diff<EFBFBD>re de la liste des CAs
|
||
effectivement utilis<EFBFBD>s pour v<EFBFBD>rifier le certificat du client ;
|
||
consid<EFBFBD>rons par exemple le cas o<EFBFBD> le certificat du client est sign<EFBFBD> par
|
||
des CAs interm<EFBFBD>diaires. On peut ici utiliser les directives <code class="directive"><a href="#sslcadnrequestpath">SSLCADNRequestPath</a></code> et/ou <code class="directive"><a href="#sslcadnrequestfile">SSLCADNRequestFile</a></code>, et les noms de CA
|
||
acceptables seront alors extraits de l'ensemble des certificats contenus
|
||
dans le r<EFBFBD>pertoire et/ou le fichier d<EFBFBD>finis par cette paire de
|
||
directives.</p>
|
||
|
||
<p><code class="directive"><a href="#sslcadnrequestfile">SSLCADNRequestFile</a></code> doit
|
||
sp<EFBFBD>cifier un fichier <em>tou-en-un</em> contenant une concat<EFBFBD>nation des
|
||
certificats de CA cod<EFBFBD>s en PEM.</p>
|
||
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLCADNRequestFile "/usr/local/apache2/conf/ca-names.crt"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslcadnrequestpath" id="sslcadnrequestpath">Directive</a> <a name="SSLCADNRequestPath" id="SSLCADNRequestPath">SSLCADNRequestPath</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>R<>pertoire contenant des fichiers de certificats de CA
|
||
cod<EFBFBD>s en PEM pour la d<EFBFBD>finition de noms de CA acceptables</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLCADNRequestPath <em>chemin-r<>pertoire</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
|
||
<p>Cette directive optionnelle permet de d<EFBFBD>finir la liste de <em>noms de
|
||
CAs acceptables</em> qui sera envoy<EFBFBD>e au client lorsqu'un certificat de
|
||
client est demand<EFBFBD>. Voir la directive <code class="directive"><a href="#sslcadnrequestfile">SSLCADNRequestFile</a></code> pour plus de
|
||
d<EFBFBD>tails.</p>
|
||
|
||
<p>Les fichiers de ce r<EFBFBD>pertoire doivent <EFBFBD>tre cod<EFBFBD>s en PEM et ils sont
|
||
acc<EFBFBD>d<EFBFBD>s via des noms de fichier sous forme de condens<EFBFBD>s ou hash. Il ne
|
||
suffit donc pas de placer les fichiers de certificats dans ce r<EFBFBD>pertoire
|
||
: vous devez aussi cr<EFBFBD>er des liens symboliques nomm<EFBFBD>s
|
||
<em>valeur-de-hashage</em><code>.N</code>, et vous devez toujours vous
|
||
assurer que ce r<EFBFBD>pertoire contient les liens symboliques appropri<EFBFBD>s.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLCADNRequestPath "/usr/local/apache2/conf/ca-names.crt/"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslcarevocationcheck" id="sslcarevocationcheck">Directive</a> <a name="SSLCARevocationCheck" id="SSLCARevocationCheck">SSLCARevocationCheck</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active la v<EFBFBD>rification des r<EFBFBD>vocations bas<EFBFBD>e sur les CRL</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLCARevocationCheck chain|leaf|none <em>flag</em>s</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLCARevocationCheck none</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Le param<EFBFBD>tre optionnel <em>flag</em>s est disponible <EFBFBD> partir de
|
||
la version 2.4.21 du serveur HTTP Apache</td></tr>
|
||
</table>
|
||
<p>
|
||
Active la v<EFBFBD>rification des r<EFBFBD>vocations bas<EFBFBD>e sur les Listes de
|
||
R<EFBFBD>vocations de Certificats (CRL). Au moins une des directives <code class="directive"><a href="#sslcarevocationfile">SSLCARevocationFile</a></code> ou <code class="directive"><a href="#sslcarevocationpath">SSLCARevocationPath</a></code> doit <EFBFBD>tre d<EFBFBD>finie.
|
||
Lorsque cette directive est d<EFBFBD>finie <EFBFBD> <code>chain</code> (valeur
|
||
recommand<EFBFBD>e), les v<EFBFBD>rifications CRL sont effectu<EFBFBD>es sur tous les
|
||
certificats de la cha<EFBFBD>ne, alors que la valeur <code>leaf</code> limite
|
||
la v<EFBFBD>rification au certificat hors cha<EFBFBD>ne (la feuille).
|
||
</p>
|
||
<div class="note">
|
||
<h3>Lorsque la directive est d<EFBFBD>finie <EFBFBD> <code>chain</code> ou
|
||
<code>leaf</code>, les CRLs doivent <EFBFBD>tre disponibles pour que la
|
||
validation r<EFBFBD>ussisse</h3>
|
||
<p>
|
||
Avant la version 2.3.15, les v<EFBFBD>rifications CRL dans mod_ssl
|
||
r<EFBFBD>ussissaient m<EFBFBD>me si aucune CRL n'<27>tait trouv<EFBFBD>e dans les chemins
|
||
d<EFBFBD>finis par les directives <code class="directive"><a href="#sslcarevocationfile">SSLCARevocationFile</a></code> ou <code class="directive"><a href="#sslcarevocationpath">SSLCARevocationPath</a></code>. Le comportement a
|
||
chang<EFBFBD> avec l'introduction de cette directive : lorsque la v<EFBFBD>rification
|
||
est activ<EFBFBD>e, les CRLs <em>doivent</em> <EFBFBD>tre pr<EFBFBD>sentes pour que la
|
||
validation r<EFBFBD>ussisse ; dans le cas contraire, elle <EFBFBD>chouera avec une
|
||
erreur <code>"CRL introuvable"</code>.
|
||
</p>
|
||
</div>
|
||
|
||
<p>Les <em>drapeau</em>x disponibles sont :</p>
|
||
<ul>
|
||
<li><code>no_crl_for_cert_ok</code>
|
||
<p>
|
||
Avant la version 2.3.15, les v<EFBFBD>rifications CRL dans mod_ssl
|
||
r<EFBFBD>ussissaient m<EFBFBD>me si aucune CRL pour le/les certificat(s) v<EFBFBD>rifi<EFBFBD>(s) n'<27>tait
|
||
trouv<EFBFBD>e dans les chemins d<EFBFBD>finis par les directives <code class="directive"><a href="#sslcarevocationfile">SSLCARevocationFile</a></code> ou <code class="directive"><a href="#sslcarevocationpath">SSLCARevocationPath</a></code>.
|
||
</p>
|
||
<p>
|
||
Ce comportement a chang<EFBFBD> avec l'introduction de cette directive ; par d<EFBFBD>faut
|
||
avec <code>chain</code> ou <code>leaf</code>, les CRLs doivent <EFBFBD>tre pr<EFBFBD>sents
|
||
pour que la validation r<EFBFBD>ussisse ; si ce n'est pas le cas, elle <EFBFBD>chouera
|
||
avec une erreur <code>"unable to get certificate CRL"</code>.
|
||
</p>
|
||
<p>
|
||
Le <em>drapeau</em> <code>no_crl_for_cert_ok</code> permet de r<EFBFBD>tablir le
|
||
comportement pr<EFBFBD>c<EFBFBD>dent.
|
||
</p>
|
||
</li>
|
||
</ul>
|
||
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLCARevocationCheck chain</pre>
|
||
</div>
|
||
<div class="example"><h3>Compatibilit<69> avec les versions 2.2</h3><pre class="prettyprint lang-config">SSLCARevocationCheck chain no_crl_for_cert_ok</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslcarevocationfile" id="sslcarevocationfile">Directive</a> <a name="SSLCARevocationFile" id="SSLCARevocationFile">SSLCARevocationFile</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Fichier contenant la concat<EFBFBD>nation des CRLs des CA cod<EFBFBD>s en
|
||
PEM pour l'authentification des clients</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLCARevocationFile <em>chemin-fichier</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le fichier <em>tout-en-un</em> o<EFBFBD> sont
|
||
rassembl<EFBFBD>es les Listes de R<EFBFBD>vocation de Certificats (CRLs) des Autorit<EFBFBD>s
|
||
de certification (CAs) pour les clients auxquels vous avez <EFBFBD> faire. On
|
||
les utilise pour l'authentification des clients. Un tel fichier contient
|
||
la simple concat<EFBFBD>nation des diff<EFBFBD>rents fichiers de CRLs cod<EFBFBD>s en PEM,
|
||
dans l'ordre de pr<EFBFBD>f<EFBFBD>rence. Cette directive peut <EFBFBD>tre utilis<EFBFBD>e <EFBFBD> la
|
||
place et/ou en compl<EFBFBD>ment de la directive <code class="directive"><a href="#sslcarevocationpath">SSLCARevocationPath</a></code>.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLCARevocationFile "/usr/local/apache2/conf/ssl.crl/ca-bundle-client.crl"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslcarevocationpath" id="sslcarevocationpath">Directive</a> <a name="SSLCARevocationPath" id="SSLCARevocationPath">SSLCARevocationPath</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>R<>pertoire des CRLs de CA cod<EFBFBD>s en PEM pour
|
||
l'authentification des clients</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLCARevocationPath <em>chemin-r<>pertoire</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le r<EFBFBD>pertoire o<EFBFBD> sont stock<EFBFBD>es les
|
||
Listes de R<EFBFBD>vocation de Certificats (CRL) des Autorit<EFBFBD>s de Certification
|
||
(CAs) pour les clients auxquels vous avez <EFBFBD> faire. On les utilise pour
|
||
r<EFBFBD>voquer les certificats des clients au cours de l'authentification de
|
||
ces derniers.</p>
|
||
<p>
|
||
Les fichiers de ce r<EFBFBD>pertoire doivent <EFBFBD>tre cod<EFBFBD>s en PEM et ils sont
|
||
acc<EFBFBD>d<EFBFBD>s via des noms de fichier sous forme de condens<EFBFBD>s ou hash. Il ne
|
||
suffit donc pas de placer les fichiers de CRL dans ce r<EFBFBD>pertoire
|
||
: vous devez aussi cr<EFBFBD>er des liens symboliques nomm<EFBFBD>s
|
||
<em>valeur-de-hashage</em><code>.N</code>, et vous devez toujours vous
|
||
assurer que ce r<EFBFBD>pertoire contient les liens symboliques appropri<EFBFBD>s.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLCARevocationPath "/usr/local/apache2/conf/ssl.crl/"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslcertificatechainfile" id="sslcertificatechainfile">Directive</a> <a name="SSLCertificateChainFile" id="SSLCertificateChainFile">SSLCertificateChainFile</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Fichier contenant les certificats de CA du serveur cod<EFBFBD>s en
|
||
PEM</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLCertificateChainFile <em>chemin-fichier</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<div class="note"><h3>SSLCertificateChainFile est obsol<EFBFBD>te</h3>
|
||
<p><code>SSLCertificateChainFile</code> est devenue obsol<EFBFBD>te avec la
|
||
version 2.4.8, lorsque la directive
|
||
<code class="directive"><a href="#sslcertificatefile">SSLCertificateFile</a></code> a <EFBFBD>t<EFBFBD> <EFBFBD>tendue
|
||
pour supporter aussi les certificats de CA interm<EFBFBD>diaires dans le
|
||
fichier de certificats du serveur.</p>
|
||
</div>
|
||
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le fichier optionnel
|
||
<em>tout-en-un</em> o<EFBFBD> vous pouvez rassembler les certificats des
|
||
Autorit<EFBFBD>s de Certification (CA) qui forment la cha<EFBFBD>ne de certification
|
||
du certificat du serveur. Cette cha<EFBFBD>ne d<EFBFBD>bute par le certificat de la CA
|
||
qui a d<EFBFBD>livr<EFBFBD> le certificat du serveur et peut remonter jusqu'au
|
||
certificat de la CA racine. Un tel fichier contient la simple
|
||
concat<EFBFBD>nation des diff<EFBFBD>rents certificats de CA cod<EFBFBD>s en PEM, en g<EFBFBD>n<EFBFBD>ral
|
||
dans l'ordre de la cha<EFBFBD>ne de certification.</p>
|
||
<p>Elle doit <EFBFBD>tre utilis<EFBFBD>e <EFBFBD> la place et/ou en compl<EFBFBD>ment de la
|
||
directive <code class="directive"><a href="#sslcacertificatepath">SSLCACertificatePath</a></code>
|
||
pour construire explicitement la cha<EFBFBD>ne de certification du serveur qui
|
||
est envoy<EFBFBD>e au navigateur en plus du certificat du serveur. Elle s'av<61>re
|
||
particuli<EFBFBD>rement utile pour <EFBFBD>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<EFBFBD>ne de certification du serveur dans
|
||
la directive <code class="directive"><a href="#sslcacertificatepath">SSLCACertificatePath</a></code> produit le m<EFBFBD>me effet
|
||
pour la construction de la cha<EFBFBD>ne de certification, cette directive a
|
||
pour effet colat<EFBFBD>ral de faire accepter les certificats clients fournis
|
||
par cette m<EFBFBD>me CA, au cours de l'authentification du client.</p>
|
||
<p>
|
||
Soyez cependant prudent : fournir la cha<EFBFBD>ne de certification ne
|
||
fonctionne que si vous utilisez un <em>simple</em> certificat de
|
||
serveur RSA <em>ou</em> DSA. Si vous utilisez une paire de certificats
|
||
coupl<EFBFBD>s RSA+DSA , cela ne fonctionnera que si les deux certificats
|
||
utilisent vraiment <em>la m<EFBFBD>me</em> cha<EFBFBD>ne de certification. Dans le cas
|
||
contraire, la confusion risque de s'installer au niveau des
|
||
navigateurs.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLCertificateChainFile "/usr/local/apache2/conf/ssl.crt/ca.crt"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslcertificatefile" id="sslcertificatefile">Directive</a> <a name="SSLCertificateFile" id="SSLCertificateFile">SSLCertificateFile</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Fichier de donn<EFBFBD>es contenant les informations de certificat X.509 du serveur
|
||
cod<EFBFBD>es au format PEM</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLCertificateFile <em>chemin-fichier</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le fichier de donn<EFBFBD>es contenant
|
||
les informations de certificat
|
||
X.509 du serveur cod<EFBFBD>es au format PEM. Ce fichier doit contenir
|
||
au minimum un certificat d'entit<69> finale (feuille).
|
||
La directive peut <EFBFBD>tre utilis<EFBFBD>e plusieurs fois (elle r<EFBFBD>f<EFBFBD>rence des
|
||
fichiers diff<EFBFBD>rents) pour accepter plusieurs algorithmes
|
||
d'authentification au niveau du serveur - souvent RSA, DSA et ECC. Le
|
||
nombre d'algorithmes support<EFBFBD>s d<EFBFBD>pend de la version d'OpenSSL utilis<EFBFBD>e
|
||
avec mod_ssl : <EFBFBD> partir de la version 1.0.0, la commande <code>openssl
|
||
list-public-key-algorithms</code> affiche la liste des algorithmes
|
||
support<EFBFBD>s. Voir aussi la note ci-dessous <EFBFBD> propos des limitations des versions
|
||
d'OpenSSL ant<EFBFBD>rieures <EFBFBD> 1.0.2 et la mani<EFBFBD>re de les contourner.
|
||
</p>
|
||
|
||
<p>Les fichiers peuvent aussi contenir des certificats de CA
|
||
interm<EFBFBD>diaires tri<EFBFBD>s depuis la feuille vers la racine. Cette
|
||
fonctionnalit<EFBFBD> est disponible depuis la version 2.4.8 du serveur HTTP
|
||
Apache, et rend obsol<EFBFBD>te la directive <code class="directive"><a href="#sslcertificatechainfile">SSLCertificateChainFile</a></code>. A partir de la
|
||
version 1.0.2 d'OpenSSL, il est alors possible de configurer la cha<EFBFBD>ne
|
||
de certification en fonction du certificat.</p>
|
||
|
||
<p>Depuis la version 2.4.7 du serveur HTTP Apache, on peut aussi ajouter
|
||
des param<EFBFBD>tres DH personnalis<EFBFBD>s et un nom EC
|
||
curve pour les cl<EFBFBD>s <EFBFBD>ph<EFBFBD>m<EFBFBD>res <EFBFBD> la fin du premier fichier d<EFBFBD>fini par la
|
||
directive <code class="directive"><a href="#sslcertificatefile">SSLCertificateFile</a></code>.
|
||
Ces param<EFBFBD>tres peuvent <EFBFBD>tre g<EFBFBD>n<EFBFBD>r<EFBFBD>s avec les commandes <code>openssl
|
||
dhparam</code> et <code>openssl ecparam</code>, et ils peuvent <EFBFBD>tre
|
||
ajout<EFBFBD>s tel quel <EFBFBD> la fin du premier fichier de certificat. En effet,
|
||
seul le premier fichier de certificat d<EFBFBD>fini peut <EFBFBD>tre utilis<EFBFBD> pour
|
||
enregistrer des param<EFBFBD>tres personnalis<EFBFBD>s, car ces derniers s'appliquent
|
||
ind<EFBFBD>pendamment de l'algorithme d'authentification utilis<EFBFBD>.
|
||
</p>
|
||
|
||
<p>Enfin, il est aussi possible d'ajouter la cl<EFBFBD> priv<EFBFBD>e du certificat de
|
||
l'entit<69> finale au fichier de certificat, ce qui permet de se passer
|
||
d'une directive <code class="directive"><a href="#sslcertificatekeyfile">SSLCertificateKeyFile</a></code> s<EFBFBD>par<EFBFBD>e. Cette
|
||
pratique est cependant fortement d<EFBFBD>conseill<EFBFBD>e. En effet, les fichiers de
|
||
certificats qui contiennent de tels cl<EFBFBD>s embarqu<EFBFBD>es doivent <EFBFBD>tre d<EFBFBD>finis
|
||
avant les certificats en utilisant un fichier de cl<EFBFBD> s<EFBFBD>par<EFBFBD>. En outre,
|
||
si la cl<EFBFBD> est chiffr<EFBFBD>e, une bo<EFBFBD>te de dialogue pour entrer le mot de
|
||
passe de la cl<EFBFBD> s'ouvre au d<EFBFBD>marrage du serveur.
|
||
</p>
|
||
|
||
<div class="note">
|
||
<h3>Interop<6F>rabilit<69> des param<EFBFBD>tres DH avec les nombres premiers de
|
||
plus de 1024 bits</h3>
|
||
<p>
|
||
Depuis la version 2.4.7, mod_ssl utilise des
|
||
param<EFBFBD>tres DH standardis<EFBFBD>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 <a href="http://www.ietf.org/rfc/rfc3526.txt">RFC
|
||
3526</a>), et les fournit aux clients en fonction de la longueur de la
|
||
cl<EFBFBD> du certificat RSA/DSA. En particulier avec les clients bas<EFBFBD>s sur
|
||
Java (versions 7 et ant<EFBFBD>rieures), ceci peut provoquer des erreurs au
|
||
cours de la n<EFBFBD>gociation - voir cette <a href="../ssl/ssl_faq.html#javadh">r<>ponse de la FAQ SSL</a> pour
|
||
contourner les probl<EFBFBD>mes de ce genre.
|
||
</p>
|
||
</div>
|
||
|
||
<div class="note">
|
||
<h3>Param<61>tres DH par d<EFBFBD>faut lorsqu'on utilise plusieurs certificats et une
|
||
version d'OpenSSL ant<EFBFBD>rieure <EFBFBD> 1.0.2.</h3>
|
||
<p>
|
||
Lorsqu'on utilise plusieurs certificats pour supporter diff<EFBFBD>rents algorithmes
|
||
d'authentification (comme RSA, DSA, mais principalement ECC) et une
|
||
version d'OpenSSL ant<EFBFBD>rieure <EFBFBD> 1.0.2, il est recommand<EFBFBD> soit d'utiliser des
|
||
param<EFBFBD>tres DH sp<EFBFBD>cifiques (solution <EFBFBD> privil<EFBFBD>gier) en les ajoutant au premier
|
||
fichier certificat (comme d<EFBFBD>crit ci-dessus), soit d'ordonner les directives
|
||
<code class="directive">SSLCertificateFile</code> de fa<EFBFBD>on <EFBFBD> ce que les certificats
|
||
RSA/DSA soit plac<EFBFBD>s <strong>apr<70>s</strong> les certificats ECC.
|
||
</p>
|
||
<p>
|
||
Cette limitation est pr<EFBFBD>sente dans les anciennes versions d'OpenSSL qui
|
||
pr<EFBFBD>sentent toujours le dernier certificat configur<EFBFBD>, au lieu
|
||
de laisser le serveur HTTP Apache d<EFBFBD>terminer le certificat s<EFBFBD>lectionn<EFBFBD> lors de
|
||
la phase de n<EFBFBD>gociation de la connexion (lorsque les param<EFBFBD>tres DH doivent <EFBFBD>tre
|
||
envoy<EFBFBD>s <EFBFBD> l'h<>te distant).
|
||
De ce fait, le serveur peut s<EFBFBD>lectionner des param<EFBFBD>tres DH par d<EFBFBD>faut bas<EFBFBD>s sur
|
||
la longueur de la cl<EFBFBD> du mauvais certificat (les cl<EFBFBD>s ECC sont beaucoup plus
|
||
petites que les cl<EFBFBD>s RSA/DSA et leur longueur n'est pas pertinente pour la
|
||
s<EFBFBD>lection des nombres premiers DH).
|
||
</p>
|
||
<p>
|
||
Ce probl<EFBFBD>me peut <EFBFBD>tre r<EFBFBD>solu en cr<EFBFBD>ant et configurant des param<EFBFBD>tres DH
|
||
sp<EFBFBD>cifiques (comme d<EFBFBD>crit ci-dessus), car ils l'emportent toujours sur les
|
||
param<EFBFBD>tres DH par d<EFBFBD>faut, et vous pourrez ainsi utiliser une longueur sp<EFBFBD>cifique
|
||
et appropri<EFBFBD>e.
|
||
</p>
|
||
</div>
|
||
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLCertificateFile "/usr/local/apache2/conf/ssl.crt/server.crt"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslcertificatekeyfile" id="sslcertificatekeyfile">Directive</a> <a name="SSLCertificateKeyFile" id="SSLCertificateKeyFile">SSLCertificateKeyFile</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Fichier contenant la cl<EFBFBD> priv<EFBFBD>e du serveur cod<EFBFBD>e en
|
||
PEM</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLCertificateKeyFile <em>chemin-fichier</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le fichier contenant la cl<EFBFBD> priv<EFBFBD>e du
|
||
serveur cod<EFBFBD>e en PEM. Si la cl<EFBFBD> priv<EFBFBD>e est
|
||
chiffr<EFBFBD>e, une bo<EFBFBD>te de dialogue demandant le mot de passe de cette
|
||
derni<EFBFBD>re s'ouvre au d<EFBFBD>marrage du serveur.</p>
|
||
|
||
<p>
|
||
Cette directive peut <EFBFBD>tre utilis<EFBFBD>e plusieurs fois pour r<EFBFBD>f<EFBFBD>rencer
|
||
diff<EFBFBD>rents noms de fichiers, afin de supporter plusieurs algorithmes
|
||
pour l'authentification du serveur. A chaque directive <code class="directive"><a href="#sslcertificatekeyfile">SSLCertificateKeyFile</a></code> doit <EFBFBD>tre associ<EFBFBD>e
|
||
une directive <code class="directive">SSLCertificateFile</code> correspondante.</p>
|
||
|
||
<p>
|
||
La cl<EFBFBD> priv<EFBFBD> peut aussi <EFBFBD>tre ajout<EFBFBD>e au fichier d<EFBFBD>fini par la directive
|
||
<code class="directive"><a href="#sslcertificatefile">SSLCertificateFile</a></code>, mais cette
|
||
pratique est fortement d<EFBFBD>conseill<EFBFBD>e. En effet, les fichiers de
|
||
certificats qui comportent une telle cl<EFBFBD> doivent <EFBFBD>tre d<EFBFBD>finis apr<EFBFBD>s les
|
||
certificats en utilisant un fichier de cl<EFBFBD> s<EFBFBD>par<EFBFBD>.</p>
|
||
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLCertificateKeyFile "/usr/local/apache2/conf/ssl.key/server.key"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslciphersuite" id="sslciphersuite">Directive</a> <a name="SSLCipherSuite" id="SSLCipherSuite">SSLCipherSuite</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Algorithmes de chiffrement disponibles pour la n<EFBFBD>gociation
|
||
au cours de l'initialisation de la connexion SSL</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLCipherSuite <em>algorithmes</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLCipherSuite DEFAULT (d<>pend de la version d'OpenSSL
|
||
install<EFBFBD>e)</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r<EFBFBD>pertoire, .htaccess</td></tr>
|
||
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive complexe utilise la cha<EFBFBD>ne <em>algorithmes</em>
|
||
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 <EFBFBD>tre utilis<EFBFBD>e aussi bien dans un contexte
|
||
de serveur que dans un contexte de r<EFBFBD>pertoire. Dans un contexte de
|
||
serveur, elle s'applique <EFBFBD> l'initialisation SSL standard lorsqu'une
|
||
connexion est <EFBFBD>tablie. Dans un contexte de r<EFBFBD>pertoire, elle force une
|
||
ren<EFBFBD>gociation SSL avec la liste d'algorithmes de chiffrement sp<EFBFBD>cifi<EFBFBD>e
|
||
apr<EFBFBD>s la lecture d'une requ<EFBFBD>te HTTP, mais avant l'envoi de la r<EFBFBD>ponse
|
||
HTTP.</p>
|
||
<p>
|
||
La liste d'algorithmes de chiffrement SSL sp<EFBFBD>cifi<EFBFBD>e par l'argument
|
||
<em>algorithmes</em> comporte quatre attributs principaux auxquels
|
||
s'ajoutent quelques attributs secondaires :</p>
|
||
<ul>
|
||
<li><em>Algorithme d'<27>change de cl<EFBFBD>s</em>:<br />
|
||
RSA, Diffie-Hellman, Elliptic Curve Diffie-Hellman, Secure Remote Password.
|
||
</li>
|
||
<li><em>Algorithme d'authentification</em>:<br />
|
||
RSA, Diffie-Hellman, DSS, ECDSA, ou none.
|
||
</li>
|
||
<li><em>Algorithme de chiffrement</em>:<br />
|
||
AES, DES, Triple-DES, RC4, RC2, IDEA, etc...
|
||
</li>
|
||
<li><em>Algorithme de condens<EFBFBD> MAC</em>:<br />
|
||
MD5, SHA ou SHA1, SHA256, SHA384.
|
||
</li>
|
||
</ul>
|
||
<p>L'algorithme de chiffrement peut aussi provenir de l'ext<78>rieur. Les
|
||
algorithmes SSLv2 ne sont plus support<EFBFBD>s.
|
||
Pour d<EFBFBD>finir les algorithmes <EFBFBD> utiliser, on
|
||
peut soit sp<EFBFBD>cifier tous les algorithmes <EFBFBD> la fois, soit utiliser des
|
||
alias pour sp<EFBFBD>cifier une liste d'algorithmes dans leur ordre de
|
||
pr<EFBFBD>f<EFBFBD>rence (voir <a href="#table1">Table 1</a>). Les algorithmes et
|
||
alias effectivement disponibles d<EFBFBD>pendent de la version d'openssl
|
||
utilis<EFBFBD>e. Les versions ult<EFBFBD>rieures d'openssl sont susceptibles d'inclure
|
||
des algorithmes suppl<EFBFBD>mentaires.</p>
|
||
|
||
<table class="bordered">
|
||
|
||
<tr><th><a name="table1">Symbole</a></th> <th>Description</th></tr>
|
||
<tr><td colspan="2"><em>Algorithme d'<27>change de cl<EFBFBD>s :</em></td></tr>
|
||
<tr><td><code>kRSA</code></td> <td>Echange de cl<EFBFBD>s RSA</td></tr>
|
||
<tr><td><code>kDHr</code></td> <td>Echange de cl<EFBFBD>s Diffie-Hellman avec
|
||
cl<EFBFBD> RSA</td></tr>
|
||
<tr><td><code>kDHd</code></td> <td>Echange de cl<EFBFBD>s Diffie-Hellman avec
|
||
cl<EFBFBD> DSA</td></tr>
|
||
<tr><td><code>kEDH</code></td> <td>Echange de cl<EFBFBD>s Diffie-Hellman
|
||
temporaires (pas de certificat)</td> </tr>
|
||
<tr><td><code>kSRP</code></td> <td><3E>change de cl<EFBFBD>s avec mot de passe
|
||
distant s<EFBFBD>curis<EFBFBD> (SRP)</td></tr>
|
||
<tr><td colspan="2"><em>Algorithmes d'authentification :</em></td></tr>
|
||
<tr><td><code>aNULL</code></td> <td>Pas d'authentification</td></tr>
|
||
<tr><td><code>aRSA</code></td> <td>Authentification RSA</td></tr>
|
||
<tr><td><code>aDSS</code></td> <td>Authentification DSS</td> </tr>
|
||
<tr><td><code>aDH</code></td> <td>Authentification Diffie-Hellman</td></tr>
|
||
<tr><td colspan="2"><em>Algorithmes de chiffrement :</em></td></tr>
|
||
<tr><td><code>eNULL</code></td> <td>Pas de chiffrement</td> </tr>
|
||
<tr><td><code>NULL</code></td> <td>alias pour eNULL</td> </tr>
|
||
<tr><td><code>AES</code></td> <td>Chiffrement AES</td> </tr>
|
||
<tr><td><code>DES</code></td> <td>Chiffrement DES</td> </tr>
|
||
<tr><td><code>3DES</code></td> <td>Chiffrement Triple-DES</td> </tr>
|
||
<tr><td><code>RC4</code></td> <td>Chiffrement RC4</td> </tr>
|
||
<tr><td><code>RC2</code></td> <td>Chiffrement RC2</td> </tr>
|
||
<tr><td><code>IDEA</code></td> <td>Chiffrement IDEA</td> </tr>
|
||
<tr><td colspan="2"><em>Algorithmes de condens<EFBFBD>s MAC </em>:</td></tr>
|
||
<tr><td><code>MD5</code></td> <td>Fonction de hashage MD5</td></tr>
|
||
<tr><td><code>SHA1</code></td> <td>Fonction de hashage SHA1</td></tr>
|
||
<tr><td><code>SHA</code></td> <td>alias pour SHA1</td> </tr>
|
||
<tr><td><code>SHA256</code></td> <td>Fonction de hashage SHA256</td> </tr>
|
||
<tr><td><code>SHA384</code></td> <td>Fonction de hashage SHA384</td> </tr>
|
||
<tr><td colspan="2"><em>Alias :</em></td></tr>
|
||
<tr><td><code>SSLv3</code></td> <td>tous les algorithmes de chiffrement
|
||
SSL version 3.0</td> </tr>
|
||
<tr><td><code>TLSv1</code></td> <td>tous les algorithmes de chiffrement
|
||
TLS version 1.0</td> </tr>
|
||
<tr><td><code>EXP</code></td> <td>tous les algorithmes de chiffrement
|
||
externes</td> </tr>
|
||
<tr><td><code>EXPORT40</code></td> <td>tous les algorithmes de chiffrement
|
||
externes limit<EFBFBD>s <EFBFBD> 40 bits</td> </tr>
|
||
<tr><td><code>EXPORT56</code></td> <td>tous les algorithmes de chiffrement
|
||
externes limit<EFBFBD>s <EFBFBD> 56 bits</td> </tr>
|
||
<tr><td><code>LOW</code></td> <td>tous les algorithmes de chiffrement
|
||
faibles (non externes, DES simple)</td></tr>
|
||
<tr><td><code>MEDIUM</code></td> <td>tous les algorithmes avec
|
||
chiffrement 128 bits</td> </tr>
|
||
<tr><td><code>HIGH</code></td> <td>tous les algorithmes
|
||
utilisant Triple-DES</td> </tr>
|
||
<tr><td><code>RSA</code></td> <td>tous les algorithmes
|
||
utilisant l'<27>change de cl<EFBFBD>s RSA</td> </tr>
|
||
<tr><td><code>DH</code></td> <td>tous les algorithmes
|
||
utilisant l'<27>change de cl<EFBFBD>s Diffie-Hellman</td> </tr>
|
||
<tr><td><code>EDH</code></td> <td>tous les algorithmes
|
||
utilisant l'<27>change de cl<EFBFBD>s Diffie-Hellman temporaires</td> </tr>
|
||
<tr><td><code>ECDH</code></td> <td>Echange de cl<EFBFBD>s Elliptic Curve Diffie-Hellman</td> </tr>
|
||
<tr><td><code>ADH</code></td> <td>tous les algorithmes
|
||
utilisant l'<27>change de cl<EFBFBD>s Diffie-Hellman anonymes</td> </tr>
|
||
<tr><td><code>AECDH</code></td> <td>tous les algorithmes utilisant
|
||
l'<27>change de cl<EFBFBD>s Elliptic Curve Diffie-Hellman</td> </tr>
|
||
<tr><td><code>SRP</code></td> <td>tous les algorithmes utilisant
|
||
l'<27>change de cl<EFBFBD>s avec mot de passe distant s<EFBFBD>curis<EFBFBD> (SRP)</td> </tr>
|
||
<tr><td><code>DSS</code></td> <td>tous les algorithmes
|
||
utilisant l'authentification DSS</td> </tr>
|
||
<tr><td><code>ECDSA</code></td> <td>tous les algorithmes utilisant
|
||
l'authentification ECDSA</td> </tr>
|
||
<tr><td><code>aNULL</code></td> <td>tous les algorithmes n'utilisant
|
||
aucune authentification</td> </tr>
|
||
</table>
|
||
<p>
|
||
Cela devient int<EFBFBD>ressant lorsque tous ces symboles sont combin<EFBFBD>s
|
||
ensemble pour sp<EFBFBD>cifier les algorithmes disponibles et l'ordre dans
|
||
lequel vous voulez les utiliser. Pour simplifier tout cela, vous
|
||
disposez aussi d'alias (<code>SSLv3, TLSv1, EXP, LOW, MEDIUM,
|
||
HIGH</code>) pour certains groupes d'algorithmes. Ces symboles peuvent
|
||
<EFBFBD>tre reli<EFBFBD>s par des pr<EFBFBD>fixes pour former la cha<EFBFBD>ne <em>algorithmes</em>.
|
||
Les pr<EFBFBD>fixes disponibles sont :</p>
|
||
<ul>
|
||
<li>none: ajoute l'algorithme <EFBFBD> la liste</li>
|
||
<li><code>+</code>: d<EFBFBD>place les algorithmes qui conviennent <EFBFBD> la
|
||
place courante dans la liste</li>
|
||
<li><code>-</code>: supprime l'algorithme de la liste (peut <EFBFBD>tre rajout<EFBFBD>
|
||
plus tard)</li>
|
||
<li><code>!</code>: supprime d<EFBFBD>finitivement l'algorithme de la liste (ne
|
||
peut <strong>plus</strong> y <EFBFBD>tre rajout<EFBFBD> plus tard)</li>
|
||
</ul>
|
||
|
||
<div class="note">
|
||
<h3>Les algorithmes <code>aNULL</code>, <code>eNULL</code> et
|
||
<code>EXP</code> sont toujours d<EFBFBD>sactiv<EFBFBD>s</h3>
|
||
<p>Depuis la version 2.4.7, les
|
||
algorithmes de type null ou destin<EFBFBD>s <EFBFBD> l'exportation sont toujours
|
||
d<EFBFBD>sactiv<EFBFBD>s car mod_ssl ajoute obligatoirement
|
||
<code>!aNULL:!eNULL:!EXP</code> <EFBFBD> toute cha<EFBFBD>ne d'algorithme de
|
||
chiffrement <EFBFBD> l'initialisation.</p>
|
||
</div>
|
||
|
||
<p>Pour vous simplifier la vie, vous pouvez utiliser la commande
|
||
``<code>openssl ciphers -v</code>'' qui vous fournit un moyen simple de
|
||
cr<EFBFBD>er la cha<EFBFBD>ne <em>algorithmes</em> avec succ<EFBFBD>s. La cha<EFBFBD>ne
|
||
<em>algorithmes</em> par d<EFBFBD>faut d<EFBFBD>pend de la version des biblioth<EFBFBD>ques
|
||
SSL install<EFBFBD>es. Supposons qu'elle contienne
|
||
``<code>RC4-SHA:AES128-SHA:HIGH:MEDIUM:!aNULL:!MD5</code>'', ce qui
|
||
stipule de mettre <code>RC4-SHA</code> et <code>AES128-SHA</code> en
|
||
premiers, car ces algorithmes pr<EFBFBD>sentent un bon compromis entre vitesse
|
||
et s<EFBFBD>curit<EFBFBD>. Viennent ensuite les algorithmes de s<EFBFBD>curit<EFBFBD> <EFBFBD>lev<EFBFBD>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
|
||
<code>MD5</code> pour le hashage, car celui-ci est reconnu comme
|
||
insuffisant.</p>
|
||
<div class="example"><pre>$ 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</pre></div>
|
||
<p>Vous trouverez la liste compl<EFBFBD>te des algorithmes RSA & DH
|
||
sp<EFBFBD>cifiques <EFBFBD> SSL dans la <a href="#table2">Table 2</a>.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLCipherSuite RSA:!EXP:!NULL:+HIGH:+MEDIUM:-LOW</pre>
|
||
</div>
|
||
<table class="bordered">
|
||
|
||
<tr><th><a name="table2">Symbole algorithme</a></th> <th>Protocole</th>
|
||
<th>Echange de cl<EFBFBD>s</th> <th>Authentification</th> <th>Chiffrement</th>
|
||
<th>Condens<6E> MAC</th> <th>Type</th> </tr>
|
||
<tr><td colspan="7"><em>Algorithmes RSA :</em></td></tr>
|
||
<tr><td><code>DES-CBC3-SHA</code></td> <td>SSLv3</td> <td>RSA</td> <td>RSA</td> <td>3DES(168)</td> <td>SHA1</td> <td /> </tr>
|
||
<tr><td><code>IDEA-CBC-SHA</code></td> <td>SSLv3</td> <td>RSA</td> <td>RSA</td> <td>IDEA(128)</td> <td>SHA1</td> <td /> </tr>
|
||
<tr><td><code>RC4-SHA</code></td> <td>SSLv3</td> <td>RSA</td> <td>RSA</td> <td>RC4(128)</td> <td>SHA1</td> <td /> </tr>
|
||
<tr><td><code>RC4-MD5</code></td> <td>SSLv3</td> <td>RSA</td> <td>RSA</td> <td>RC4(128)</td> <td>MD5</td> <td /> </tr>
|
||
<tr><td><code>DES-CBC-SHA</code></td> <td>SSLv3</td> <td>RSA</td> <td>RSA</td> <td>DES(56)</td> <td>SHA1</td> <td /> </tr>
|
||
<tr><td><code>EXP-DES-CBC-SHA</code></td> <td>SSLv3</td> <td>RSA(512)</td> <td>RSA</td> <td>DES(40)</td> <td>SHA1</td> <td> export</td> </tr>
|
||
<tr><td><code>EXP-RC2-CBC-MD5</code></td> <td>SSLv3</td> <td>RSA(512)</td> <td>RSA</td> <td>RC2(40)</td> <td>MD5</td> <td> export</td> </tr>
|
||
<tr><td><code>EXP-RC4-MD5</code></td> <td>SSLv3</td> <td>RSA(512)</td> <td>RSA</td> <td>RC4(40)</td> <td>MD5</td> <td> export</td> </tr>
|
||
<tr><td><code>NULL-SHA</code></td> <td>SSLv3</td> <td>RSA</td> <td>RSA</td> <td>None</td> <td>SHA1</td> <td /> </tr>
|
||
<tr><td><code>NULL-MD5</code></td> <td>SSLv3</td> <td>RSA</td> <td>RSA</td> <td>None</td> <td>MD5</td> <td /> </tr>
|
||
<tr><td colspan="7"><em>Algorithmes Diffie-Hellman :</em></td></tr>
|
||
<tr><td><code>ADH-DES-CBC3-SHA</code></td> <td>SSLv3</td> <td>DH</td> <td>None</td> <td>3DES(168)</td> <td>SHA1</td> <td /> </tr>
|
||
<tr><td><code>ADH-DES-CBC-SHA</code></td> <td>SSLv3</td> <td>DH</td> <td>None</td> <td>DES(56)</td> <td>SHA1</td> <td /> </tr>
|
||
<tr><td><code>ADH-RC4-MD5</code></td> <td>SSLv3</td> <td>DH</td> <td>None</td> <td>RC4(128)</td> <td>MD5</td> <td /> </tr>
|
||
<tr><td><code>EDH-RSA-DES-CBC3-SHA</code></td> <td>SSLv3</td> <td>DH</td> <td>RSA</td> <td>3DES(168)</td> <td>SHA1</td> <td /> </tr>
|
||
<tr><td><code>EDH-DSS-DES-CBC3-SHA</code></td> <td>SSLv3</td> <td>DH</td> <td>DSS</td> <td>3DES(168)</td> <td>SHA1</td> <td /> </tr>
|
||
<tr><td><code>EDH-RSA-DES-CBC-SHA</code></td> <td>SSLv3</td> <td>DH</td> <td>RSA</td> <td>DES(56)</td> <td>SHA1</td> <td /> </tr>
|
||
<tr><td><code>EDH-DSS-DES-CBC-SHA</code></td> <td>SSLv3</td> <td>DH</td> <td>DSS</td> <td>DES(56)</td> <td>SHA1</td> <td /> </tr>
|
||
<tr><td><code>EXP-EDH-RSA-DES-CBC-SHA</code></td> <td>SSLv3</td> <td>DH(512)</td> <td>RSA</td> <td>DES(40)</td> <td>SHA1</td> <td> export</td> </tr>
|
||
<tr><td><code>EXP-EDH-DSS-DES-CBC-SHA</code></td> <td>SSLv3</td> <td>DH(512)</td> <td>DSS</td> <td>DES(40)</td> <td>SHA1</td> <td> export</td> </tr>
|
||
<tr><td><code>EXP-ADH-DES-CBC-SHA</code></td> <td>SSLv3</td> <td>DH(512)</td> <td>None</td> <td>DES(40)</td> <td>SHA1</td> <td> export</td> </tr>
|
||
<tr><td><code>EXP-ADH-RC4-MD5</code></td> <td>SSLv3</td> <td>DH(512)</td> <td>None</td> <td>RC4(40)</td> <td>MD5</td> <td> export</td> </tr>
|
||
</table>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslcompression" id="sslcompression">Directive</a> <a name="SSLCompression" id="SSLCompression">SSLCompression</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Permet d'activer la compression au niveau SSL</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLCompression on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLCompression off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <EFBFBD> partir de la version 2.4.3 du serveur HTTP
|
||
Apache, si on utilise une version d'OpenSSL 0.9.8 ou sup<EFBFBD>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<EFBFBD>rieure. La valeur par
|
||
d<EFBFBD>faut <EFBFBD>tait <code>on</code> dans la version 2.4.3.</td></tr>
|
||
</table>
|
||
<p>Cette directive permet d'activer la compression au niveau SSL.</p>
|
||
<div class="warning">
|
||
<p>L'activation de la compression est <EFBFBD> l'origine de probl<EFBFBD>mes de
|
||
s<EFBFBD>curit<EFBFBD> dans la plupart des configurations (l'attaque nomm<EFBFBD>e CRIME).</p>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslcryptodevice" id="sslcryptodevice">Directive</a> <a name="SSLCryptoDevice" id="SSLCryptoDevice">SSLCryptoDevice</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active l'utilisation d'un acc<EFBFBD>l<EFBFBD>rateur mat<EFBFBD>riel de
|
||
chiffrement</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLCryptoDevice <em>moteur</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLCryptoDevice builtin</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet d'activer l'utilisation d'une carte acc<EFBFBD>l<EFBFBD>ratrice
|
||
de chiffrement qui prendra en compte certaines parties du traitement
|
||
relatif <EFBFBD> SSL. Cette directive n'est utilisable que si la bo<EFBFBD>te <EFBFBD>
|
||
outils SSL <EFBFBD> <EFBFBD>t<EFBFBD> compil<EFBFBD>e avec le support "engine" ; les versions 0.9.7
|
||
et sup<EFBFBD>rieures d'OpenSSL poss<EFBFBD>dent par d<EFBFBD>faut le support "engine", alors
|
||
qu'avec la version 0.9.6, il faut utiliser les distributions s<EFBFBD>par<EFBFBD>es
|
||
"-engine".</p>
|
||
|
||
<p>Pour d<EFBFBD>terminer les moteurs support<EFBFBD>s, ex<EFBFBD>cutez la commande
|
||
"<code>openssl engine</code>".</p>
|
||
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config"># Pour un acc<EFBFBD>l<EFBFBD>rateur Broadcom :
|
||
SSLCryptoDevice ubsec</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslengine" id="sslengine">Directive</a> <a name="SSLEngine" id="SSLEngine">SSLEngine</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Interrupteur marche/arr<72>t du moteur SSL</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLEngine on|off|optional|addr[:port] [addr[:port]] ...</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLEngine off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Le param<EFBFBD>tre <code>addr:port</code> est disponible <EFBFBD> partir de la
|
||
version 2.4.30 du serveur HTTP Apache.</td></tr>
|
||
</table>
|
||
<p> Cette directive permet d'activer/d<>sactiver le moteur du protocole SSL/TLS.
|
||
Les valeurs 'on', 'off' et 'optional' doivent <EFBFBD>tre utilis<EFBFBD>es dans une section
|
||
<code class="directive"><a href="../mod/core.html#virtualhost"><VirtualHost></a></code> pour activer
|
||
SSL/TLS pour ce serveur virtuel particulier. Par d<EFBFBD>faut, le moteur du protocole
|
||
SSL/TLS est d<EFBFBD>sactiv<EFBFBD> pour le serveur principal et tous les serveurs virtuels
|
||
configur<EFBFBD>s.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config"><VirtualHost _default_:443>
|
||
SSLEngine on
|
||
#...
|
||
</VirtualHost></pre>
|
||
</div>
|
||
<p>Le param<EFBFBD>tre <code>addr:port</code> doit <EFBFBD>tre d<EFBFBD>fini au niveau de la
|
||
configuration g<EFBFBD>n<EFBFBD>rale afin d'activer le moteur du protocole SSL/TLS pour
|
||
<em>tous</em> les <code class="directive"><a href="../mod/core.html#virtualhost"><VirtualHost></a></code>s qui correspondent <EFBFBD> une des adresses de
|
||
la liste.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLEngine *:443
|
||
<VirtualHost *:443>
|
||
#...
|
||
</VirtualHost></pre>
|
||
</div>
|
||
<p><code class="directive">SSLEngine</code> peut <EFBFBD>tre d<EFBFBD>finie <EFBFBD> <code>optional</code>,
|
||
ce qui active le support de <a href="http://www.ietf.org/rfc/rfc2817.txt">RFC
|
||
2817</a>.
|
||
</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslfips" id="sslfips">Directive</a> <a name="SSLFIPS" id="SSLFIPS">SSLFIPS</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Coimmutateur du mode SSL FIPS</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLFIPS on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLFIPS off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet d'activer/d<>sactiver l'utilisation du drapeau
|
||
FIPS_mode de la biblioth<EFBFBD>que SSL. Elle doit <EFBFBD>tre d<EFBFBD>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 <EFBFBD> toutes les op<EFBFBD>rations de la biblioth<EFBFBD>que SSL.
|
||
</p>
|
||
<p>
|
||
Si httpd a <EFBFBD>t<EFBFBD> compil<EFBFBD> avec une biblioth<EFBFBD>que SSL qui ne supporte pas le
|
||
drapeau FIPS_mode, la directive <code>SSLFIPS on</code> <EFBFBD>chouera.
|
||
Reportez-vous au document sur la politique de s<EFBFBD>curit<EFBFBD> FIPS 140-2 de la
|
||
biblioth<EFBFBD>que du fournisseur SSL, pour les pr<EFBFBD>requis sp<EFBFBD>cifiques
|
||
n<EFBFBD>cessaires <EFBFBD> l'utilisation de mod_ssl selon un mode d'op<6F>ration
|
||
approuv<EFBFBD> par FIPS 140-2 ; notez que mod_ssl en lui-m<>me n'est pas
|
||
valid<EFBFBD>, mais peut <EFBFBD>tre d<EFBFBD>crit comme utilisant un module de chiffrement
|
||
valid<EFBFBD> par FIPS 140-2, lorsque tous les composants sont assembl<EFBFBD>s et mis
|
||
en oeuvre selon les recommandations de la politique de s<EFBFBD>curit<EFBFBD>
|
||
applicable.
|
||
</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslhonorcipherorder" id="sslhonorcipherorder">Directive</a> <a name="SSLHonorCipherOrder" id="SSLHonorCipherOrder">SSLHonorCipherOrder</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Option permettant de classer les algorithmes de chiffrement
|
||
du serveur par ordre de pr<EFBFBD>f<EFBFBD>rence</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLHonorCipherOrder on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLHonorCipherOrder off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>Normalement, ce sont les pr<EFBFBD>f<EFBFBD>rences du client qui sont prises en
|
||
compte lors du choix d'un algorithme de chiffrement au cours d'une
|
||
n<EFBFBD>gociation SSLv3 ou TLSv1. Si cette directive est activ<EFBFBD>e, ce sont les
|
||
pr<EFBFBD>f<EFBFBD>rences du serveur qui seront prises en compte <EFBFBD> la place.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLHonorCipherOrder on</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslinsecurerenegotiation" id="sslinsecurerenegotiation">Directive</a> <a name="SSLInsecureRenegotiation" id="SSLInsecureRenegotiation">SSLInsecureRenegotiation</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Option permettant d'activer le support de la ren<EFBFBD>gociation
|
||
non s<EFBFBD>curis<EFBFBD>e</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLInsecureRenegotiation on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLInsecureRenegotiation off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible si une version 0.9.8m
|
||
ou sup<EFBFBD>rieure d'OpenSSL est utilis<EFBFBD>e</td></tr>
|
||
</table>
|
||
<p>Comme il a <EFBFBD>t<EFBFBD> sp<EFBFBD>cifi<EFBFBD>, toutes les versions des protocoles SSL et
|
||
TLS (jusqu'<27> la version 1.2 de TLS incluse) <EFBFBD>taient vuln<EFBFBD>rables <EFBFBD> une
|
||
attaque de type Man-in-the-Middle (<a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2009-3555">CVE-2009-3555</a>)
|
||
au cours d'une ren<EFBFBD>gociation. Cette vuln<EFBFBD>rabilit<EFBFBD> permettait <EFBFBD> un
|
||
attaquant de pr<EFBFBD>fixer la requ<EFBFBD>te HTTP (telle qu'elle <EFBFBD>tait vue du
|
||
serveur) avec un texte choisi. Une extension du protocole a <EFBFBD>t<EFBFBD>
|
||
d<EFBFBD>velopp<EFBFBD>e pour corriger cette vuln<EFBFBD>rabilit<EFBFBD>, sous r<EFBFBD>serve qu'elle soit
|
||
support<EFBFBD>e par le client et le serveur.</p>
|
||
|
||
<p>Si <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> est li<EFBFBD> <EFBFBD> une version 0.9.8m ou
|
||
sup<EFBFBD>rieure d'OpenSSL, par d<EFBFBD>faut, la ren<EFBFBD>gociation n'est accord<EFBFBD>e qu'aux
|
||
clients qui supportent la nouvelle extension du protocole. Si
|
||
cette directive est activ<EFBFBD>e, la ren<EFBFBD>gociation sera accord<EFBFBD>e aux anciens
|
||
clients (non patch<EFBFBD>s), quoique de mani<EFBFBD>re non s<EFBFBD>curis<EFBFBD>e</p>
|
||
|
||
<div class="warning"><h3>Avertissement <EFBFBD> propos de la s<EFBFBD>curit<EFBFBD></h3>
|
||
<p>Si cette directive est activ<EFBFBD>e, les connexions SSL seront vuln<EFBFBD>rables
|
||
aux attaques de type pr<EFBFBD>fixe Man-in-the-Middle comme d<EFBFBD>crit dans <a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2009-3555">CVE-2009-3555</a>.</p>
|
||
</div>
|
||
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLInsecureRenegotiation on</pre>
|
||
</div>
|
||
|
||
<p>La variable d'environnement <code>SSL_SECURE_RENEG</code> peut <EFBFBD>tre
|
||
utilis<EFBFBD>e dans un script SSI ou CGI pour d<EFBFBD>terminer si la ren<EFBFBD>gociation
|
||
s<EFBFBD>curis<EFBFBD>e est support<EFBFBD>e pour une connexion SSL donn<EFBFBD>e.</p>
|
||
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslocspdefaultresponder" id="sslocspdefaultresponder">Directive</a> <a name="SSLOCSPDefaultResponder" id="SSLOCSPDefaultResponder">SSLOCSPDefaultResponder</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D<>finit l'URI du r<EFBFBD>pondeur par d<EFBFBD>faut pour la validation
|
||
OCSP</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLOCSDefaultResponder <em>uri</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>Cette directive permet de d<EFBFBD>finir le r<EFBFBD>pondeur OCSP par d<EFBFBD>faut. Si la
|
||
directive <code class="directive"><a href="#sslocspoverrideresponder">SSLOCSPOverrideResponder</a></code> n'est pas activ<EFBFBD>e,
|
||
l'URI sp<EFBFBD>cifi<EFBFBD> ne sera utilis<EFBFBD> que si aucun URI de r<EFBFBD>pondeur n'est
|
||
sp<EFBFBD>cifi<EFBFBD> dans le certificat en cours de v<EFBFBD>rification.</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslocspenable" id="sslocspenable">Directive</a> <a name="SSLOCSPEnable" id="SSLOCSPEnable">SSLOCSPEnable</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active la validation OCSP de la cha<EFBFBD>ne de certificats du
|
||
client</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLOCSPEnable on|leaf|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLOCSPEnable off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>Cette directive permet d'activer la validation OCSP de la cha<EFBFBD>ne de
|
||
certificats du client. Si elle est activ<EFBFBD>e, les certificats de la cha<EFBFBD>ne
|
||
de certificats du client seront valid<EFBFBD>s aupr<EFBFBD>s d'un r<EFBFBD>pondeur OCSP, une
|
||
fois la v<EFBFBD>rification normale effectu<EFBFBD>e (v<>rification des CRLs
|
||
incluse). En mode 'leaf', seul le certificat du client sera valid<EFBFBD>.</p>
|
||
|
||
<p>Le r<EFBFBD>pondeur OCSP utilis<EFBFBD> est soit extrait du certificat lui-m<>me,
|
||
soit sp<EFBFBD>cifi<EFBFBD> dans la configuration ; voir les directives <code class="directive"><a href="#sslocspdefaultresponder">SSLOCSPDefaultResponder</a></code> et <code class="directive"><a href="#sslocspoverrideresponder">SSLOCSPOverrideResponder</a></code>.</p>
|
||
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLVerifyClient on
|
||
SSLOCSPEnable on
|
||
SSLOCSPDefaultResponder "http://responder.example.com:8888/responder"
|
||
SSLOCSPOverrideResponder on</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslocspnoverify" id="sslocspnoverify">Directive</a> <a name="SSLOCSPNoverify" id="SSLOCSPNoverify">SSLOCSPNoverify</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Evite la v<EFBFBD>rification des certificats des r<EFBFBD>pondeurs OCSP</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLOCSPNoverify <em>On/Off</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLOCSPNoverify Off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <EFBFBD> partir de la version 2.4.26 du serveur HTTP Apache,
|
||
sous r<EFBFBD>serve d'utiliser une version 0.9.7 ou sup<EFBFBD>rieure d'OpenSSL</td></tr>
|
||
</table>
|
||
<p>Cette directive permet d'<27>viter la v<EFBFBD>rification des certificats
|
||
des r<EFBFBD>pondeurs OCSP, ce qui peut s'av<61>rer utile lorsqu'on teste un serveur OCSP.</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslocspoverrideresponder" id="sslocspoverrideresponder">Directive</a> <a name="SSLOCSPOverrideResponder" id="SSLOCSPOverrideResponder">SSLOCSPOverrideResponder</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Force l'utilisation de l'URI du r<EFBFBD>pondeur par d<EFBFBD>faut pour
|
||
la validation OCSP</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLOCSPOverrideResponder on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLOCSPOverrideResponder off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>Force l'utilisation, au cours d'une validation OCSP de certificat, du
|
||
r<EFBFBD>pondeur OCSP par d<EFBFBD>faut sp<EFBFBD>cifi<EFBFBD> dans la configuration, que le
|
||
certificat en cours de v<EFBFBD>rification fasse mention d'un r<EFBFBD>pondeur OCSP ou
|
||
non.</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslocspproxyurl" id="sslocspproxyurl">Directive</a> <a name="SSLOCSPProxyURL" id="SSLOCSPProxyURL">SSLOCSPProxyURL</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Adresse de mandataire <EFBFBD> utiliser pour les requ<EFBFBD>tes OCSP</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLOCSPProxyURL <em>url</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <EFBFBD> partir de la version 2.4.19 du serveur HTTP Apache</td></tr>
|
||
</table>
|
||
<p>Cette directive permet de d<EFBFBD>finir l'URL d'un mandataire HTTP qui devra <EFBFBD>tre
|
||
utilis<EFBFBD> pour toutes les requ<EFBFBD>tes vers un r<EFBFBD>pondeur OCSP.</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslocsprespondercertificatefile" id="sslocsprespondercertificatefile">Directive</a> <a name="SSLOCSPResponderCertificateFile" id="SSLOCSPResponderCertificateFile">SSLOCSPResponderCertificateFile</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Fournit un jeu de certificats de confiance du r<EFBFBD>pondeur OCSP avec
|
||
encodage PEM</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLOCSPResponderCertificateFile <em>file</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <EFBFBD> partir de la version 2.4.26 du serveur HTTP Apache,
|
||
sous r<EFBFBD>serve d'utiliser une version 0.9.7 ou sup<EFBFBD>rieure d'OpenSSL</td></tr>
|
||
</table>
|
||
<p>Cette directive permet de d<EFBFBD>finir un fichier contenant une liste de
|
||
certificats de confiance du r<EFBFBD>pondeur OCSP <EFBFBD> utiliser au cours de la validation
|
||
du certificat du r<EFBFBD>pondeur OCSP. Les certificats fournis peuvent
|
||
<EFBFBD>tre consid<EFBFBD>r<EFBFBD>s comme de confiance sans avoir <EFBFBD> effectuer de v<EFBFBD>rifications
|
||
suppl<EFBFBD>mentaires. Ce processus de validation du certificat du r<EFBFBD>pondeur OCSP
|
||
intervient en g<EFBFBD>n<EFBFBD>ral lorsque ce dernier est autosign<EFBFBD> ou tout simplement absent
|
||
de la r<EFBFBD>ponse OCSP.</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslocsprespondertimeout" id="sslocsprespondertimeout">Directive</a> <a name="SSLOCSPResponderTimeout" id="SSLOCSPResponderTimeout">SSLOCSPResponderTimeout</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D<>lai d'attente pour les requ<EFBFBD>tes OCSP</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLOCSPResponderTimeout <em>secondes</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLOCSPResponderTimeout 10</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>Cette option permet de d<EFBFBD>finir le d<EFBFBD>lai d'attente pour les requ<EFBFBD>tes <EFBFBD>
|
||
destination des r<EFBFBD>pondeurs OCSP, lorsque la directive <code class="directive"><a href="#sslocspenable">SSLOCSPEnable</a></code> est <EFBFBD> on.</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslocspresponsemaxage" id="sslocspresponsemaxage">Directive</a> <a name="SSLOCSPResponseMaxAge" id="SSLOCSPResponseMaxAge">SSLOCSPResponseMaxAge</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Age maximum autoris<EFBFBD> pour les r<EFBFBD>ponses OCSP</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLOCSPResponseMaxAge <em>secondes</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLOCSPResponseMaxAge -1</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>Cette option permet de d<EFBFBD>finir l'<27>ge maximum autoris<EFBFBD> (la
|
||
"fraicheur") des r<EFBFBD>ponses OCSP. La valeur par d<EFBFBD>fault (<code>-1</code>)
|
||
signifie qu'aucun <EFBFBD>ge maximum n'est d<EFBFBD>finit ; autrement dit, les
|
||
r<EFBFBD>ponses OCSP sont consid<EFBFBD>r<EFBFBD>es comme valides tant que la valeur de leur
|
||
champ <code>nextUpdate</code> se situe dans le futur.</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslocspresponsetimeskew" id="sslocspresponsetimeskew">Directive</a> <a name="SSLOCSPResponseTimeSkew" id="SSLOCSPResponseTimeSkew">SSLOCSPResponseTimeSkew</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D<>rive temporelle maximale autoris<EFBFBD>e pour la validation des
|
||
r<EFBFBD>ponses OCSP</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLOCSPResponseTimeSkew <em>secondes</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLOCSPResponseTimeSkew 300</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>Cette option permet de d<EFBFBD>finir la d<EFBFBD>rive temporelle maximale
|
||
autoris<EFBFBD>e pour les r<EFBFBD>ponses OCSP (lors de la v<EFBFBD>rification des champs
|
||
<code>thisUpdate</code> et <code>nextUpdate</code>).</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslocspuserequestnonce" id="sslocspuserequestnonce">Directive</a> <a name="SSLOCSPUseRequestNonce" id="SSLOCSPUseRequestNonce">SSLOCSPUseRequestNonce</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Utilisation d'un nombre <EFBFBD> usage unique au sein des requ<EFBFBD>tes
|
||
OCSP</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLOCSPUseRequestNonce on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLOCSPUseRequestNonce on</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <EFBFBD> partir de la version 2.4.10 du serveur HTTP
|
||
Apache</td></tr>
|
||
</table>
|
||
<p>Cette directive permet de sp<EFBFBD>cifier si les requ<EFBFBD>tes vers les
|
||
r<EFBFBD>pondeurs OCSP doivent contenir un nombre <EFBFBD> usage unique ou non. Par
|
||
d<EFBFBD>faut, un nombre <EFBFBD> usage unique est toujours pr<EFBFBD>sent dans les requ<EFBFBD>tes
|
||
et il est compar<EFBFBD> <EFBFBD> celui de la r<EFBFBD>ponse. Lorsque le r<EFBFBD>pondeur n'utilise pas de
|
||
nombre <EFBFBD> usage unique (comme Microsoft OCSP Responder), cette directive
|
||
doit <EFBFBD>tre d<EFBFBD>finie <EFBFBD> <code>off</code>.</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslopensslconfcmd" id="sslopensslconfcmd">Directive</a> <a name="SSLOpenSSLConfCmd" id="SSLOpenSSLConfCmd">SSLOpenSSLConfCmd</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Configuration des param<EFBFBD>tres d'OpenSSL via son API <em>SSL_CONF</em></td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLOpenSSLConfCmd <em>commande</em> <em>valeur</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible depuis la version 2.4.8 du serveur HTTP
|
||
Apache avec OpenSSL 1.0.2 ou sup<EFBFBD>rieur</td></tr>
|
||
</table>
|
||
<p>Cette directive permet <EFBFBD> mod_ssl d'acc<63>der <EFBFBD> l'API <em>SSL_CONF</em>
|
||
d'OpenSSL. Il n'est ainsi plus n<EFBFBD>cessaire d'impl<70>menter des
|
||
directives suppl<EFBFBD>mentaires pour <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> lorsque de nouvelles
|
||
fonctionnalit<EFBFBD>s sont ajout<EFBFBD>es <EFBFBD> OpenSSL, ce qui rend la configuration de
|
||
ce dernier beaucoup plus souple.</p>
|
||
|
||
<p>Le jeu de commandes disponibles pour la directive
|
||
<code class="directive">SSLOpenSSLConfCmd</code> d<EFBFBD>pend de la version d'OpenSSL
|
||
utilis<EFBFBD>e pour <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> (la version minimale 1.0.2 est un
|
||
pr<EFBFBD>requis). Pour obtenir la liste des commandes support<EFBFBD>es, voir la
|
||
section <em>Supported configuration file commands</em> de la page de
|
||
manuel d'OpenSSL <a href="http://www.openssl.org/docs/man1.0.2/ssl/SSL_CONF_cmd.html#SUPPORTED-CONFIGURATION-FILE-COMMANDS">SSL_CONF_cmd(3)</a>.</p>
|
||
|
||
<p>Certaines commandes peuvent remplacer des directives existantes
|
||
(comme <code class="directive"><a href="#sslciphersuite">SSLCipherSuite</a></code> ou
|
||
<code class="directive"><a href="#sslprotocol">SSLProtocol</a></code>) ; notez cependant
|
||
que la syntaxe et/ou les valeurs possibles peuvent diff<EFBFBD>rer.</p>
|
||
|
||
<div class="example"><h3>Examples</h3><pre class="prettyprint lang-config">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</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="ssloptions" id="ssloptions">Directive</a> <a name="SSLOptions" id="SSLOptions">SSLOptions</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Configure diff<EFBFBD>rentes options d'ex<65>cution du moteur
|
||
SSL</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLOptions [+|-]<em>option</em> ...</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r<EFBFBD>pertoire, .htaccess</td></tr>
|
||
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>Options</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de contr<EFBFBD>ler diff<EFBFBD>rentes options d'ex<65>cution du
|
||
moteur SSL dans un contexte de r<EFBFBD>pertoire. Normalement, si plusieurs
|
||
<code>SSLOptions</code> peuvent s'appliquer <EFBFBD> un r<EFBFBD>pertoire, c'est la
|
||
plus sp<EFBFBD>cifique qui est v<EFBFBD>ritablement prise en compte ; les options ne
|
||
se combinent pas entre elles. Elles se combinent cependant entre elles
|
||
si elles sont <em>toutes</em> pr<EFBFBD>c<EFBFBD>d<EFBFBD>es par un symbole plus
|
||
(<code>+</code>) ou moins (<code>-</code>). Toute option pr<EFBFBD>c<EFBFBD>d<EFBFBD>e d'un
|
||
<code>+</code> est ajout<EFBFBD>e aux options actuellement en vigueur, et toute
|
||
option pr<EFBFBD>c<EFBFBD>d<EFBFBD>e d'un <code>-</code> est supprim<EFBFBD>e de ces m<EFBFBD>mes
|
||
options.
|
||
</p>
|
||
<p>
|
||
Les <em>option</em>s disponibles sont :</p>
|
||
<ul>
|
||
<li><code>StdEnvVars</code>
|
||
<p>
|
||
Lorsque cette option est activ<EFBFBD>e, le jeu standard de variables
|
||
d'environnement SSL relatives <EFBFBD> CGI/SSI est cr<EFBFBD><EFBFBD>. Cette option est
|
||
d<EFBFBD>sactiv<EFBFBD>e par d<EFBFBD>faut pour des raisons de performances, car
|
||
l'extraction des informations constitue une op<EFBFBD>ration assez co<EFBFBD>teuse
|
||
en ressources. On n'active donc en g<EFBFBD>n<EFBFBD>ral cette option que pour les
|
||
requ<EFBFBD>tes CGI et SSI.</p>
|
||
</li>
|
||
<li><code>ExportCertData</code>
|
||
<p>
|
||
Lorsque cette option est activ<EFBFBD>e, des variables d'environnement
|
||
CGI/SSI suppl<EFBFBD>mentaires sont cr<EFBFBD><EFBFBD>es : <code>SSL_SERVER_CERT</code>,
|
||
<code>SSL_CLIENT_CERT</code> et
|
||
<code>SSL_CLIENT_CERT_CHAIN_</code><em>n</em> (avec <em>n</em> =
|
||
0,1,2,..). Elles contiennent les certificats X.509 cod<EFBFBD>s en PEM du
|
||
serveur et du client pour la connexion HTTPS courante, et peuvent
|
||
<EFBFBD>tre utilis<EFBFBD>es par les scripts CGI pour une v<EFBFBD>rification de
|
||
certificat plus <EFBFBD>labor<EFBFBD>e. De plus, tous les autres certificats de la
|
||
cha<EFBFBD>ne de certificats du client sont aussi fournis. Tout ceci gonfle
|
||
un peu l'environnement, et c'est la raison pour laquelle vous ne
|
||
devez activer cette option qu'<27> la demande.</p>
|
||
</li>
|
||
<li><code>FakeBasicAuth</code>
|
||
<p>
|
||
Lorsque cette option est activ<EFBFBD>e, le Nom Distinctif (DN) sujet du
|
||
certificat client X509 est traduit en un nom d'utilisateur pour
|
||
l'autorisation HTTP de base. Cela signifie que les m<EFBFBD>thodes
|
||
d'authentification standard d'Apache peuvent <EFBFBD>tre utilis<EFBFBD>es pour le
|
||
contr<EFBFBD>le d'acc<63>s. Le nom d'utilisateur est tout simplement le Sujet
|
||
du certificat X509 du client (il peut <EFBFBD>tre d<EFBFBD>termin<EFBFBD> en utilisant la
|
||
commande OpenSSL <code>openssl x509</code> : <code>openssl x509
|
||
-noout -subject -in </code><em>certificat</em><code>.crt</code>). La
|
||
directive optionnelle <code class="directive"><a href="#sslusername">SSLUserName</a></code> permet de sp<EFBFBD>cifier quelle
|
||
partie du sujet du certificat est incluse dans le nom d'utilisateur.
|
||
Notez qu'aucun mot de passe n'est envoy<EFBFBD> par l'utilisateur. Chaque
|
||
entr<EFBFBD>e du fichier des utilisateurs doit comporter ce mot de passe :
|
||
``<code>xxj31ZMTZzkVA</code>'', qui est la version chiffr<EFBFBD>e en DES
|
||
du mot ``<code>password</code>''. Ceux qui travaillent avec un
|
||
chiffrement bas<EFBFBD> sur MD5 (par exemple sous FreeBSD ou BSD/OS,
|
||
etc...) doivent utiliser le condens<EFBFBD> MD5 suivant pour le m<EFBFBD>me mot :
|
||
``<code>$1$OXLyS...$Owx8s2/m9/gfkcRVXzgoE/</code>''.</p>
|
||
|
||
<p>Notez que la directive <code class="directive"><a href="../mod/mod_auth_basic.html#authbasicfake">AuthBasicFake</a></code> du module
|
||
<code class="module"><a href="../mod/mod_auth_basic.html">mod_auth_basic</a></code> permet de contr<EFBFBD>ler <EFBFBD> la
|
||
fois le nom d'utilisateur et le mot de passe ; elle fournit donc un
|
||
m<EFBFBD>canisme plus g<EFBFBD>n<EFBFBD>ral de simulation d'authentification de base.</p>
|
||
|
||
<div class="warning">
|
||
<p>Les noms d'utilisateur pour <code>FakeBasicAuth</code> ne doivent pas
|
||
contenir de caract<EFBFBD>res non-ASCII, de caract<EFBFBD>res d'<27>chappement ASCII (comme
|
||
newline), ou de caract<EFBFBD>re ':'. A partir de la version 2.5.1 de httpd, si
|
||
un caract<EFBFBD>re ':' est rencontr<EFBFBD>, une erreur 403 Forbidden sera g<EFBFBD>n<EFBFBD>r<EFBFBD>e.</p>
|
||
</div>
|
||
</li>
|
||
<li><code>StrictRequire</code>
|
||
<p>
|
||
Cette option <em>force</em> l'interdiction d'acc<63>s lorsque
|
||
<code>SSLRequireSSL</code> ou <code>SSLRequire</code> a d<EFBFBD>cid<EFBFBD> que
|
||
l'acc<63>s devait <EFBFBD>tre interdit. Par d<EFBFBD>faut, dans le cas o<EFBFBD>
|
||
une directive ``<code>Satisfy any</code>'' est utilis<EFBFBD>e, et si
|
||
d'autres restrictions d'acc<63>s ont <EFBFBD>t<EFBFBD> franchies, on passe en g<EFBFBD>n<EFBFBD>ral
|
||
outre l'interdiction d'acc<63>s due <EFBFBD> <code>SSLRequireSSL</code> ou
|
||
<code>SSLRequire</code> (parce que c'est ainsi que le m<EFBFBD>canisme
|
||
<code>Satisfy</code> d'Apache doit fonctionner). Pour des
|
||
restrictions d'acc<63>s plus strictes, vous pouvez cependant utiliser
|
||
<code>SSLRequireSSL</code> et/ou <code>SSLRequire</code> en
|
||
combinaison avec une option ``<code>SSLOptions
|
||
+StrictRequire</code>''. Une directive ``<code>Satisfy Any</code>''
|
||
n'a alors aucune chance d'autoriser l'acc<63>s si mod_ssl a d<EFBFBD>cid<EFBFBD> de
|
||
l'interdire.</p>
|
||
</li>
|
||
<li><code>OptRenegotiate</code>
|
||
<p>
|
||
Cette option active la gestion optimis<EFBFBD>e de la ren<EFBFBD>gociation des
|
||
connexions SSL intervenant lorsque les directives SSL sont utilis<EFBFBD>es
|
||
dans un contexte de r<EFBFBD>pertoire. Par d<EFBFBD>faut un sch<EFBFBD>ma strict est
|
||
appliqu<EFBFBD>, et <em>chaque</em> reconfiguration des param<EFBFBD>tres SSL au
|
||
niveau du r<EFBFBD>pertoire implique une phase de ren<EFBFBD>gociation SSL
|
||
<em>compl<70>te</em>. Avec cette option, mod_ssl essaie d'<27>viter les
|
||
<EFBFBD>changes non n<EFBFBD>cessaires en effectuant des v<EFBFBD>rifications de
|
||
param<EFBFBD>tres plus granulaires (mais tout de m<EFBFBD>me efficaces).
|
||
N<EFBFBD>anmoins, ces v<EFBFBD>rifications granulaires peuvent ne pas correspondre
|
||
<EFBFBD> ce qu'attend l'utilisateur, et il est donc recommand<EFBFBD> de n'activer
|
||
cette option que dans un contexte de r<EFBFBD>pertoire.</p>
|
||
</li>
|
||
<li><code>LegacyDNStringFormat</code>
|
||
<p>
|
||
Cette option permet d'agir sur la mani<EFBFBD>re dont les valeurs des
|
||
variables <code>SSL_{CLIENT,SERVER}_{I,S}_DN</code> sont format<EFBFBD>es.
|
||
Depuis la version 2.3.11, Apache HTTPD utilise par d<EFBFBD>faut un format
|
||
compatible avec la RFC 2253. Ce format utilise des virgules comme
|
||
d<EFBFBD>limiteurs entre les attributs, permet l'utilisation de caract<EFBFBD>res
|
||
non-ASCII (qui sont alors convertis en UTF8), <EFBFBD>chappe certains
|
||
caract<EFBFBD>res sp<EFBFBD>ciaux avec des slashes invers<EFBFBD>s, et trie les attributs
|
||
en pla<EFBFBD>ant l'attribut "C" en derni<EFBFBD>re position.</p>
|
||
|
||
<p>Si l'option <code>LegacyDNStringFormat</code> est pr<EFBFBD>sente, c'est
|
||
l'ancien format qui sera utilis<EFBFBD> : les attributs sont tri<EFBFBD>s avec
|
||
l'attribut "C" en premi<EFBFBD>re position, les s<EFBFBD>parateurs sont des
|
||
slashes non invers<EFBFBD>s, les caract<EFBFBD>res non-ASCII ne sont pas support<EFBFBD>s
|
||
et le support des caract<EFBFBD>res sp<EFBFBD>ciaux n'est pas fiable.
|
||
</p>
|
||
</li>
|
||
</ul>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLOptions +FakeBasicAuth -StrictRequire
|
||
<Files ~ "\.(cgi|shtml)$">
|
||
SSLOptions +StdEnvVars -ExportCertData
|
||
</Files></pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslpassphrasedialog" id="sslpassphrasedialog">Directive</a> <a name="SSLPassPhraseDialog" id="SSLPassPhraseDialog">SSLPassPhraseDialog</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>M<>thode utilis<EFBFBD>e pour entrer le mot de passe pour les cl<EFBFBD>s
|
||
priv<EFBFBD>es chiffr<EFBFBD>es</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLPassPhraseDialog <em>type</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLPassPhraseDialog builtin</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Lors de son d<EFBFBD>marrage, Apache doit lire les diff<EFBFBD>rents fichiers de
|
||
certificats (voir la directive <code class="directive"><a href="#sslcertificatefile">SSLCertificateFile</a></code>) et de cl<EFBFBD>s priv<EFBFBD>es
|
||
(voir la directive <code class="directive"><a href="#sslcertificatekeyfile">SSLCertificateKeyFile</a></code>) des serveurs
|
||
virtuels o<EFBFBD> SSL est activ<EFBFBD>. Comme, pour des raisons de s<EFBFBD>curit<EFBFBD>, les
|
||
fichiers de cl<EFBFBD>s priv<EFBFBD>es sont en g<EFBFBD>n<EFBFBD>ral chiffr<EFBFBD>s, mod_ssl doit
|
||
demander <EFBFBD> l'administrateur un mot de passe pour d<EFBFBD>chiffrer ces
|
||
fichiers. L'argument <em>type</em> permet de choisir la mani<EFBFBD>re dont
|
||
cette demande peut <EFBFBD>tre formul<EFBFBD>e parmi les trois suivantes :</p>
|
||
<ul>
|
||
<li><code>builtin</code>
|
||
<p>
|
||
C'est la m<EFBFBD>thode par d<EFBFBD>faut, et un dialogue interactive de terminal
|
||
s'ouvre au cours du d<EFBFBD>marrage juste avant qu'Apache ne se d<EFBFBD>tache du
|
||
terminal. A ce moment, l'administrateur doit entrer manuellement un
|
||
mot de passe pour chaque fichier de cl<EFBFBD> priv<EFBFBD>e chiffr<EFBFBD>. Etant donn<EFBFBD>
|
||
qu'il peut y avoir un grand nombre de serveurs virtuels configur<EFBFBD>s
|
||
avec SSL activ<EFBFBD>, le protocole de r<EFBFBD>utilisation suivant est utilis<EFBFBD>
|
||
pour minimiser le dialogue : lorsqu'un fichier de cl<EFBFBD> priv<EFBFBD>e est
|
||
chiffr<EFBFBD>, tous les mots de passe connus (au d<EFBFBD>but, il n'y en a aucun,
|
||
bien entendu) sont essay<EFBFBD>s. Si l'un de ces mots de passe connus
|
||
convient, aucun dialogue ne s'ouvrira pour ce fichier de
|
||
cl<EFBFBD> priv<EFBFBD>e particulier. Si aucun ne convient, un autre mot de passe
|
||
sera demand<EFBFBD> <EFBFBD> partir du terminal et sera mis en m<EFBFBD>moire pour le
|
||
fichier de cl<EFBFBD> priv<EFBFBD>e suivant (pour lequel il pourra <EFBFBD>ventuellement
|
||
<EFBFBD>tre r<EFBFBD>utilis<EFBFBD>).</p>
|
||
<p>
|
||
Cette m<EFBFBD>thode conf<EFBFBD>re <EFBFBD> mod_ssl une grande souplesse (car pour N
|
||
fichiers de cl<EFBFBD> priv<EFBFBD>e chiffr<EFBFBD>s, vous <em>pouvez</em> utiliser N
|
||
mots de passe diff<EFBFBD>rents - mais vous devrez alors tous les fournir,
|
||
bien entendu), tout en minimisant le dialogue de terminal (vous
|
||
pouvez en effet utiliser un seul mot de passe pour les N fichiers de
|
||
cl<EFBFBD> priv<EFBFBD>e et vous n'aurez alors <EFBFBD> l'entrer qu'une seule
|
||
fois).</p></li>
|
||
|
||
<li><code>|/chemin/vers/programme [arguments...]</code>
|
||
|
||
<p>Ce mode permet d'utiliser un programme externe qui va se pr<EFBFBD>senter
|
||
comme une redirection vers un p<EFBFBD>riph<EFBFBD>rique d'entr<74>e particulier ; le
|
||
texte de prompt standard utilis<EFBFBD> pour le mode <code>builtin</code>
|
||
est envoy<EFBFBD> au programme sur <code>stdin</code>, et celui-ci doit
|
||
renvoyer des mots de passe sur <code>stdout</code>. Si
|
||
plusieurs mots de passe sont requis (ou si un mot de passe incorrect
|
||
a <EFBFBD>t<EFBFBD> entr<EFBFBD>), un texte de prompt suppl<EFBFBD>mentaire sera <EFBFBD>crit apr<EFBFBD>s le
|
||
retour du premier mot de passe, et d'autres mots de passe devront
|
||
alors <EFBFBD>tre r<EFBFBD><EFBFBD>crits.</p></li>
|
||
|
||
<li><code>exec:/chemin/vers/programme</code>
|
||
<p>
|
||
Ici, un programme externe est appel<EFBFBD> au d<EFBFBD>marrage du serveur pour
|
||
chaque fichier de cl<EFBFBD> priv<EFBFBD>e chiffr<EFBFBD>. Il est
|
||
appel<EFBFBD> avec un
|
||
argument, une cha<EFBFBD>ne de la forme
|
||
"<code>servername:portnumber:index</code>" (index <EFBFBD>tant un num<EFBFBD>ro
|
||
d'ordre d<EFBFBD>butant 0), qui indique pour quels serveur, port TCP et
|
||
num<EFBFBD>ro de certificat il doit <EFBFBD>crire le mot de
|
||
passe correspondant sur <code>stdout</code>. Le but recherch<EFBFBD> est
|
||
l'ex<65>cution de v<EFBFBD>rifications de s<EFBFBD>curit<EFBFBD> pr<EFBFBD>alables permettant de
|
||
s'assurer que le syst<EFBFBD>me n'est pas victime d'une attaque, et de ne
|
||
fournir le mot de passe que si toutes les v<EFBFBD>rifications ont <EFBFBD>t<EFBFBD>
|
||
effectu<EFBFBD>es avec succ<EFBFBD>s.</p>
|
||
<p>
|
||
Ces v<EFBFBD>rifications de s<EFBFBD>curit<EFBFBD>, ainsi que la mani<EFBFBD>re dont le mot de
|
||
passe est d<EFBFBD>termin<EFBFBD> peuvent <EFBFBD>tre aussi sophistiqu<EFBFBD>s que vous le
|
||
d<EFBFBD>sirez. Mod_ssl ne d<EFBFBD>finit que l'interface : un programme
|
||
ex<EFBFBD>cutable qui <EFBFBD>crit le mot de passe sur <code>stdout</code>. Ni
|
||
plus, ni moins ! Ainsi, si vous <EFBFBD>tes vraiment parano<EFBFBD>aque en mati<EFBFBD>re
|
||
de s<EFBFBD>curit<EFBFBD>, voici votre interface. Tout le reste doit <EFBFBD>tre confi<EFBFBD> <EFBFBD>
|
||
l'administrateur <EFBFBD> titre d'exercice, car les besoins en s<EFBFBD>curit<EFBFBD>
|
||
locale sont tr<EFBFBD>s diff<EFBFBD>rents.</p>
|
||
<p>
|
||
L'algorithme de r<EFBFBD>utilisation est utilis<EFBFBD> ici aussi. En d'autres
|
||
termes, le programme externe n'est appel<EFBFBD> qu'une fois par mot de
|
||
passe unique.</p></li>
|
||
</ul>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLPassPhraseDialog "exec:/usr/local/apache/sbin/pp-filter"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslpolicy" id="sslpolicy">Directive</a> <a name="SSLPolicy" id="SSLPolicy">SSLPolicy</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Applique une politique SSL en la r<EFBFBD>f<EFBFBD>ren<EFBFBD>ant par son nom</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLPolicy <em>name</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <EFBFBD> partir de la version 2.4.30 du serveur HTTP Apache</td></tr>
|
||
</table>
|
||
<p>Cette directive permet d'appliquer le jeu de directives d<EFBFBD>finies au sein
|
||
de la polique SSL de nom 'name' (voir directive <code class="directive"><SSLPolicyDefine></code>) comme configuration <em>de base</em> dans
|
||
le contexte courant. Apache httpd est fourni avec les politiques SSL pr<EFBFBD>d<EFBFBD>finies
|
||
suivantes de Mozilla, l'<27>diteur du navigateur Firefox (<a href="https://wiki.mozilla.org/Security/Server_Side_TLS#Recommended_configurations">description
|
||
d<EFBFBD>taill<EFBFBD>e</a>) :
|
||
</p>
|
||
<ul>
|
||
<li><code>modern</code>: recommand<EFBFBD> lorsque votre serveur est accessible
|
||
depuis internet, fonctionne avec tous les navigateurs modernes, mais les
|
||
anciens navigateurs peuvent avoir des difficult<EFBFBD>s pour se connecter.</li>
|
||
<li><code>intermediate</code>: version d<EFBFBD>grad<EFBFBD>e si vous devez supporter les
|
||
vieux clients (mais pas trop vieux).</li>
|
||
<li><code>old</code>: lorsque vous voulez donner acc<EFBFBD>s <EFBFBD> IE6 sous Windows XP
|
||
(ultime recours).</li>
|
||
</ul>
|
||
|
||
<p>Vous poubez obtenir une description d<EFBFBD>taill<EFBFBD>e de toutes les politiques
|
||
pr<EFBFBD>d<EFBFBD>finies via la commande :</p>
|
||
<div class="example"><h3>Liste de toutes les politiques SSL pr<EFBFBD>d<EFBFBD>finies</h3><pre class="prettyprint lang-sh">httpd -t -D DUMP_SSL_POLICIES</pre>
|
||
</div>
|
||
|
||
<p>Une politique SSL d<EFBFBD>finit une base de d<EFBFBD>part pour le contexte dans lequel
|
||
elle est d<EFBFBD>finie. Autrement dit, toute directive SSL compl<EFBFBD>mentaire l'emporte
|
||
sur cette politique. A titre d'exemple, observez la valeur effective de
|
||
<code class="directive">SSLProtocol</code> dans la configuration suivante :</p>
|
||
|
||
<div class="example"><h3>Politiques SSL et priorit<EFBFBD>s</h3><pre class="prettyprint lang-config"><VirtualHost...> # effective : 'all'
|
||
SSLPolicy modern
|
||
SSLProtocol all
|
||
</VirtualHost>
|
||
|
||
<VirtualHost...> # effective : 'all'
|
||
SSLProtocol all
|
||
SSLPolicy modern
|
||
</VirtualHost>
|
||
|
||
SSLPolicy modern
|
||
<VirtualHost...> # effective : 'all'
|
||
SSLProtocol all
|
||
</VirtualHost>
|
||
|
||
SSLProtocol all
|
||
<VirtualHost...> # effective : '+TLSv1.2'
|
||
SSLPolicy modern
|
||
</VirtualHost></pre>
|
||
</div>
|
||
|
||
<p>Il est possible d'appliquer plusieurs politiques SSL au sein d'un m<EFBFBD>me
|
||
contexte. Les derni<EFBFBD>res auront alors priorit<EFBFBD> sur les pr<EFBFBD>c<EFBFBD>dentes :</p>
|
||
|
||
<div class="example"><h3>Ordonnancement des politiques SSL</h3><pre class="prettyprint lang-config"><VirtualHost...> # protocole effectif : 'all -SSLv3'
|
||
SSLPolicy modern
|
||
SSLPolicy intermediate
|
||
</VirtualHost>
|
||
|
||
<VirtualHost...> # protocole effectif : '+TLSv1.2'
|
||
SSLPolicy intermediate
|
||
SSLPolicy modern
|
||
</VirtualHost></pre>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslpolicydefinesection" id="sslpolicydefinesection">Directive</a> <a name="SSLPolicyDefinesection" id="SSLPolicyDefinesection"><SSLPolicyDefine></a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D<>finit par un nom un jeu de configurations SSL</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code><SSLPolicyDefine <em>name</em>></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <EFBFBD> partir de la version 2.4.30 du serveur HTTP Apache</td></tr>
|
||
</table>
|
||
<p>Cette directive permet de d<EFBFBD>finir un jeu de configurations SSL et de lui
|
||
attribuer un nom. Ce nom peut alors <EFBFBD>tre utilis<EFBFBD> par les directives
|
||
<code class="directive">SSLPolicy</code> et <code class="directive">SSLProxyPolicy</code> pour
|
||
appliquer ce jeu de configurations au contexte courant.</p>
|
||
|
||
<div class="example"><h3>D<>finition et utilisation d'une configuration SSL</h3><pre class="prettyprint lang-config"><SSLPolicyDefine safe-stapling>
|
||
SSLUseStapling on
|
||
SSLStaplingResponderTimeout 2
|
||
SSLStaplingReturnResponderErrors off
|
||
SSLStaplingFakeTryLater off
|
||
SSLStaplingStandardCacheTimeout 86400
|
||
</SSLPolicyDefine>
|
||
|
||
...
|
||
<VirtualHost...>
|
||
SSLPolicy safe-stapling
|
||
...</pre>
|
||
</div>
|
||
|
||
<p>Cette directive permet d'une part de faciliter la <em>lecture</em> et la
|
||
<em>maintenance</em> des configurations des serveurs. Elle a <EFBFBD>t<EFBFBD> con<EFBFBD>ue d'autre
|
||
part pour faciliter et s<EFBFBD>curiser l'<em>utilisation</em> de SSL. Sur ce dernier
|
||
point, Apache httpd est fourni avec un jeu de configurations SSL pr<EFBFBD>d<EFBFBD>finies qui
|
||
respecte les bonnes pratiques du code open source. Par exemple, le jeu de
|
||
configurations "modern" fait en sorte que votre serveur fonctionne de mani<EFBFBD>re
|
||
compatible et s<EFBFBD>curis<EFBFBD>e avec les navigateurs courants.</p>
|
||
|
||
<p>Vous pouvez obtenir la liste des politiques SSL pr<EFBFBD>d<EFBFBD>finies de votre serveur
|
||
Apache en lan<EFBFBD>ant la commande suivante. Cette liste vous montre le d<EFBFBD>tail du
|
||
contenu de chaque politique SSL pr<EFBFBD>d<EFBFBD>finie :</p>
|
||
|
||
<div class="example"><h3>Liste de toutes les politiques SSL pr<EFBFBD>d<EFBFBD>finies</h3><pre class="prettyprint lang-sh">httpd -t -D DUMP_SSL_POLICIES</pre>
|
||
</div>
|
||
|
||
<p>Cette directive ne peut <EFBFBD>tre utilis<EFBFBD>e qu'au niveau de la configuration
|
||
globale du serveur. Elle peut g<EFBFBD>rer la plupart des directives SSL*, <EFBFBD> l'exception de
|
||
quelques unes qui ne peuvent <EFBFBD>tre positionn<EFBFBD>es qu'une seule fois et ne sont pas
|
||
autoris<EFBFBD>es dans les d<EFBFBD>finitions de politiques. Il s'agit de <code class="directive">SSLCryptoDevice</code>,
|
||
<code class="directive">SSLRandomSeed</code>,
|
||
<code class="directive">SSLSessionCache</code> et
|
||
<code class="directive">SSLStaplingCache</code>.</p>
|
||
<p>Deux politiques ne peuvent pas partager le m<EFBFBD>me nom. Pour autant, elles peuvent <EFBFBD>tre
|
||
red<EFBFBD>finies :</p>
|
||
|
||
<div class="example"><h3>Red<65>finition d'une politique</h3><pre class="prettyprint lang-config"><SSLPolicyDefine proxy-trust>
|
||
SSLProxyVerify require
|
||
</SSLPolicyDefine>
|
||
...
|
||
<SSLPolicyDefine proxy-trust>
|
||
SSLProxyVerify none
|
||
</SSLPolicyDefine></pre>
|
||
</div>
|
||
|
||
<p>Les d<EFBFBD>finitions des politiques SSL sont <em>ajout<75>es</em> selon l'ordre dans
|
||
lequel elles apparaissent, mais sont appliqu<EFBFBD>es lorsque l'ensemble du fichier de
|
||
configuration a <EFBFBD>t<EFBFBD> lu. Cela implique que dans l'exemple pr<EFBFBD>c<EFBFBD>dent, toute
|
||
utilisation de la politique 'proxy-trust' sera <EFBFBD>quivalente <EFBFBD> la directive
|
||
'SSLProxyVerify none' et que la premi<EFBFBD>re d<EFBFBD>finition de cette politique sera
|
||
ignor<EFBFBD>e. Il est ainsi possible de modifier des politiques pr<EFBFBD>install<EFBFBD>es sans
|
||
avoir <EFBFBD> les d<EFBFBD>sactiver.</p>
|
||
|
||
<p>Il est aussi possible de ne modifier qu'un aspect de la polique SSL :</p>
|
||
|
||
<div class="example"><h3>Red<65>finition d'un aspect d'une politique SSL</h3><pre class="prettyprint lang-config"><SSLPolicyDefine proxy-trust>
|
||
SSLProxyVerify require
|
||
</SSLPolicyDefine>
|
||
...
|
||
<SSLPolicyDefine proxy-trust>
|
||
SSLPolicy proxy-trust
|
||
SSLProxyVerifyDepth 10
|
||
</SSLPolicyDefine></pre>
|
||
</div>
|
||
|
||
<p>Toutes les directives de la politique 'proxy-trust' sont alors r<EFBFBD>utilis<EFBFBD>es et
|
||
la directive 'SSLProxyVerifyDepth 10' est ajout<EFBFBD>e en t<EFBFBD>te de cette derni<EFBFBD>re. Cela
|
||
s'av<61>re particuli<EFBFBD>rement utile lorsque les politiques pr<EFBFBD>d<EFBFBD>finies (par Apache ou
|
||
une distribution) satisfont <em>presque</em> <EFBFBD> vos besoins. Auparavant, ces
|
||
politiques devaient <EFBFBD>tre <EFBFBD>dit<EFBFBD>es et modifi<EFBFBD>es apr<EFBFBD>s copie <EFBFBD>ventuelle, ce qui
|
||
compliquait les mises <EFBFBD> jour. Elles peuvent maintenant <EFBFBD>tre modifi<EFBFBD>es comme suit
|
||
:</p>
|
||
|
||
<div class="example"><h3>Tweak a Pre-Defined Policy</h3><pre class="prettyprint lang-config">Include ssl-policies.conf
|
||
|
||
<SSLPolicyDefine modern>
|
||
SSLPolicy modern
|
||
SSLProxyVerify none
|
||
</SSLPolicyDefine></pre>
|
||
</div>
|
||
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslprotocol" id="sslprotocol">Directive</a> <a name="SSLProtocol" id="SSLProtocol">SSLProtocol</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Indique les versions du protocole SSL/TLS
|
||
disponibles</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProtocol [+|-]<em>protocole</em> ...</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLProtocol all -SSLv3</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir quelles versions du protocole SSL/TLS
|
||
seront accept<EFBFBD>es lors de l'initialisation d'une nouvelle connexion.</p>
|
||
<p>
|
||
Les <em>protocole</em>s disponibles sont les suivants (sensibles <EFBFBD> la
|
||
casse) :</p>
|
||
<ul>
|
||
<li><code>SSLv3</code>
|
||
<p>
|
||
Il s'agit du protocole Secure Sockets Layer (SSL) version 3.0 de
|
||
Netscape Corporation. C'est le successeur de SSLv2 et le
|
||
pr<EFBFBD>d<EFBFBD>cesseur de TLSv1, mais est consid<EFBFBD>r<EFBFBD> comme
|
||
obsol<EFBFBD>te dans la <a href="http://www.ietf.org/rfc/rfc7568.txt">RFC
|
||
7568</a></p></li>
|
||
|
||
<li><code>TLSv1</code>
|
||
<p>
|
||
Il s'agit du protocole Transport Layer Security (TLS) version 1.0.
|
||
C'est le successeur de SSLv3, et il est d<EFBFBD>fini dans la <a href="http://www.ietf.org/rfc/rfc2246.txt">RFC2246</a>.</p></li>
|
||
|
||
<li><code>TLSv1.1</code> (<28> partir de la version 1.0.1 d'OpenSSL)
|
||
<p>
|
||
Une r<EFBFBD>vision du protocole TLS 1.0 d<EFBFBD>finie dans la <a href="http://www.ietf.org/rfc/rfc4346.txt">RFC 4346</a>. Il est
|
||
support<EFBFBD> par la plupart des clients.</p></li>
|
||
|
||
<li><code>TLSv1.2</code> (<28> partir de la version 1.0.1 d'OpenSSL)
|
||
<p>
|
||
Une r<EFBFBD>vision du protocole TLS 1.1 d<EFBFBD>finie dans la <a href="http://www.ietf.org/rfc/rfc5246.txt">RFC 5246</a>.</p></li>
|
||
|
||
<li><code>all</code>
|
||
<p>
|
||
C'est un raccourci pour ``<code>+SSLv3 +TLSv1</code>'' ou - <EFBFBD> partir
|
||
de la version 1.0.1 d'OpenSSL - ``<code>+SSLv3 +TLSv1 +TLSv1.1
|
||
+TLSv1.2</code>'' (sauf si OpenSSL a <EFBFBD>t<EFBFBD> compil<EFBFBD> avec l'option
|
||
``no-ssl3'', auquel cas <code>all</code> n'inclura pas
|
||
<code>+SSLv3</code>).</p></li>
|
||
</ul>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLProtocol TLSv1</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxycacertificatefile" id="sslproxycacertificatefile">Directive</a> <a name="SSLProxyCACertificateFile" id="SSLProxyCACertificateFile">SSLProxyCACertificateFile</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Fichier contenant la concat<EFBFBD>nation des certificats de CA
|
||
cod<EFBFBD>s en PEM pour l'authentification des serveurs distants</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyCACertificateFile <em>file-path</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le fichier <em>tout-en-un</em> o<EFBFBD> sont
|
||
stock<EFBFBD>s les certificats des Autorit<EFBFBD>s de Certification (CA) pour les
|
||
<em>serveurs distants</em> auxquels vous avez <EFBFBD> faire. On les utilise
|
||
lors de l'authentification du serveur distant. Un tel fichier contient
|
||
la simple concat<EFBFBD>nation des diff<EFBFBD>rents fichiers de certificats cod<EFBFBD>s en
|
||
PEM, class<EFBFBD>s par ordre de pr<EFBFBD>f<EFBFBD>rence. On peut utiliser cette directive <EFBFBD>
|
||
la place et/ou en compl<EFBFBD>ment de la directive <code class="directive"><a href="#sslproxycacertificatepath">SSLProxyCACertificatePath</a></code>.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLProxyCACertificateFile
|
||
"/usr/local/apache2/conf/ssl.crt/ca-bundle-serveur.distant.crt"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxycacertificatepath" id="sslproxycacertificatepath">Directive</a> <a name="SSLProxyCACertificatePath" id="SSLProxyCACertificatePath">SSLProxyCACertificatePath</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>R<>pertoire des certificats de CA cod<EFBFBD>s en PEM pour
|
||
l'authentification des serveurs distants</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyCACertificatePath <em>chemin-r<>pertoire</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de sp<EFBFBD>cifier le r<EFBFBD>pertoire o<EFBFBD> sont stock<EFBFBD>s les
|
||
certificats des Autorit<EFBFBD>s de Certification (CAs) pour les serveurs
|
||
distants auxquels vous avez <EFBFBD> faire. On les utilise pour v<EFBFBD>rifier le
|
||
certificat du serveur distant lors de l'authentification de ce
|
||
dernier.</p>
|
||
<p>
|
||
Les fichiers de ce r<EFBFBD>pertoire doivent <EFBFBD>tre cod<EFBFBD>s en PEM et ils sont
|
||
acc<EFBFBD>d<EFBFBD>s via des noms de fichier sous forme de condens<EFBFBD>s ou hash. Il ne
|
||
suffit donc pas de placer les fichiers de certificats dans ce r<EFBFBD>pertoire
|
||
: vous devez aussi cr<EFBFBD>er des liens symboliques nomm<EFBFBD>s
|
||
<em>valeur-de-hashage</em><code>.N</code>, et vous devez toujours vous
|
||
assurer que ce r<EFBFBD>pertoire contient les liens symboliques appropri<EFBFBD>s.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLProxyCACertificatePath "/usr/local/apache2/conf/ssl.crt/"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxycarevocationcheck" id="sslproxycarevocationcheck">Directive</a> <a name="SSLProxyCARevocationCheck" id="SSLProxyCARevocationCheck">SSLProxyCARevocationCheck</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active la v<EFBFBD>rification des r<EFBFBD>vocations bas<EFBFBD>e sur les CRLs
|
||
pour l'authentification du serveur distant</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyCARevocationCheck chain|leaf|none</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLProxyCARevocationCheck none</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Active la v<EFBFBD>rification des r<EFBFBD>vocations bas<EFBFBD>e sur les Listes de
|
||
r<EFBFBD>vocations de Certificats (CRL) pour les <em>serveurs distants</em>
|
||
auxquels vous vous connectez. A moins une des directives <code class="directive"><a href="#sslproxycarevocationfile">SSLProxyCARevocationFile</a></code> ou <code class="directive"><a href="#sslproxycarevocationpath">SSLProxyCARevocationPath</a></code> doit <EFBFBD>tre d<EFBFBD>finie.
|
||
Lorsque cette directive est d<EFBFBD>finie <EFBFBD> <code>chain</code> (valeur
|
||
recommand<EFBFBD>e), les v<EFBFBD>rifications CRL sont effectu<EFBFBD>es sur tous les
|
||
certificats de la cha<EFBFBD>ne, alors que la valeur <code>leaf</code> limite
|
||
la v<EFBFBD>rification au certificat hors cha<EFBFBD>ne (la feuille).
|
||
</p>
|
||
<div class="note">
|
||
<h3>Lorsque la directive est d<EFBFBD>finie <EFBFBD> <code>chain</code> ou
|
||
<code>leaf</code>, les CRLs doivent <EFBFBD>tre disponibles pour que la
|
||
validation r<EFBFBD>ussisse</h3>
|
||
<p>
|
||
Avant la version 2.3.15, les v<EFBFBD>rifications CRL dans mod_ssl
|
||
r<EFBFBD>ussissaient m<EFBFBD>me si aucune CRL n'<27>tait trouv<EFBFBD>e dans les chemins
|
||
d<EFBFBD>finis par les directives <code class="directive"><a href="#sslproxycarevocationfile">SSLProxyCARevocationFile</a></code> ou <code class="directive"><a href="#sslproxycarevocationpath">SSLProxyCARevocationPath</a></code>. Le comportement a
|
||
chang<EFBFBD> avec l'introduction de cette directive : lorsque la v<EFBFBD>rification
|
||
est activ<EFBFBD>e, les CRLs <em>doivent</em> <EFBFBD>tre pr<EFBFBD>sentes pour que la
|
||
validation r<EFBFBD>ussisse ; dans le cas contraire, elle <EFBFBD>chouera avec une
|
||
erreur <code>"CRL introuvable"</code>.
|
||
</p>
|
||
</div>
|
||
<div class="example"><h3>Exmple</h3><pre class="prettyprint lang-config">SSLProxyCARevocationCheck chain</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxycarevocationfile" id="sslproxycarevocationfile">Directive</a> <a name="SSLProxyCARevocationFile" id="SSLProxyCARevocationFile">SSLProxyCARevocationFile</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Fichier contenant la concat<EFBFBD>nation des CRLs de CA cod<EFBFBD>s en
|
||
PEM pour l'authentification des serveurs distants</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyCARevocationFile <em>chemin-fichier</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le fichier <em>tout-en-un</em> o<EFBFBD> sont
|
||
rassembl<EFBFBD>es les Listes de R<EFBFBD>vocation de Certificats (CRLs) des Autorit<EFBFBD>s
|
||
de certification (CAs) pour les <em>serveurs distants</em> auxquels vous
|
||
avez <EFBFBD> faire. On les utilise pour l'authentification des serveurs
|
||
distants. Un tel fichier contient la simple concat<EFBFBD>nation des diff<EFBFBD>rents
|
||
fichiers de CRLs cod<EFBFBD>s en PEM, class<EFBFBD>s par ordre de pr<EFBFBD>f<EFBFBD>rence. Cette
|
||
directive peut <EFBFBD>tre utilis<EFBFBD>e <EFBFBD> la place et/ou en compl<EFBFBD>ment de la
|
||
directive <code class="directive"><a href="#sslproxycarevocationpath">SSLProxyCARevocationPath</a></code>.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLProxyCARevocationFile
|
||
"/usr/local/apache2/conf/ssl.crl/ca-bundle-serveur.distant.crl"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxycarevocationpath" id="sslproxycarevocationpath">Directive</a> <a name="SSLProxyCARevocationPath" id="SSLProxyCARevocationPath">SSLProxyCARevocationPath</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>R<>pertoire des CRLs de CA cod<EFBFBD>s en PEM pour
|
||
l'authentification des serveurs distants</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyCARevocationPath <em>chemin-r<>pertoire</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le r<EFBFBD>pertoire o<EFBFBD> sont stock<EFBFBD>es les
|
||
Listes de R<EFBFBD>vocation de Certificats (CRL) des Autorit<EFBFBD>s de Certification
|
||
(CAs) pour les serveurs distants auxquels vous avez <EFBFBD> faire. On les
|
||
utilise pour r<EFBFBD>voquer les certificats des serveurs distants au cours de
|
||
l'authentification de ces derniers.</p>
|
||
<p>
|
||
Les fichiers de ce r<EFBFBD>pertoire doivent <EFBFBD>tre cod<EFBFBD>s en PEM et ils sont
|
||
acc<EFBFBD>d<EFBFBD>s via des noms de fichier sous forme de condens<EFBFBD>s ou hash. Il ne
|
||
suffit donc pas de placer les fichiers de CRL dans ce r<EFBFBD>pertoire
|
||
: vous devez aussi cr<EFBFBD>er des liens symboliques nomm<EFBFBD>s
|
||
<em>valeur-de-hashage</em><code>.rN</code>, et vous devez toujours vous
|
||
assurer que ce r<EFBFBD>pertoire contient les liens symboliques appropri<EFBFBD>s.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLProxyCARevocationPath "/usr/local/apache2/conf/ssl.crl/"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxycheckpeercn" id="sslproxycheckpeercn">Directive</a> <a name="SSLProxyCheckPeerCN" id="SSLProxyCheckPeerCN">SSLProxyCheckPeerCN</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Configuration de la v<EFBFBD>rification du champ CN du certificat
|
||
du serveur distant
|
||
</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyCheckPeerCN on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLProxyCheckPeerCN on</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir si le champ CN du certificat
|
||
du serveur distant doit <EFBFBD>tre compar<EFBFBD> au nom de serveur de l'URL de la
|
||
requ<EFBFBD>te. S'ils ne correspondent pas, un
|
||
code d'<27>tat 502 (Bad Gateway) est envoy<EFBFBD>. A partir de la version 2.4.5, la
|
||
directive <code class="directive"><a href="#sslproxycheckpeername">SSLProxyCheckPeerName</a></code>
|
||
l'emporte sur la directive <code>SSLProxyCheckPeerCN</code>.
|
||
</p>
|
||
<p>
|
||
De la version 2.4.5 <EFBFBD> la version 2.4.20, sp<EFBFBD>cifier <code>SSLProxyCheckPeerName
|
||
off</code> <EFBFBD>tait suffisant pour activer cette fonctionnalit<EFBFBD> (<28>tant donn<EFBFBD> que la
|
||
valeur par d<EFBFBD>faut de la directive <code>SSLProxyCheckPeerCN</code> <EFBFBD>tait
|
||
<code>on</code>). Avec ces m<EFBFBD>mes versions, les deux directives devaient <EFBFBD>tre
|
||
d<EFBFBD>finies <EFBFBD> <code>off</code> pour <EFBFBD>viter la validation du nom de certificat du
|
||
serveur distant. De nombreux utilisateurs ont signal<EFBFBD> ce comportement comme
|
||
<EFBFBD>tant source de confusion.
|
||
</p>
|
||
<p>
|
||
A partir de la version 2.4.21, toute configuration qui active une des
|
||
deux options <code>SSLProxyCheckPeerName</code> ou
|
||
<code>SSLProxyCheckPeerCN</code> adopte le nouveau comportement de la
|
||
directive <code class="directive"><a href="#sslproxycheckpeername">SSLProxyCheckPeerName</a></code>, alors
|
||
que toute configuration qui d<EFBFBD>sactive une des options
|
||
<code>SSLProxyCheckPeerName</code> ou <code>SSLProxyCheckPeerCN</code> supprime
|
||
toute validation du nom de certificat du serveur distant. Seule la configuration
|
||
suivante peut r<EFBFBD>tablir le comportement traditionnel en mati<EFBFBD>re de comparaison
|
||
des CN de certificats dans les versions 2.4.21 et ult<EFBFBD>rieures.
|
||
</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLProxyCheckPeerCN on
|
||
SSLProxyCheckPeerName off</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxycheckpeerexpire" id="sslproxycheckpeerexpire">Directive</a> <a name="SSLProxyCheckPeerExpire" id="SSLProxyCheckPeerExpire">SSLProxyCheckPeerExpire</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Configuration de la v<EFBFBD>rification de l'expiration du
|
||
certificat du serveur distant
|
||
</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyCheckPeerExpire on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLProxyCheckPeerExpire on</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir si l'expiration du certificat du
|
||
serveur distant doit <EFBFBD>tre v<EFBFBD>rifi<EFBFBD>e ou non. Si la v<EFBFBD>rification <EFBFBD>choue, un
|
||
code d'<27>tat 502 (Bad Gateway) est envoy<EFBFBD>.
|
||
</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLProxyCheckPeerExpire on</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxycheckpeername" id="sslproxycheckpeername">Directive</a> <a name="SSLProxyCheckPeerName" id="SSLProxyCheckPeerName">SSLProxyCheckPeerName</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Configure la v<EFBFBD>rification du nom d'h<>te pour les
|
||
certificats serveur distant
|
||
</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyCheckPeerName on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLProxyCheckPeerName on</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <EFBFBD> partir de la version 2.4.5 du serveur HTTP
|
||
Apache</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de configurer la v<EFBFBD>rification du nom d'h<>te pour
|
||
les certificats serveur lorsque mod_ssl agit en tant que client SSL. La
|
||
v<EFBFBD>rification r<EFBFBD>ussit si le nom d'h<>te de l'URI de la requ<EFBFBD>te correspond <EFBFBD> un
|
||
des attributs CN du sujet du certificat, ou <EFBFBD> l'extension subjectAltName. Si la
|
||
v<EFBFBD>rification <EFBFBD>choue, la requ<EFBFBD>te SSL
|
||
avorte, et un code d'erreur 502 (Bad Gateway) est renvoy<EFBFBD>.
|
||
</p>
|
||
<p>
|
||
Les caract<EFBFBD>res g<EFBFBD>n<EFBFBD>riques sont support<EFBFBD>s dans certains cas bien sp<EFBFBD>cifiques :
|
||
une entr<EFBFBD>e subjectAltName de type dNSName ou les attributs CN
|
||
commen<EFBFBD>ant par <code>*.</code> correspondront <EFBFBD> tout nom d'h<>te comportant
|
||
le m<EFBFBD>me nombre de champs et le m<EFBFBD>me suffixe ; par exemple,
|
||
<code>*.example.org</code> correspondra <EFBFBD> <code>foo.example.org</code>,
|
||
mais pas <EFBFBD> <code>foo.bar.example.org</code> car le nombre d'<27>l<EFBFBD>ments dans les
|
||
nom est diff<EFBFBD>rent.
|
||
</p>
|
||
<p>
|
||
Cette fonctionnalit<EFBFBD> a <EFBFBD>t<EFBFBD> introduite avec la version 2.4.5 et l'emporte sur la
|
||
directive <code class="directive"><a href="#sslproxycheckpeercn">SSLProxyCheckPeerCN</a></code> qui ne
|
||
comparait que la valeur exacte du premier attribut CN avec le nom d'h<>te.
|
||
Cependant, de nombreux utilisateurs <EFBFBD>taient d<EFBFBD>concert<EFBFBD>s par le comportement
|
||
induit par l'utilisation de ces deux directives individuellement, si bien que ce
|
||
comportement a <EFBFBD>t<EFBFBD> am<EFBFBD>lior<EFBFBD> avec la version 2.4.21. Voir la description de la
|
||
directive <code class="directive"><a href="#sslproxycheckpeercn">SSLProxyCheckPeerCN</a></code> pour le
|
||
comportement original et des d<EFBFBD>tails <EFBFBD> propos de ces am<EFBFBD>liorations.
|
||
</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxyciphersuite" id="sslproxyciphersuite">Directive</a> <a name="SSLProxyCipherSuite" id="SSLProxyCipherSuite">SSLProxyCipherSuite</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Algorithmes de chiffrement disponibles pour la n<EFBFBD>gociation
|
||
lors de l'initialisation d'une connexion SSL de mandataire</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyCipherSuite <em>algorithmes</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLProxyCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+EXP</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>Cette directive est <EFBFBD>quivalente <EFBFBD> la directive <code class="directive"><a href="#sslciphersuite">SSLCipherSuite</a></code>, mais s'applique <EFBFBD> une connexion de
|
||
mandataire. Veuillez vous reporter <EFBFBD> la directive <code class="directive"><a href="#sslciphersuite">SSLCipherSuite</a></code> pour plus d'informations.</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxyengine" id="sslproxyengine">Directive</a> <a name="SSLProxyEngine" id="SSLProxyEngine">SSLProxyEngine</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Interrupteur marche/arr<72>t du moteur de mandataire
|
||
SSL</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyEngine on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLProxyEngine off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet d'activer/d<>sactiver l'utilisation du moteur de
|
||
protocole SSL/TLS pour le mandataire. On l'utilise en g<EFBFBD>n<EFBFBD>ral <EFBFBD>
|
||
l'int<6E>rieur d'une section <code class="directive"><a href="../mod/core.html#virtualhost"><VirtualHost></a></code> pour activer le protocole SSL/TLS
|
||
dans le cadre d'un mandataire pour un serveur virtuel particulier. Par
|
||
d<EFBFBD>faut, le moteur de protocole SSL/TLS est d<EFBFBD>sactiv<EFBFBD> pour la fonction de
|
||
mandataire du serveur principal et de tous les serveurs virtuels
|
||
configur<EFBFBD>s.</p>
|
||
|
||
<p>Notez que la directive <code class="directive">SSLProxyEngine</code> ne doit
|
||
g<EFBFBD>n<EFBFBD>ralement pas <EFBFBD>tre utilis<EFBFBD>e dans le cadre d'un serveur virtuel qui agit en
|
||
tant que mandataire direct (via les directives <code class="directive"><a href="../mod/mod_proxy.html#proxy"><Proxy></a></code> ou <code class="directive"><a href="../mod/mod_proxy.html#proxyrequests">ProxyRequests</a></code>).
|
||
<code class="directive">SSLProxyEngine</code> n'est pas n<EFBFBD>cessaire pour activer un
|
||
serveur mandataire direct pour les requ<EFBFBD>tes SSL/TLS.</p>
|
||
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config"><VirtualHost _default_:443>
|
||
SSLProxyEngine on
|
||
#...
|
||
</VirtualHost></pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxymachinecertificatechainfile" id="sslproxymachinecertificatechainfile">Directive</a> <a name="SSLProxyMachineCertificateChainFile" id="SSLProxyMachineCertificateChainFile">SSLProxyMachineCertificateChainFile</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Fichier de certificats de CA encod<EFBFBD>s PEM concat<EFBFBD>n<EFBFBD>s permettant au
|
||
mandataire de choisir un certificat</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyMachineCertificateChainFile <em>nom-fichier</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le fichier global o<EFBFBD> est enregistr<EFBFBD>e
|
||
la cha<EFBFBD>ne de certification pour tous les certificats clients utilis<EFBFBD>s.
|
||
Elle est n<EFBFBD>cessaire si le serveur distant pr<EFBFBD>sente une liste de
|
||
certificats de CA qui ne sont pas les signataires directs d'un des
|
||
certificats clients configur<EFBFBD>s.
|
||
</p>
|
||
<p>
|
||
Ce fichier contient tout simplement la concat<EFBFBD>nation des diff<EFBFBD>rents
|
||
fichiers de certificats encod<EFBFBD>s PEM. Au d<EFBFBD>marrage, chaque certificat
|
||
client configur<EFBFBD> est examin<EFBFBD> et une cha<EFBFBD>ne de certification est
|
||
construite.
|
||
</p>
|
||
<div class="warning"><h3>Avertissement en mati<EFBFBD>re de s<EFBFBD>curit<EFBFBD></h3>
|
||
<p>Si cette directive est d<EFBFBD>finie, tous les certificats contenus dans le
|
||
fichier sp<EFBFBD>cifi<EFBFBD> seront consid<EFBFBD>r<EFBFBD>s comme <EFBFBD>tant de confiance, comme s'ils
|
||
<EFBFBD>taient aussi d<EFBFBD>sign<EFBFBD>s dans la directive <code class="directive"><a href="#sslproxycacertificatefile">SSLProxyCACertificateFile</a></code>.</p>
|
||
</div>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLProxyMachineCertificateChainFile
|
||
"/usr/local/apache2/conf/ssl.crt/proxyCA.pem"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxymachinecertificatefile" id="sslproxymachinecertificatefile">Directive</a> <a name="SSLProxyMachineCertificateFile" id="SSLProxyMachineCertificateFile">SSLProxyMachineCertificateFile</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Fichier contenant la concat<EFBFBD>nation des cl<EFBFBD>s et certificats
|
||
clients cod<EFBFBD>s en PEM que le mandataire doit utiliser</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyMachineCertificateFile <em>chemin-fichier</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le fichier tout-en-un o<EFBFBD> sont stock<EFBFBD>s
|
||
les cl<EFBFBD>s et certificats permettant au serveur mandataire de
|
||
s'authentifier aupr<EFBFBD>s des serveurs distants.
|
||
</p>
|
||
<p>
|
||
Le fichier sp<EFBFBD>cifi<EFBFBD> est la simple concat<EFBFBD>nation des diff<EFBFBD>rents fichiers
|
||
de certificats cod<EFBFBD>s en PEM, class<EFBFBD>s par ordre de pr<EFBFBD>f<EFBFBD>rence. Cette
|
||
directive s'utilise <EFBFBD> la place ou en compl<EFBFBD>ment de la directive
|
||
<code>SSLProxyMachineCertificatePath</code>.
|
||
</p>
|
||
<div class="warning">
|
||
<p>Actuellement, les cl<EFBFBD>s priv<EFBFBD>es chiffr<EFBFBD>es ne sont pas support<EFBFBD>es.</p>
|
||
</div>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLProxyMachineCertificateFile "/usr/local/apache2/conf/ssl.crt/proxy.pem"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxymachinecertificatepath" id="sslproxymachinecertificatepath">Directive</a> <a name="SSLProxyMachineCertificatePath" id="SSLProxyMachineCertificatePath">SSLProxyMachineCertificatePath</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>R<>pertoire des cl<EFBFBD>s et certificats clients cod<EFBFBD>s en PEM que
|
||
le mandataire doit utiliser</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyMachineCertificatePath <em>chemin-r<>pertoire</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le r<EFBFBD>pertoire o<EFBFBD> sont stock<EFBFBD>s les cl<EFBFBD>s
|
||
et certificats permettant au serveur mandataire de s'authentifier aupr<EFBFBD>s
|
||
des serveurs distants.
|
||
</p>
|
||
<p>mod_ssl va essayer de charger tous les fichiers contenus dans le r<EFBFBD>pertoire
|
||
sp<EFBFBD>cifi<EFBFBD>, mais en ignorera les <EFBFBD>ventuels sous-r<>pertoires. Chaque fichier doit
|
||
contenir un certificat cod<EFBFBD> au format PEM ainsi que la cl<EFBFBD> priv<EFBFBD>e
|
||
correspondante.</p>
|
||
<div class="warning">
|
||
<p>Actuellement, les cl<EFBFBD>s priv<EFBFBD>es chiffr<EFBFBD>es ne sont pas support<EFBFBD>es.</p>
|
||
</div>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLProxyMachineCertificatePath "/usr/local/apache2/conf/proxy.crt/"</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxypolicy" id="sslproxypolicy">Directive</a> <a name="SSLProxyPolicy" id="SSLProxyPolicy">SSLProxyPolicy</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>N'applique que les directives SSLProxy* d'une politique SSL</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyPolicy <em>name</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <EFBFBD> partir de la version 2.4.30 du serveur HTTP Apache</td></tr>
|
||
</table>
|
||
<p>Cette directive est similaire <EFBFBD> la directive <code class="directive">SSLPolicy</code>
|
||
mais elle n'applique que les directives SSLProxy* d<EFBFBD>finies dans la politique SSL
|
||
sp<EFBFBD>cifi<EFBFBD>e. Ceci s'av<61>re utile lorsque vous avez besoin de politiques SSL
|
||
diff<EFBFBD>rentes pour les serveurs d'avant et d'arri<72>re-plan :</p>
|
||
|
||
<div class="example"><h3>Autre politique SSL pour le mandataire seulement</h3><pre class="prettyprint lang-config">SSLPolicy modern
|
||
SSLProxyPolicy intermediate</pre>
|
||
</div>
|
||
|
||
<p>Dans cet exemple, la politique 'modern' est tout d'abord appliqu<EFBFBD>e pour
|
||
l'avant et l'arri<72>re-plan. La politique 'intermediate' est ensuite appliqu<EFBFBD>e au
|
||
mandataire en ne prenant en compte que les directives SSLProxy*.</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxyprotocol" id="sslproxyprotocol">Directive</a> <a name="SSLProxyProtocol" id="SSLProxyProtocol">SSLProxyProtocol</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D<>finit les protocoles SSL disponibles pour la fonction de
|
||
mandataire</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyProtocol [+|-]<em>protocole</em> ...</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLProxyProtocol all -SSLv3</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir les protocoles SSL que mod_ssl peut
|
||
utiliser lors de l'<27>laboration de son environnement de serveur pour la
|
||
fonction de mandataire. Il ne se connectera qu'aux serveurs utilisant un
|
||
des protocoles sp<EFBFBD>cifi<EFBFBD>s.</p>
|
||
<p>Veuillez vous reporter <EFBFBD> la directive <code class="directive"><a href="#sslprotocol">SSLProtocol</a></code> pour plus d'informations.
|
||
</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxyverify" id="sslproxyverify">Directive</a> <a name="SSLProxyVerify" id="SSLProxyVerify">SSLProxyVerify</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Niveau de v<EFBFBD>rification du certificat du serveur
|
||
distant</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyVerify <em>niveau</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLProxyVerify none</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
|
||
<p>Lorsqu'un mandataire est configur<EFBFBD> pour faire suivre les requ<EFBFBD>tes
|
||
vers un serveur SSL distant, cette directive permet de configurer la
|
||
v<EFBFBD>rification du certificat de ce serveur distant.</p>
|
||
|
||
<p>
|
||
Les valeurs de <em>niveau</em>x disponibles sont les suivantes :</p>
|
||
<ul>
|
||
<li><strong>none</strong>:
|
||
aucun certificat n'est requis pour le serveur distant</li>
|
||
<li><strong>optional</strong>:
|
||
le serveur distant <em>peut</em> pr<EFBFBD>senter un certificat valide</li>
|
||
<li><strong>require</strong>:
|
||
le serveur distant <em>doit</em> pr<EFBFBD>senter un certificat valide</li>
|
||
<li><strong>optional_no_ca</strong>:
|
||
le serveur distant peut pr<EFBFBD>senter un certificat valide<br />
|
||
mais il n'est pas n<EFBFBD>cessaire qu'il soit v<EFBFBD>rifiable (avec succ<EFBFBD>s).</li>
|
||
</ul>
|
||
<p>En pratique, seuls les niveaux <strong>none</strong> et
|
||
<strong>require</strong> sont vraiment int<EFBFBD>ressants, car le niveau
|
||
<strong>optional</strong> ne fonctionne pas avec tous les serveurs, et
|
||
le niveau <strong>optional_no_ca</strong> va tout <EFBFBD> fait <EFBFBD> l'encontre de
|
||
l'id<69>e que l'on peut se faire de l'authentification (mais peut tout de
|
||
m<EFBFBD>me <EFBFBD>tre utilis<EFBFBD> pour <EFBFBD>tablir des pages de test SSL, etc...)
|
||
|
||
In practice only levels <strong>none</strong> and
|
||
<strong>require</strong> are really interesting, because level
|
||
<strong>optional</strong> doesn't work with all servers and level
|
||
<strong>optional_no_ca</strong> is actually against the idea of
|
||
authentication (but can be used to establish SSL test pages, etc.)</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLProxyVerify require</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslproxyverifydepth" id="sslproxyverifydepth">Directive</a> <a name="SSLProxyVerifyDepth" id="SSLProxyVerifyDepth">SSLProxyVerifyDepth</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Niveau de profondeur maximum dans les certificats de CA
|
||
lors de la v<EFBFBD>rification du certificat du serveur distant</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLProxyVerifyDepth <em>niveau</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLProxyVerifyDepth 1</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, </td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le niveau de profondeur maximum
|
||
jusqu'auquel mod_ssl doit aller au cours de sa v<EFBFBD>rification avant de
|
||
d<EFBFBD>cider que le serveur distant ne poss<EFBFBD>de pas de certificat valide.</p>
|
||
<p>
|
||
La profondeur correspond en fait au nombre maximum de fournisseurs de
|
||
certificats interm<EFBFBD>diaires, c'est <EFBFBD> dire le nombre maximum de
|
||
certificats
|
||
de CA que l'on peut consulter lors de la v<EFBFBD>rification du certificat du
|
||
serveur distant. Une profondeur de 0 signifie que seuls les certificats
|
||
de serveurs distants auto-sign<67>s sont accept<EFBFBD>s, et la profondeur par
|
||
d<EFBFBD>faut de 1 que le certificat du serveur distant peut <EFBFBD>tre soit
|
||
auto-sign<67>, soit sign<EFBFBD> par une CA connue directement du serveur (en
|
||
d'autres termes, le certificat de CA est r<EFBFBD>f<EFBFBD>renc<EFBFBD> par la directive
|
||
<code class="directive"><a href="#sslproxycacertificatepath">SSLProxyCACertificatePath</a></code>),
|
||
etc...</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLProxyVerifyDepth 10</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslrandomseed" id="sslrandomseed">Directive</a> <a name="SSLRandomSeed" id="SSLRandomSeed">SSLRandomSeed</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Source de d<EFBFBD>clenchement du G<EFBFBD>n<EFBFBD>rateur de Nombres
|
||
Pseudo-Al<41>atoires (PRNG)</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLRandomSeed <em>contexte</em> <em>source</em>
|
||
[<em>nombre</em>]</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir une ou plusieurs sources de
|
||
d<EFBFBD>clenchement du G<EFBFBD>n<EFBFBD>rateur de Nombres Pseudo-Al<41>atoires (PRNG) dans
|
||
OpenSSL au d<EFBFBD>marrage du serveur (si <em>contexte</em> a pour valeur
|
||
<code>startup</code>) et/ou juste avant l'<27>tablissement d'une nouvelle
|
||
connexion SSL (si <em>contexte</em> a pour valeur <code>connect</code>).
|
||
Cette directive ne peut <EFBFBD>tre utilis<EFBFBD>e qu'au niveau du serveur global car
|
||
le PRNG est un service global.</p>
|
||
<p>
|
||
Les diff<EFBFBD>rentes valeurs de <em>source</em> disponibles sont :</p>
|
||
<ul>
|
||
<li><code>builtin</code>
|
||
<p>Cette source de d<EFBFBD>clenchement int<EFBFBD>gr<EFBFBD>e est toujours disponible.
|
||
Son utilisation consomme un minimum de cycles CPU en cours
|
||
d'ex<65>cution, et son utilisation ne pr<EFBFBD>sente de ce fait aucun
|
||
probl<EFBFBD>me. La source utilis<EFBFBD>e pour d<EFBFBD>clencher le PRNG contient la
|
||
date courante, l'identifiant du processus courant et (si disponible)
|
||
un extrait de 1Ko al<EFBFBD>atoirement choisi de la structure d'Apache pour
|
||
les <EFBFBD>changes inter-processus. Ceci pr<EFBFBD>sente un inconv<EFBFBD>nient car le
|
||
caract<EFBFBD>re al<EFBFBD>atoire de cette source n'est pas vraiment fort, et au
|
||
d<EFBFBD>marrage (lorsque la structure d'<27>changes n'est pas encore
|
||
disponible), cette source ne produit que quelques octets d'entropie.
|
||
Vous devez donc toujours utiliser une source de d<EFBFBD>clenchement
|
||
additionnelle, au moins pour le d<EFBFBD>marrage.</p></li>
|
||
<li><code>file:/chemin/vers/source</code>
|
||
<p>
|
||
Cette variante utilise un fichier externe
|
||
<code>file:/chemin/vers/source</code> comme source de d<EFBFBD>clenchement
|
||
du PRNG. Lorsque <em>nombre</em> est sp<EFBFBD>cifi<EFBFBD>, seuls les
|
||
<em>nombre</em> premiers octets du fichier forment l'entropie (et
|
||
<em>nombre</em> est fourni comme premier argument <EFBFBD>
|
||
<code>/chemin/vers/source</code>). Lorsque <em>nombre</em> n'est pas
|
||
sp<EFBFBD>cifi<EFBFBD>, l'ensemble du fichier forme l'entropie (et <code>0</code>
|
||
est fourni comme premier argument <EFBFBD>
|
||
<code>/chemin/vers/source</code>). Utilisez cette source en
|
||
particulier au d<EFBFBD>marrage, par exemple avec un fichier de
|
||
p<EFBFBD>riph<EFBFBD>rique <code>/dev/random</code> et/ou
|
||
<code>/dev/urandom</code> (qui sont en g<EFBFBD>n<EFBFBD>ral pr<EFBFBD>sent sur les
|
||
plate-formes d<EFBFBD>riv<EFBFBD>es d'Unix modernes comme FreeBSD et Linux).</p>
|
||
<p><em>Soyez cependant prudent</em> : en g<EFBFBD>n<EFBFBD>ral,
|
||
<code>/dev/random</code> ne fournit que l'entropie dont il dispose
|
||
r<EFBFBD>ellement ; en d'autres termes, lorsque vous demandez 512 octets
|
||
d'entropie, si le p<EFBFBD>riph<EFBFBD>rique ne dispose que de 100 octets, deux
|
||
choses peuvent se produire : sur certaines plates-formes, vous ne
|
||
recevez que les 100 octets, alors que sur d'autres, la lecture se
|
||
bloque jusqu'<27> ce qu'un nombre suffisant d'octets soit disponible
|
||
(ce qui peut prendre beaucoup de temps). Il est pr<EFBFBD>f<EFBFBD>rable ici
|
||
d'utiliser le p<EFBFBD>riph<EFBFBD>rique <code>/dev/urandom</code>, car il ne se
|
||
bloque jamais et fournit vraiment la quantit<EFBFBD> de donn<EFBFBD>es demand<EFBFBD>es.
|
||
Comme inconv<EFBFBD>nient, les donn<EFBFBD>es re<EFBFBD>ues ne sont pas forc<EFBFBD>ment de la
|
||
meilleure qualit<EFBFBD>.</p></li>
|
||
|
||
<li><code>exec:/chemin/vers/programme</code>
|
||
<p>
|
||
Cette variante utilise un ex<EFBFBD>cutable externe
|
||
<code>/chemin/vers/programme</code> comme source de d<EFBFBD>clenchement du
|
||
PRNG. Lorsque <em>nombre</em> est sp<EFBFBD>cifi<EFBFBD>, seules les
|
||
<em>nombre</em> premiers octets de son flux <code>stdout</code>
|
||
forment l'entropie. Lorsque <em>nombre</em> n'est pas sp<EFBFBD>cifi<EFBFBD>,
|
||
l'int<6E>gralit<69> des donn<EFBFBD>es produites sur <code>stdout</code> forment
|
||
l'entropie. N'utilisez cette variante qu'au d<EFBFBD>marrage o<EFBFBD> une source
|
||
de d<EFBFBD>clenchement fortement al<EFBFBD>atoire est n<EFBFBD>cessaire, en utilisant
|
||
un programme externe (comme dans l'exemple
|
||
ci-dessous avec l'utilitaire <code>truerand</code> bas<EFBFBD> sur la
|
||
biblioth<EFBFBD>que <em>truerand</em> de AT&T que vous trouverez
|
||
dans la distribution de mod_ssl). Bien entendu, l'utilisation de
|
||
cette variante dans un contexte "connection" ralentit le serveur de
|
||
mani<EFBFBD>re trop importante, et en g<EFBFBD>n<EFBFBD>ral, vous devez donc <EFBFBD>viter
|
||
d'utiliser des programmes externes dans ce contexte.</p></li>
|
||
<li><code>egd:/chemin/vers/socket-egd</code> (Unix seulement)
|
||
<p>Cette variante utilise le socket de domaine Unix du D<EFBFBD>mon
|
||
G<EFBFBD>n<EFBFBD>rateur d'Entropie externe ou Entropy Gathering Daemon ou EGD
|
||
(voir <a href="http://www.lothar.com/tech/crypto/">http://www.lothar.com/tech
|
||
/crypto/</a>) pour d<EFBFBD>clencher le PRNG. N'utilisez cette variante que
|
||
si votre plate-forme ne poss<EFBFBD>de pas de p<EFBFBD>riph<EFBFBD>rique random ou
|
||
urandom.</p></li>
|
||
</ul>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">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</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslrenegbuffersize" id="sslrenegbuffersize">Directive</a> <a name="SSLRenegBufferSize" id="SSLRenegBufferSize">SSLRenegBufferSize</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>D<>finit la taille du tampon de ren<EFBFBD>gociation
|
||
SSL</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLRenegBufferSize <var>taille</var></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLRenegBufferSize 131072</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>r<>pertoire, .htaccess</td></tr>
|
||
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
|
||
<p>Si une ren<EFBFBD>gociation SSL est requise dans un contexte de r<EFBFBD>pertoire,
|
||
par exemple avec l'utilisation de <code class="directive"><a href="#sslverifyclient">SSLVerifyClient</a></code> dans un bloc Directory ou
|
||
Location, mod_ssl doit mettre en tampon en m<EFBFBD>moire tout corps de requ<EFBFBD>te
|
||
HTTP en attendant qu'une nouvelle initialisation de connexion SSL puisse
|
||
<EFBFBD>tre effectu<EFBFBD>e. Cette directive permet de d<EFBFBD>finir la quantit<EFBFBD> de m<EFBFBD>moire
|
||
<EFBFBD> allouer pour ce tampon.</p>
|
||
|
||
<div class="warning"><p>
|
||
Notez que dans de nombreuses configurations, le client qui envoie un
|
||
corps de requ<EFBFBD>te n'est pas forc<EFBFBD>ment digne de confiance, et l'on doit
|
||
par cons<EFBFBD>quent prendre en consid<EFBFBD>ration la possibilit<EFBFBD> d'une attaque de
|
||
type d<EFBFBD>ni de service lorsqu'on modifie la valeur de cette directive.
|
||
</p></div>
|
||
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLRenegBufferSize 262144</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslrequire" id="sslrequire">Directive</a> <a name="SSLRequire" id="SSLRequire">SSLRequire</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>N'autorise l'acc<63>s que lorsqu'une expression bool<EFBFBD>enne
|
||
complexe et arbitraire est vraie</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLRequire <em>expression</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>r<>pertoire, .htaccess</td></tr>
|
||
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<div class="note"><h3>SSLRequire is obsol<EFBFBD>te</h3>
|
||
<p><code>SSLRequire</code> est obsol<EFBFBD>te et doit en g<EFBFBD>n<EFBFBD>ral <EFBFBD>tre
|
||
remplac<EFBFBD>e par l'expression <a href="mod_authz_core.html#reqexpr">Require</a>. La syntaxe <a href="../expr.html">ap_expr</a> de l'expression <code>Require</code> est
|
||
une extension de la syntaxe de <code>SSLRequire</code>, avec les
|
||
diff<EFBFBD>rences suivantes :</p>
|
||
|
||
<p>Avec <code>SSLRequire</code>, les op<EFBFBD>rateurs de comparaison
|
||
<code><</code>, <code><=</code>, ... sont strictement <EFBFBD>quivalents
|
||
aux op<EFBFBD>rateurs <code>lt</code>, <code>le</code>, ... , et fonctionnent
|
||
selon une m<EFBFBD>thode qui compare tout d'abord la longueur des deux cha<EFBFBD>nes,
|
||
puis l'ordre alphab<EFBFBD>tique. Les expressions <a href="../expr.html">ap_expr</a>, quant <EFBFBD> elles, poss<EFBFBD>dent deux jeux
|
||
d'op<6F>rateurs de comparaison : les op<EFBFBD>rateurs <code><</code>,
|
||
<code><=</code>, ... effectuent une comparaison alphab<EFBFBD>tique de
|
||
cha<EFBFBD>nes, alors que les op<EFBFBD>rateurs <code>-lt</code>, <code>-le</code>,
|
||
... effectuent une comparaison d'entiers. Ces derniers poss<EFBFBD>dent aussi
|
||
des alias sans tiret initial : <code>lt</code>, <code>le</code>, ...
|
||
</p>
|
||
|
||
</div>
|
||
|
||
<p>Cette directive permet de sp<EFBFBD>cifier une condition g<EFBFBD>n<EFBFBD>rale d'acc<63>s
|
||
qui doit <EFBFBD>tre enti<EFBFBD>rement satisfaite pour que l'acc<63>s soit autoris<EFBFBD>.
|
||
C'est une directive tr<EFBFBD>s puissante, car la condition d'acc<63>s sp<EFBFBD>cifi<EFBFBD>e
|
||
est une expression bool<EFBFBD>enne complexe et arbitraire contenant un nombre
|
||
quelconque de v<EFBFBD>rifications quant aux autorisations d'acc<63>s.</p>
|
||
<p>
|
||
L'<em>expression</em> doit respecter la syntaxe suivante (fournie ici
|
||
sous la forme d'une notation dans le style de la grammaire BNF) :</p>
|
||
<blockquote>
|
||
<pre>expr ::= "<strong>true</strong>" | "<strong>false</strong>"
|
||
| "<strong>!</strong>" expr
|
||
| expr "<strong>&&</strong>" expr
|
||
| expr "<strong>||</strong>" expr
|
||
| "<strong>(</strong>" expr "<strong>)</strong>"
|
||
| comp
|
||
|
||
comp ::= word "<strong>==</strong>" word | word "<strong>eq</strong>" word
|
||
| word "<strong>!=</strong>" word | word "<strong>ne</strong>" word
|
||
| word "<strong><</strong>" word | word "<strong>lt</strong>" word
|
||
| word "<strong><=</strong>" word | word "<strong>le</strong>" word
|
||
| word "<strong>></strong>" word | word "<strong>gt</strong>" word
|
||
| word "<strong>>=</strong>" word | word "<strong>ge</strong>" word
|
||
| word "<strong>in</strong>" "<strong>{</strong>" wordlist "<strong>}</strong>"
|
||
| word "<strong>in</strong>" "<strong>PeerExtList(</strong>" word "<strong>)</strong>"
|
||
| word "<strong>=~</strong>" regex
|
||
| word "<strong>!~</strong>" regex
|
||
|
||
wordlist ::= word
|
||
| wordlist "<strong>,</strong>" word
|
||
|
||
word ::= digit
|
||
| cstring
|
||
| variable
|
||
| function
|
||
|
||
digit ::= [0-9]+
|
||
cstring ::= "..."
|
||
variable ::= "<strong>%{</strong>" varname "<strong>}</strong>"
|
||
function ::= funcname "<strong>(</strong>" funcargs "<strong>)</strong>"</pre>
|
||
</blockquote>
|
||
<p>Pour <code>varname</code>, toute variable d<EFBFBD>crite dans <a href="#envvars">Variables d'environnement</a> pourra <EFBFBD>tre utilis<EFBFBD>e.
|
||
Pour <code>funcname</code>, vous trouverez la liste des fonctions
|
||
disponibles dans la <a href="../expr.html#functions">documentation
|
||
ap_expr</a>.</p>
|
||
|
||
<p><em>expression</em> est interpr<EFBFBD>t<EFBFBD>e et traduite
|
||
sous une forme machine interne lors du chargement de la configuration,
|
||
puis <EFBFBD>valu<EFBFBD>e lors du traitement de la requ<EFBFBD>te. Dans le contexte des
|
||
fichiers .htaccess, <em>expression</em> est interpr<EFBFBD>t<EFBFBD>e et ex<EFBFBD>cut<EFBFBD>e
|
||
chaque fois que le fichier .htaccess intervient lors du traitement de la
|
||
requ<EFBFBD>te.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">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]+$/</pre>
|
||
</div>
|
||
|
||
|
||
<p>La fonction <code>PeerExtList(<em>identifiant objet</em>)</code>
|
||
recherche une instance d'extension de certificat X.509 identifi<EFBFBD>e par
|
||
<em>identifiant objet</em> (OID) dans le certificat client. L'expression est
|
||
<EFBFBD>valu<EFBFBD>e <EFBFBD> true si la partie gauche de la cha<EFBFBD>ne correspond exactement <EFBFBD>
|
||
la valeur d'une extension identifi<EFBFBD>e par cet OID (Si plusieurs
|
||
extensions poss<EFBFBD>dent le m<EFBFBD>me OID, l'une d'entre elles au moins doit
|
||
correspondre).
|
||
</p>
|
||
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLRequire "foobar" in PeerExtList("1.2.3.4.5.6")</pre>
|
||
</div>
|
||
|
||
<div class="note"><h3>Notes <EFBFBD> propos de la fonction PeerExtList</h3>
|
||
|
||
<ul>
|
||
|
||
<li><p>L'identifiant objet peut <EFBFBD>tre sp<EFBFBD>cifi<EFBFBD> soit comme un nom
|
||
descriptif reconnu par la biblioth<EFBFBD>que SSL, tel que
|
||
<code>"nsComment"</code>, soit comme un OID num<EFBFBD>rique tel que
|
||
<code>"1.2.3.4.5.6"</code>.</p></li>
|
||
|
||
<li><p>Les expressions contenant des types connus de la biblioth<EFBFBD>que
|
||
SSL sont transform<EFBFBD>es en cha<EFBFBD>nes avant comparaison. Pour les extensions
|
||
contenant un type non connu de la biblioth<EFBFBD>que SSL, mod_ssl va essayer
|
||
d'interpr<70>ter la valeur s'il s'agit d'un des types ASN.1 primaire UTF8String,
|
||
IA5String, VisibleString, ou BMPString. Si l'extension correspond <EFBFBD> un
|
||
de ces types, la cha<EFBFBD>ne sera convertie en UTF-8 si n<EFBFBD>cessaire, puis
|
||
compar<EFBFBD>e avec la partie gauche de l'expression.</p></li>
|
||
|
||
</ul>
|
||
</div>
|
||
|
||
|
||
<h3>Voir aussi</h3>
|
||
<ul>
|
||
<li><a href="../env.html">Les variables d'environnement dans le
|
||
serveur HTTP Apache</a>, pour d'autres exemples.
|
||
</li>
|
||
<li><a href="mod_authz_core.html#reqexpr">Require expr</a></li>
|
||
<li><a href="../expr.html">Syntaxe g<EFBFBD>n<EFBFBD>rale des expressions dans le
|
||
serveur HTTP Apache</a>
|
||
</li>
|
||
</ul>
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslrequiressl" id="sslrequiressl">Directive</a> <a name="SSLRequireSSL" id="SSLRequireSSL">SSLRequireSSL</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Interdit l'acc<63>s lorsque la requ<EFBFBD>te HTTP n'utilise pas
|
||
SSL</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLRequireSSL</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>r<>pertoire, .htaccess</td></tr>
|
||
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive interdit l'acc<63>s si HTTP sur SSL (c'est <EFBFBD> dire HTTPS)
|
||
n'est pas activ<EFBFBD> pour la connexion courante. Ceci est tr<EFBFBD>s pratique dans
|
||
un serveur virtuel o<EFBFBD> SSL est activ<EFBFBD> ou dans un r<EFBFBD>pertoire pour se
|
||
prot<EFBFBD>ger des erreurs de configuration qui pourraient donner acc<EFBFBD>s <EFBFBD> des
|
||
ressources prot<EFBFBD>g<EFBFBD>es. Lorsque cette directive est pr<EFBFBD>sente, toutes les
|
||
requ<EFBFBD>tes qui n'utilisent pas SSL sont rejet<EFBFBD>es.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLRequireSSL</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslsessioncache" id="sslsessioncache">Directive</a> <a name="SSLSessionCache" id="SSLSessionCache">SSLSessionCache</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Type du cache de session SSL global et
|
||
inter-processus</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLSessionCache <em>type</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLSessionCache none</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de configurer le type de stockage du cache de
|
||
session SSL global et inter-processus. Ce cache est une fonctionnalit<EFBFBD>
|
||
optionnelle qui acc<EFBFBD>l<EFBFBD>re le traitement parall<EFBFBD>le des requ<EFBFBD>tes. Pour ce
|
||
qui est des requ<EFBFBD>tes vers un m<EFBFBD>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<EFBFBD>es via des requ<EFBFBD>tes parall<EFBFBD>les (un nombre de quatre
|
||
requ<EFBFBD>tes parall<EFBFBD>les est courant), ces requ<EFBFBD>tes vont <EFBFBD>tre servies par
|
||
<em>plusieurs</em> processus du serveur pr<EFBFBD>-d<>clench<63>s. Ici, un cache
|
||
inter-processus permet d'<27>viter des n<EFBFBD>gociations de session
|
||
inutiles.</p>
|
||
<p>
|
||
Les quatre <em>type</em>s de stockage suivants sont actuellement
|
||
support<EFBFBD>s :</p>
|
||
<ul>
|
||
<li><code>none</code>
|
||
|
||
<p>Cette valeur d<EFBFBD>sactive le cache de session global et
|
||
inter-processus, ce qui va ralentir le serveur de mani<EFBFBD>re sensible
|
||
et peut poser probl<EFBFBD>me avec certains navigateurs, en particulier si
|
||
les certificats clients sont activ<EFBFBD>s. Cette configuration n'est pas
|
||
recommand<EFBFBD>e.</p></li>
|
||
|
||
<li><code>nonenotnull</code>
|
||
|
||
<p>Cette valeur d<EFBFBD>sactive tout cache de session global et
|
||
inter-processus. Cependant, elle force OpenSSL <EFBFBD> envoyer un
|
||
identifiant de session non nul afin de s'adapter aux clients bogu<EFBFBD>s
|
||
qui en n<EFBFBD>cessitent un.</p></li>
|
||
|
||
<li><code>dbm:/chemin/vers/fichier-donn<6E>es</code>
|
||
|
||
<p>Cette valeur utilise un fichier de hashage DBM sur disque local
|
||
pour synchroniser les caches OpenSSL locaux en m<EFBFBD>moire des processus
|
||
du serveur. Ce cache de session peut <EFBFBD>tre sujet <EFBFBD> des probl<EFBFBD>mes de
|
||
fiabilit<EFBFBD> sous forte charge. Pour l'utiliser, le module
|
||
<code class="module"><a href="../mod/mod_socache_dbm.html">mod_socache_dbm</a></code> doit <EFBFBD>tre charg<EFBFBD>.</p></li>
|
||
|
||
<li><code>shmcb:/chemin/vers/fichier-donn<6E>es</code>[<code>(</code><em>nombre</em><code>)</code>]
|
||
|
||
<p>Cette valeur utilise un tampon cyclique <EFBFBD> hautes performances
|
||
(d'une taille d'environ <em>nombre</em> octets) dans un segment de
|
||
m<EFBFBD>moire partag<EFBFBD>e en RAM (<28>tabli via
|
||
<code>/chemin/vers/fichier-donn<6E>es</code>, pour synchroniser les
|
||
caches OpenSSL locaux en m<EFBFBD>moire des processus du serveur. C'est le
|
||
type de cache de session recommand<EFBFBD>. Pour l'utiliser, le module
|
||
<code class="module"><a href="../mod/mod_socache_shmcb.html">mod_socache_shmcb</a></code> doit <EFBFBD>tre charg<EFBFBD>.</p></li>
|
||
|
||
<li><code>dc:UNIX:/chemin/vers/socket</code>
|
||
|
||
<p>Cette valeur utilise les biblioth<EFBFBD>ques de mise en cache de
|
||
sessions distribu<EFBFBD>e sur <a href="http://distcache.sourceforge.net/">distcache</a>.
|
||
L'argument doit sp<EFBFBD>cifier le serveur ou mandataire <EFBFBD> utiliser en
|
||
utilisant la syntaxe d'adressage distcache ; par exemple,
|
||
<code>UNIX:/chemin/vers/socket</code> sp<EFBFBD>cifie un socket de domaine
|
||
Unix (en g<EFBFBD>n<EFBFBD>ral un mandataire de dc_client local) ;
|
||
<code>IP:serveur.example.com:9001</code> sp<EFBFBD>cifie une adresse IP.
|
||
Pour l'utiliser, le module <code class="module"><a href="../mod/mod_socache_dc.html">mod_socache_dc</a></code> doit <EFBFBD>tre
|
||
charg<EFBFBD>.</p></li>
|
||
|
||
</ul>
|
||
|
||
<div class="example"><h3>Exemples</h3><pre class="prettyprint lang-config">SSLSessionCache "dbm:/usr/local/apache/logs/ssl_gcache_data"
|
||
SSLSessionCache "shmcb:/usr/local/apache/logs/ssl_gcache_data(512000)"</pre>
|
||
</div>
|
||
|
||
<p>Le mutex <code>ssl-cache</code> permet de s<EFBFBD>rialiser l'acc<63>s au cache
|
||
de session afin d'<27>viter toute corruption. Ce mutex peut <EFBFBD>tre configur<EFBFBD>
|
||
via la directive <code class="directive"><a href="../mod/core.html#mutex">Mutex</a></code>.</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslsessioncachetimeout" id="sslsessioncachetimeout">Directive</a> <a name="SSLSessionCacheTimeout" id="SSLSessionCacheTimeout">SSLSessionCacheTimeout</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nombre de secondes avant l'expiration d'une session SSL
|
||
dans le cache de sessions</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLSessionCacheTimeout <em>secondes</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLSessionCacheTimeout 300</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>S'applique aussi au renouvellement de la session TLS de
|
||
la RFC 5077 <EFBFBD> partir de la version 2.4.10 du serveur HTTP Apache</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir la dur<EFBFBD>e de vie en secondes des
|
||
informations stock<EFBFBD>es dans le cache de sessions SSL global et
|
||
inter-processus, dans le cache OpenSSL interne en m<EFBFBD>moire et pour
|
||
les sessions r<EFBFBD>initialis<EFBFBD>es par la reprise de session TLS (RFC 5077). elle peut
|
||
<EFBFBD>tre d<EFBFBD>finie <EFBFBD> une valeur d'environ 15 <EFBFBD> des fins de test, mais <EFBFBD> une
|
||
valeur tr<EFBFBD>s sup<EFBFBD>rieure comme 300 en production.</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLSessionCacheTimeout 600</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslsessionticketkeyfile" id="sslsessionticketkeyfile">Directive</a> <a name="SSLSessionTicketKeyFile" id="SSLSessionTicketKeyFile">SSLSessionTicketKeyFile</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Cl<43> de chiffrement/d<>chiffrement permanente pour les
|
||
tickets de session TLS</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLSessionTicketKeyFile <em>chemin-fichier</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible depuis la version 2.4.0 du serveur HTTP
|
||
Apache, sous r<EFBFBD>serve que l'on utilise une version 0.9.8h ou sup<EFBFBD>rieure
|
||
d'OpenSSL</td></tr>
|
||
</table>
|
||
<p>Cette directive permet de d<EFBFBD>finir une cl<EFBFBD> secr<EFBFBD>te pour le chiffrement
|
||
et le d<EFBFBD>chiffrement des tickets de session TLS selon les pr<EFBFBD>conisations
|
||
de la <a href="http://www.ietf.org/rfc/rfc5077.txt">RFC 5077</a>. Elle a
|
||
<EFBFBD>t<EFBFBD> con<EFBFBD>ue <EFBFBD> l'origine pour les environnements de clusters o<EFBFBD> les
|
||
donn<EFBFBD>es des sessions TLS doivent <EFBFBD>tre partag<EFBFBD>es entre plusieurs noeuds.
|
||
Pour les configurations ne comportant qu'une seule instance de httpd, il
|
||
est pr<EFBFBD>f<EFBFBD>rable d'utiliser les cl<EFBFBD>s (al<61>atoires) g<EFBFBD>n<EFBFBD>r<EFBFBD>es par mod_ssl au
|
||
d<EFBFBD>marrage du serveur.</p>
|
||
<p>Le fichier doit contenir 48 octets de donn<EFBFBD>es al<EFBFBD>atoires cr<EFBFBD><EFBFBD>es de
|
||
pr<EFBFBD>f<EFBFBD>rence par une source <EFBFBD> haute entropie. Sur un syst<EFBFBD>me de type UNIX,
|
||
il est possible de cr<EFBFBD>er le fichier contenant la cl<EFBFBD> de la mani<EFBFBD>re
|
||
suivante :</p>
|
||
|
||
<div class="example"><p><code>
|
||
dd if=/dev/random of=/chemin/vers/fichier.tkey bs=1 count=48
|
||
</code></p></div>
|
||
|
||
<p>Ces cl<EFBFBD>s doivent <EFBFBD>tre renouvel<EFBFBD>es fr<EFBFBD>quemment, car il s'agit du seul
|
||
moyen d'invalider un ticket de session existant - OpenSSL ne permet pas
|
||
actuellement de sp<EFBFBD>cifier une limite <EFBFBD> la dur<EFBFBD>e de
|
||
vie des tickets. Une nouvelle cl<EFBFBD> de ticket ne peut <EFBFBD>tre utilis<EFBFBD>e qu'apr<70>s
|
||
red<EFBFBD>marrage du serveur web. Tous les tickets de session existants
|
||
deviennent invalides apr<EFBFBD>s le red<EFBFBD>marrage du serveur.</p>
|
||
|
||
<div class="warning">
|
||
<p>Ce fichier contient des donn<EFBFBD>es sensibles et doit donc <EFBFBD>tre prot<EFBFBD>g<EFBFBD>
|
||
par des permissions similaires <EFBFBD> celles du fichier sp<EFBFBD>cifi<EFBFBD> par la
|
||
directive <code class="directive"><a href="#sslcertificatekeyfile">SSLCertificateKeyFile</a></code>.</p>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslsessiontickets" id="sslsessiontickets">Directive</a> <a name="SSLSessionTickets" id="SSLSessionTickets">SSLSessionTickets</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active ou d<EFBFBD>sactive les tickets de session TLS</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLSessionTickets on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLSessionTickets on</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible <EFBFBD> partir de la version 2.4.11 du serveur HTTP
|
||
Apache, sous r<EFBFBD>serve d'utiliser OpenSSL version 0.9.8f ou sup<EFBFBD>rieure.
|
||
</td></tr>
|
||
</table>
|
||
<p>Cette directive permet d'activer ou de d<EFBFBD>sactiver l'utilisation des
|
||
tickets de session TLS (RFC 5077).</p>
|
||
<div class="warning">
|
||
<p>Les tickets de session TLS sont activ<EFBFBD>s par d<EFBFBD>faut. Les utiliser sans
|
||
red<EFBFBD>marrer le serveur selon une p<EFBFBD>riodicit<EFBFBD> appropri<EFBFBD>e (par exemple
|
||
quotidiennement) compromet cependant le niveau de confidentialit<EFBFBD>.</p>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslsrpunknownuserseed" id="sslsrpunknownuserseed">Directive</a> <a name="SSLSRPUnknownUserSeed" id="SSLSRPUnknownUserSeed">SSLSRPUnknownUserSeed</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Source de randomisation pour utilisateur SRP inconnu</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLSRPUnknownUserSeed <em>secret-string</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible depuis la version 2.4.4 du serveur HTTP
|
||
Apache, sous r<EFBFBD>serve d'utiliser OpenSSL version 1.0.1 ou sup<EFBFBD>rieure.</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir la source de randomisation <EFBFBD> utiliser
|
||
pour les utilisateurs SRP inconnus, ceci afin de combler les manques en
|
||
cas d'existence d'un tel utilisateur. Elle d<EFBFBD>finit une cha<EFBFBD>ne secr<EFBFBD>te. Si
|
||
cette directive n'est pas d<EFBFBD>finie, Apache renverra une alerte
|
||
UNKNOWN_PSK_IDENTITY aux clients qui fournissent un nom d'utilisateur
|
||
inconnu.
|
||
</p>
|
||
<div class="example"><h3>Exemple</h3><p><code>
|
||
SSLSRPUnknownUserSeed "secret"
|
||
</code></p></div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslsrpverifierfile" id="sslsrpverifierfile">Directive</a> <a name="SSLSRPVerifierFile" id="SSLSRPVerifierFile">SSLSRPVerifierFile</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Chemin du fichier de v<EFBFBD>rification SRP</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLSRPVerifierFile <em>file-path</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible depuis la version 2.4.4 du serveur HTTP
|
||
Apache, sous r<EFBFBD>serve d'utiliser OpenSSL version 1.0.1 ou sup<EFBFBD>rieure.</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet d'activer TLS-SRP et de d<EFBFBD>finir le chemin du
|
||
fichier de v<EFBFBD>rification OpenSSL SRP (Mot de passe distant s<EFBFBD>curis<EFBFBD>)
|
||
contenant les noms d'utilisateurs TLS-SRP, les v<EFBFBD>rificateurs, les
|
||
"grains de sel" (salts), ainsi que les param<EFBFBD>tres de groupe.</p>
|
||
<div class="example"><h3>Exemple</h3><p><code>
|
||
SSLSRPVerifierFile "/path/to/file.srpv"
|
||
</code></p></div>
|
||
<p>
|
||
Le fichier de v<EFBFBD>rification peut <EFBFBD>tre cr<EFBFBD><EFBFBD> via l'utilitaire en ligne de
|
||
commande <code>openssl</code> :</p>
|
||
<div class="example"><h3>Cr<43>ation du fichier de v<EFBFBD>rification SRP</h3><p><code>
|
||
openssl srp -srpvfile passwd.srpv -userinfo "some info" -add username
|
||
</code></p></div>
|
||
<p>La valeur affect<EFBFBD>e au param<EFBFBD>tre optionnel <code>-userinfo</code> est
|
||
enregistr<EFBFBD>e dans la variable d'environnement
|
||
<code>SSL_SRP_USERINFO</code>.</p>
|
||
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslstaplingcache" id="sslstaplingcache">Directive</a> <a name="SSLStaplingCache" id="SSLStaplingCache">SSLStaplingCache</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Configuration du cache pour l'agrafage OCSP</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLStaplingCache <em>type</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible si on utilise OpenSSL version 0.9.8h ou sup<EFBFBD>rieure</td></tr>
|
||
</table>
|
||
<p>Si <code class="directive"><a href="#sslusestapling">SSLUseStapling</a></code> est <EFBFBD> "on",
|
||
cette directive permet de configurer le cache destin<EFBFBD> <EFBFBD> stocker les
|
||
r<EFBFBD>ponses OCSP incluses dans la n<EFBFBD>gociation TLS. La configuration d'un
|
||
cache est obligatoire pour pouvoir utiliser l'agrafage OCSP. A
|
||
l'exception de <code>none</code> et <code>nonenotnull</code>, cette
|
||
directive supporte les m<EFBFBD>mes types de stockage que la directive
|
||
<code class="directive"><a href="#sslsessioncache">SSLSessionCache</a></code>.</p>
|
||
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslstaplingerrorcachetimeout" id="sslstaplingerrorcachetimeout">Directive</a> <a name="SSLStaplingErrorCacheTimeout" id="SSLStaplingErrorCacheTimeout">SSLStaplingErrorCacheTimeout</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Dur<75>e de vie des r<EFBFBD>ponses invalides dans le cache pour
|
||
agrafage OCSP</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLStaplingErrorCacheTimeout <em>secondes</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLStaplingErrorCacheTimeout 600</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible si on utilise OpenSSL version 0.9.8h ou sup<EFBFBD>rieure</td></tr>
|
||
</table>
|
||
<p>Cette directive permet de d<EFBFBD>finir la dur<EFBFBD>e de vie des r<EFBFBD>ponses
|
||
<em>invalides</em> dans le cache pour agrafage OCSP configur<EFBFBD> via la
|
||
directive <code class="directive"><a href="#sslstaplingcache">SSLStaplingCache</a></code>. Pour
|
||
d<EFBFBD>finir la dur<EFBFBD>e de vie des r<EFBFBD>ponses valides, voir la directive
|
||
<code class="directive"><a href="#sslstaplingstandardcachetimeout">SSLStaplingStandardCacheTimeout</a></code>.</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslstaplingfaketrylater" id="sslstaplingfaketrylater">Directive</a> <a name="SSLStaplingFakeTryLater" id="SSLStaplingFakeTryLater">SSLStaplingFakeTryLater</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>G<>n<EFBFBD>re une r<EFBFBD>ponse "tryLater" pour les requ<EFBFBD>tes OCSP <EFBFBD>chou<EFBFBD>es</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLStaplingFakeTryLater on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLStaplingFakeTryLater on</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible si on utilise OpenSSL version 0.9.8h ou sup<EFBFBD>rieure</td></tr>
|
||
</table>
|
||
<p>Lorsque cette directive est activ<EFBFBD>e, et si une requ<EFBFBD>te vers un
|
||
serveur OCSP <EFBFBD> des fins d'inclusion dans une n<EFBFBD>gociation TLS <EFBFBD>choue,
|
||
mod_ssl va g<EFBFBD>n<EFBFBD>rer une r<EFBFBD>ponse "tryLater" pour le client (<code class="directive"><a href="#sslstaplingreturnrespondererrors">SSLStaplingReturnResponderErrors</a></code> doit <EFBFBD>tre
|
||
activ<EFBFBD>e).</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslstaplingforceurl" id="sslstaplingforceurl">Directive</a> <a name="SSLStaplingForceURL" id="SSLStaplingForceURL">SSLStaplingForceURL</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Remplace l'URI du serveur OCSP sp<EFBFBD>cifi<EFBFBD> dans l'extension
|
||
AIA du certificat</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLStaplingForceURL <em>uri</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible si on utilise OpenSSL version 0.9.8h ou sup<EFBFBD>rieure</td></tr>
|
||
</table>
|
||
<p>Cette directive permet de remplacer l'URI du serveur OCSP extraite de
|
||
l'extension authorityInfoAccess (AIA) du certificat. Elle peut s'av<61>rer
|
||
utile lorsqu'on passe par un mandataire</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslstaplingrespondertimeout" id="sslstaplingrespondertimeout">Directive</a> <a name="SSLStaplingResponderTimeout" id="SSLStaplingResponderTimeout">SSLStaplingResponderTimeout</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Temps d'attente maximum pour les requ<EFBFBD>tes vers les serveurs
|
||
OCSP</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLStaplingResponderTimeout <em>secondes</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLStaplingResponderTimeout 10</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible si on utilise OpenSSL version 0.9.8h ou sup<EFBFBD>rieure</td></tr>
|
||
</table>
|
||
<p>Cette directive permet de d<EFBFBD>finir le temps d'attente maximum lorsque
|
||
mod_ssl envoie une requ<EFBFBD>te vers un serveur OCSP afin d'obtenir une
|
||
r<EFBFBD>ponse destin<EFBFBD>e <EFBFBD> <EFBFBD>tre incluse dans les n<EFBFBD>gociations TLS avec les
|
||
clients (<code class="directive"><a href="#sslusestapling">SSLUseStapling</a></code> doit
|
||
avoir <EFBFBD>t<EFBFBD> activ<EFBFBD>e au pr<EFBFBD>alable).</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslstaplingresponsemaxage" id="sslstaplingresponsemaxage">Directive</a> <a name="SSLStaplingResponseMaxAge" id="SSLStaplingResponseMaxAge">SSLStaplingResponseMaxAge</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Age maximum autoris<EFBFBD> des r<EFBFBD>ponses OCSP incluses dans la
|
||
n<EFBFBD>gociation TLS</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLStaplingResponseMaxAge <em>secondes</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLStaplingResponseMaxAge -1</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible si on utilise OpenSSL version 0.9.8h ou sup<EFBFBD>rieure</td></tr>
|
||
</table>
|
||
<p>Cette directive permet de d<EFBFBD>finir l'<27>ge maximum autoris<EFBFBD>
|
||
("fra<72>cheur") des r<EFBFBD>ponses OCSP incluses dans la n<EFBFBD>gociation TLS
|
||
(<code class="directive"><a href="#sslusestapling">SSLUseStapling</a></code> doit
|
||
avoir <EFBFBD>t<EFBFBD> activ<EFBFBD>e au pr<EFBFBD>alable). La valeur par d<EFBFBD>faut (<code>-1</code>)
|
||
ne d<EFBFBD>finit aucun <EFBFBD>ge maximum, ce qui signifie que les r<EFBFBD>ponses OCSP sont
|
||
consid<EFBFBD>r<EFBFBD>es comme valides <EFBFBD> partir du moment o<EFBFBD> le contenu de leur champ
|
||
<code>nextUpdate</code> se trouve dans le futur.</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslstaplingresponsetimeskew" id="sslstaplingresponsetimeskew">Directive</a> <a name="SSLStaplingResponseTimeSkew" id="SSLStaplingResponseTimeSkew">SSLStaplingResponseTimeSkew</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Dur<75>e de vie maximale autoris<EFBFBD>e des r<EFBFBD>ponses OCSP incluses dans la
|
||
n<EFBFBD>gociation TLS</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLStaplingResponseTimeSkew <em>secondes</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLStaplingResponseTimeSkew 300</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible si on utilise OpenSSL version 0.9.8h ou sup<EFBFBD>rieure</td></tr>
|
||
</table>
|
||
<p>Cette directive permet de sp<EFBFBD>cifier l'intervalle de temps maximum que
|
||
mod_ssl va calculer en faisant la diff<EFBFBD>rence entre les contenus des
|
||
champs <code>nextUpdate</code> et <code>thisUpdate</code> des r<EFBFBD>ponses
|
||
OCSP incluses dans la n<EFBFBD>gociation TLS. Pour pouvoir utiliser cette
|
||
directive, <code class="directive"><a href="#sslusestapling">SSLUseStapling</a></code> doit
|
||
<EFBFBD>tre <EFBFBD> "on".</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslstaplingreturnrespondererrors" id="sslstaplingreturnrespondererrors">Directive</a> <a name="SSLStaplingReturnResponderErrors" id="SSLStaplingReturnResponderErrors">SSLStaplingReturnResponderErrors</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Transmet au client les erreurs survenues lors des requ<EFBFBD>tes
|
||
OCSP</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLStaplingReturnResponderErrors on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLStaplingReturnResponderErrors on</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible si on utilise OpenSSL version 0.9.8h ou sup<EFBFBD>rieure</td></tr>
|
||
</table>
|
||
<p>Lorsque cette directive est activ<EFBFBD>e, mod_ssl va transmettre au client les
|
||
r<EFBFBD>ponses concernant les requ<EFBFBD>tes OCSP
|
||
<EFBFBD>chou<EFBFBD>es (comme les r<EFBFBD>ponses avec un <EFBFBD>tat autre que
|
||
"successful", les r<EFBFBD>ponses avec un statut de certificat autre que
|
||
"good", les r<EFBFBD>ponses
|
||
p<EFBFBD>rim<EFBFBD>es, etc...). Lorsqu'elle est <EFBFBD>
|
||
<code>off</code>, seules les r<EFBFBD>ponses indiquant un statut de certificat
|
||
"good" seront incluses dans les
|
||
n<EFBFBD>gociations TLS avec les clients.</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslstaplingstandardcachetimeout" id="sslstaplingstandardcachetimeout">Directive</a> <a name="SSLStaplingStandardCacheTimeout" id="SSLStaplingStandardCacheTimeout">SSLStaplingStandardCacheTimeout</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Dur<75>e de vie des r<EFBFBD>ponses OCSP dans le cache</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLStaplingStandardCacheTimeout <em>secondes</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLStaplingStandardCacheTimeout 3600</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible si on utilise OpenSSL version 0.9.8h ou sup<EFBFBD>rieure</td></tr>
|
||
</table>
|
||
<p>Cette directive permet de d<EFBFBD>finir la dur<EFBFBD>e de vie des r<EFBFBD>ponses OCSP
|
||
dans le cache configur<EFBFBD> via la directive <code class="directive"><a href="#sslstaplingcache">SSLStaplingCache</a></code>. Elle ne s'applique qu'aux
|
||
r<EFBFBD>ponse <em>valides</em>, alors que la directive <code class="directive"><a href="#sslstaplingerrorcachetimeout">SSLStaplingErrorCacheTimeout</a></code> s'applique aux
|
||
r<EFBFBD>ponses invalides ou non disponibles.
|
||
</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslstrictsnivhostcheck" id="sslstrictsnivhostcheck">Directive</a> <a name="SSLStrictSNIVHostCheck" id="SSLStrictSNIVHostCheck">SSLStrictSNIVHostCheck</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Contr<74>le de l'acc<63>s des clients non-SNI <EFBFBD> un serveur virtuel <EFBFBD>
|
||
base de nom.
|
||
</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLStrictSNIVHostCheck on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLStrictSNIVHostCheck off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de contr<EFBFBD>ler l'acc<63>s des clients non-SNI <EFBFBD> un serveur
|
||
virtuel <EFBFBD> base de nom. Si elle est d<EFBFBD>finie <EFBFBD> <code>on</code> dans le
|
||
serveur virtuel <EFBFBD> base de nom par d<EFBFBD>faut, les
|
||
clients non-SNI ne seront autoris<EFBFBD>s <EFBFBD> acc<EFBFBD>der <EFBFBD> aucun serveur virtuel
|
||
appartenant <EFBFBD> cette combinaison IP/port. Par
|
||
contre, si elle est d<EFBFBD>finie <EFBFBD> <code>on</code> dans un serveur virtuel
|
||
quelconque, les clients non-SNI ne se verront interdire l'acc<63>s qu'<27> ce
|
||
serveur.
|
||
</p>
|
||
|
||
<div class="warning"><p>
|
||
Cette option n'est disponible que si httpd a <EFBFBD>t<EFBFBD> compil<EFBFBD> avec une
|
||
version d'OpenSSL supportant SNI.
|
||
</p></div>
|
||
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLStrictSNIVHostCheck on</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslusername" id="sslusername">Directive</a> <a name="SSLUserName" id="SSLUserName">SSLUserName</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Nom de la variable servant <EFBFBD> d<EFBFBD>terminer le nom de
|
||
l'utilisateur</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLUserName <em>nom-var</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, r<EFBFBD>pertoire, .htaccess</td></tr>
|
||
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette variable permet de d<EFBFBD>finir le champ "user" de l'objet de la
|
||
requ<EFBFBD>te Apache. Ce champ est utilis<EFBFBD> par des modules de plus bas niveau
|
||
pour identifier l'utilisateur avec une cha<EFBFBD>ne de caract<EFBFBD>res. En
|
||
particulier, l'utilisation de cette directive peut provoquer la
|
||
d<EFBFBD>finition de la variable d'environnement <code>REMOTE_USER</code>.
|
||
La valeur de l'argument <em>nom-var</em> peut correspondre <EFBFBD> toute <a href="#envvars">variable d'environnement SSL</a>.</p>
|
||
|
||
<p>Lorsque l'option <code>FakeBasicAuth</code> est activ<EFBFBD>e, cette
|
||
directive contr<EFBFBD>le la valeur du nom d'utilisateur contenue dans
|
||
l'en-t<>te d'authentification de base (voir <a href="#ssloptions">SSLOptions</a>).</p>
|
||
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLUserName SSL_CLIENT_S_DN_CN</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslusestapling" id="sslusestapling">Directive</a> <a name="SSLUseStapling" id="SSLUseStapling">SSLUseStapling</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Active l'ajout des r<EFBFBD>ponses OCSP <EFBFBD> la n<EFBFBD>gociation TLS</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLUseStapling on|off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLUseStapling off</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
<tr><th><a href="directive-dict.html#Compatibility">Compatibilit<69>:</a></th><td>Disponible si on utilise OpenSSL version 0.9.8h ou sup<EFBFBD>rieure</td></tr>
|
||
</table>
|
||
<p>Cette directive permet d'activer l'"Agrafage OCSP" (OCSP stapling)
|
||
selon la d<EFBFBD>finition de l'extension TLS "Certificate Status Request"
|
||
fournie dans la RFC 6066. Si elle est activ<EFBFBD>e et si le client le
|
||
demande, mod_ssl va inclure une r<EFBFBD>ponse OCSP <EFBFBD> propos de son propre
|
||
certificat dans la n<EFBFBD>gociation TLS. Pour pouvoir activer l'Agrafage
|
||
OCSP, il est n<EFBFBD>cessaire de configurer un <code class="directive"><a href="#sslstaplingcache">SSLStaplingCache</a></code>.</p>
|
||
|
||
<p>L'agrafage OCSP dispense le client de requ<EFBFBD>rir le serveur OCSP
|
||
directement ; il faut cependant noter que selon les sp<EFBFBD>cifications de la
|
||
RFC 6066, la r<EFBFBD>ponse <code>CertificateStatus</code> du serveur ne peut
|
||
inclure une r<EFBFBD>ponse OCSP que pour un seul certificat. Pour les
|
||
certificats de serveur comportant des certificats de CA interm<EFBFBD>diaires
|
||
dans leur cha<EFBFBD>ne (c'est un cas typique de nos jours), l'impl<70>mentation
|
||
actuelle de l'agrafage OCSP n'atteint que partiellement l'objectif d'
|
||
"<22>conomie en questions/r<>ponse et en ressources". Pour plus de d<EFBFBD>tails,
|
||
voir la <a href="http://www.ietf.org/rfc/rfc6961.txt">RFC 6961</a> (TLS
|
||
Multiple Certificate Status Extension).
|
||
</p>
|
||
|
||
<p>Lorsque l'agrafage OCSP est activ<EFBFBD>, le mutex
|
||
<code>ssl-stapling</code> contr<EFBFBD>le l'acc<63>s au cache de l'agrafage OCSP
|
||
afin de pr<EFBFBD>venir toute corruption, et le mutex
|
||
<code>sss-stapling-refresh</code> contr<EFBFBD>le le raffra<EFBFBD>chissement des
|
||
r<EFBFBD>ponses OCSP. Ces mutex peuvent <EFBFBD>tre configur<EFBFBD>s via la directive
|
||
<code class="directive"><a href="../mod/core.html#mutex">Mutex</a></code>.
|
||
</p>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslverifyclient" id="sslverifyclient">Directive</a> <a name="SSLVerifyClient" id="SSLVerifyClient">SSLVerifyClient</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Niveau de v<EFBFBD>rification du certificat client</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLVerifyClient <em>niveau</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLVerifyClient none</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r<EFBFBD>pertoire, .htaccess</td></tr>
|
||
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de d<EFBFBD>finir le niveau de v<EFBFBD>rification du
|
||
certificat pour l'authentification du client. Notez que cette directive
|
||
peut <EFBFBD>tre utilis<EFBFBD>e <EFBFBD> la fois dans les contextes du serveur principal et
|
||
du r<EFBFBD>pertoire. Dans le contexte du serveur principal, elle s'applique au
|
||
processus d'authentification du client utilis<EFBFBD> au cours de la
|
||
n<EFBFBD>gociation SSL standard lors de l'<27>tablissement d'une connexion. Dans
|
||
un contexte de r<EFBFBD>pertoire, elle force une ren<EFBFBD>gociation SSL avec le
|
||
niveau de v<EFBFBD>rification du client sp<EFBFBD>cifi<EFBFBD>, apr<EFBFBD>s la lecture d'une
|
||
requ<EFBFBD>te HTTP, mais avant l'envoi de la r<EFBFBD>ponse HTTP.</p>
|
||
<p>
|
||
Les valeurs de <em>niveau</em> disponibles sont les suivantes :</p>
|
||
<ul>
|
||
<li><strong>none</strong>:
|
||
aucun certificat client n'est requis</li>
|
||
<li><strong>optional</strong>:
|
||
le client <em>peut</em> pr<EFBFBD>senter un certificat valide</li>
|
||
<li><strong>require</strong>:
|
||
le client <em>doit</em> pr<EFBFBD>senter un certificat valide</li>
|
||
<li><strong>optional_no_ca</strong>:
|
||
le client peut pr<EFBFBD>senter un certificat valide, mais il n'est pas
|
||
n<EFBFBD>cessaire que ce dernier soit v<EFBFBD>rifiable (avec succ<EFBFBD>s). Cette option ne
|
||
peut pas <EFBFBD>tre utilis<EFBFBD>e lors de l'authentification du client.</li>
|
||
</ul>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLVerifyClient require</pre>
|
||
</div>
|
||
|
||
</div>
|
||
<div class="top"><a href="#page-header"><img alt="top" src="../images/up.gif" /></a></div>
|
||
<div class="directive-section"><h2><a name="sslverifydepth" id="sslverifydepth">Directive</a> <a name="SSLVerifyDepth" id="SSLVerifyDepth">SSLVerifyDepth</a></h2>
|
||
<table class="directive">
|
||
<tr><th><a href="directive-dict.html#Description">Description:</a></th><td>Profondeur maximale des certificats de CA pour la
|
||
v<EFBFBD>rification des certificats clients</td></tr>
|
||
<tr><th><a href="directive-dict.html#Syntax">Syntaxe:</a></th><td><code>SSLVerifyDepth <em>nombre</em></code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Default">D<>faut:</a></th><td><code>SSLVerifyDepth 1</code></td></tr>
|
||
<tr><th><a href="directive-dict.html#Context">Contexte:</a></th><td>configuration du serveur, serveur virtuel, r<EFBFBD>pertoire, .htaccess</td></tr>
|
||
<tr><th><a href="directive-dict.html#Override">AllowOverride:</a></th><td>AuthConfig</td></tr>
|
||
<tr><th><a href="directive-dict.html#Status">Statut:</a></th><td>Extension</td></tr>
|
||
<tr><th><a href="directive-dict.html#Module">Module:</a></th><td>mod_ssl</td></tr>
|
||
</table>
|
||
<p>
|
||
Cette directive permet de sp<EFBFBD>cifier la profondeur maximale <EFBFBD> laquelle
|
||
mod_ssl va effectuer sa v<EFBFBD>rification avant de d<EFBFBD>cider que le client ne
|
||
poss<EFBFBD>de pas de certificat valide. Notez que cette directive peut <EFBFBD>tre
|
||
utilis<EFBFBD>e <EFBFBD> la fois dans les contextes du serveur principal et de
|
||
r<EFBFBD>pertoire. Dans le contexte du serveur principal, elle s'applique au
|
||
processus d'authentification du client utilis<EFBFBD> au cours de la
|
||
n<EFBFBD>gociation SSL standard lors de l'<27>tablissement d'une connexion. Dans
|
||
un contexte de r<EFBFBD>pertoire, elle force une ren<EFBFBD>gociation SSL avec la
|
||
profondeur v<EFBFBD>rification du client sp<EFBFBD>cifi<EFBFBD>e, apr<EFBFBD>s la lecture d'une
|
||
requ<EFBFBD>te HTTP, mais avant l'envoi de la r<EFBFBD>ponse HTTP.</p>
|
||
<p>
|
||
La profondeur correspond au nombre maximum de fournisseurs de
|
||
certificats interm<EFBFBD>diaires, c'est <EFBFBD> dire le nombre maximum de
|
||
certificats de CA que l'on est autoris<EFBFBD> <EFBFBD> suivre lors de la v<EFBFBD>rification
|
||
du certificat du client. Une profondeur de 0 signifie que seuls les
|
||
certificats clients auto-sign<67>s sont accept<EFBFBD>s ; la profondeur par d<EFBFBD>faut
|
||
de 1 signifie que le certificat client peut <EFBFBD>tre soit auto-sign<67>, soit
|
||
sign<EFBFBD> par une CA connue directement du serveur (c'est <EFBFBD> dire que le
|
||
certificat de la CA doit <EFBFBD>tre r<EFBFBD>f<EFBFBD>renc<EFBFBD> par la directive <code class="directive"><a href="#sslcacertificatepath">SSLCACertificatePath</a></code>), etc...</p>
|
||
<div class="example"><h3>Exemple</h3><pre class="prettyprint lang-config">SSLVerifyDepth 10</pre>
|
||
</div>
|
||
|
||
</div>
|
||
</div>
|
||
<div class="bottomlang">
|
||
<p><span>Langues Disponibles: </span><a href="../en/mod/mod_ssl.html" hreflang="en" rel="alternate" title="English"> en </a> |
|
||
<a href="../es/mod/mod_ssl.html" hreflang="es" rel="alternate" title="Espa<70>ol"> es </a> |
|
||
<a href="../fr/mod/mod_ssl.html" title="Fran<61>ais"> fr </a></p>
|
||
</div><div class="top"><a href="#page-header"><img src="../images/up.gif" alt="top" /></a></div><div class="section"><h2><a id="comments_section" name="comments_section">Commentaires</a></h2><div class="warning"><strong>Notice:</strong><br />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 <a href="http://httpd.apache.org/lists.html">mailing lists</a>.</div>
|
||
<script type="text/javascript"><!--//--><![CDATA[//><!--
|
||
var comments_shortname = 'httpd';
|
||
var comments_identifier = 'http://httpd.apache.org/docs/trunk/mod/mod_ssl.html';
|
||
(function(w, d) {
|
||
if (w.location.hostname.toLowerCase() == "httpd.apache.org") {
|
||
d.write('<div id="comments_thread"><\/div>');
|
||
var s = d.createElement('script');
|
||
s.type = 'text/javascript';
|
||
s.async = true;
|
||
s.src = 'https://comments.apache.org/show_comments.lua?site=' + comments_shortname + '&page=' + comments_identifier;
|
||
(d.getElementsByTagName('head')[0] || d.getElementsByTagName('body')[0]).appendChild(s);
|
||
}
|
||
else {
|
||
d.write('<div id="comments_thread">Comments are disabled for this page at the moment.<\/div>');
|
||
}
|
||
})(window, document);
|
||
//--><!]]></script></div><div id="footer">
|
||
<p class="apache">Copyright 2018 The Apache Software Foundation.<br />Autoris<69> sous <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p>
|
||
<p class="menu"><a href="../mod/">Modules</a> | <a href="../mod/quickreference.html">Directives</a> | <a href="http://wiki.apache.org/httpd/FAQ">FAQ</a> | <a href="../glossary.html">Glossaire</a> | <a href="../sitemap.html">Plan du site</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!--
|
||
if (typeof(prettyPrint) !== 'undefined') {
|
||
prettyPrint();
|
||
}
|
||
//--><!]]></script>
|
||
</body></html> |