diff options
Diffstat (limited to 'docs/manual/mod/mod_ssl.html.es.utf8')
-rw-r--r-- | docs/manual/mod/mod_ssl.html.es.utf8 | 3018 |
1 files changed, 3018 insertions, 0 deletions
diff --git a/docs/manual/mod/mod_ssl.html.es.utf8 b/docs/manual/mod/mod_ssl.html.es.utf8 new file mode 100644 index 0000000000..228ebcdbff --- /dev/null +++ b/docs/manual/mod/mod_ssl.html.es.utf8 @@ -0,0 +1,3018 @@ +<?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="es" xml:lang="es"><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 - Servidor HTTP Apache Versión 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/">Módulos</a> | <a href="../mod/quickreference.html">Directivas</a> | <a href="http://wiki.apache.org/httpd/FAQ">Preguntas Frecuentes</a> | <a href="../glossary.html">Glosario</a> | <a href="../sitemap.html">Mapa del sitio web</a></p> +<p class="apache">Versión 2.5 del Servidor HTTP Apache</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/">Servidor HTTP</a> > <a href="http://httpd.apache.org/docs/">Documentación</a> > <a href="../">Versión 2.5</a> > <a href="./">Módulos</a></div> +<div id="page-content"> +<div id="preamble"><h1>Módulo Apache mod_ssl</h1> +<div class="toplang"> +<p><span>Idiomas disponibles: </span><a href="../en/mod/mod_ssl.html" hreflang="en" rel="alternate" title="English"> en </a> | +<a href="../es/mod/mod_ssl.html" title="Español"> es </a> | +<a href="../fr/mod/mod_ssl.html" hreflang="fr" rel="alternate" title="Français"> fr </a></p> +</div> +<div class="outofdate">Esta traducción podría estar + obsoleta. Consulte la versión en inglés de la + documentación para comprobar si se han producido cambios + recientemente.</div> +<table class="module"><tr><th><a href="module-dict.html#Description">Descripción:</a></th><td>Criptografía fuerte usando una Capa de Sockets Seguros (Secure + Sockets Layer SSL) y protocolos de Seguridad de la Capa de Transporte + (Transport Layer Security TLS)</td></tr> +<tr><th><a href="module-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="module-dict.html#ModuleIdentifier">Identificador de Módulos:</a></th><td>ssl_module</td></tr> +<tr><th><a href="module-dict.html#SourceFile">Fichero de Código Fuente:</a></th><td>mod_ssl.c</td></tr></table> +<h3>Resumen de contenidos</h3> + +<p>Este módulo ofrece soporte para SSL v3 y TLS v1.x para el Servidor Apache + HTTP. SSL v2 ya no está soportado.</p> + +<p>Este módulo depende de <a href="http://www.openssl.org/">OpenSSL</a> para +proveer el motor de criptografía.</p> + +<p>Se facilitan más detalles, discusión y ejemplos en la +<a href="../ssl/">documentación SSL</a>.</p> +</div> +<div id="quickview"><h3>Temas</h3> +<ul id="topics"> +<li><img alt="" src="../images/down.gif" /> <a href="#envvars">Variables de Entorno</a></li> +<li><img alt="" src="../images/down.gif" /> <a href="#logformats">Formatos de Log Personalizados</a></li> +<li><img alt="" src="../images/down.gif" /> <a href="#notes">Notas de Solicitud</a></li> +<li><img alt="" src="../images/down.gif" /> <a href="#expressionparser">Extensión Intérprete de Expresiones</a></li> +<li><img alt="" src="../images/down.gif" /> <a href="#authzproviders">Proveedores de Autorización para su uso con + Require</a></li> +</ul><h3 class="directives">Directivas</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="#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="#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>Lista de comprobación de errores corregidos</h3><ul class="seealso"><li><a href="https://www.apache.org/dist/httpd/CHANGES_2.4">httpd historial de cambios</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">Problemas Conocidos</a></li><li><a href="https://bz.apache.org/bugzilla/enter_bug.cgi?product=Apache%20httpd-2&component=mod_ssl">Reportar un error</a></li></ul><h3>Consulte también</h3> +<ul class="seealso"> +<li><a href="#comments_section">Comentarios</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 de Entorno</a><a title="Enlace permanente" href="#envvars" class="permalink">¶</a></h2> + +<p>Este módulo puede ser configurado para proveer muchos elementos de información +SSL como variables de entorno adicionales para el espacio de nombres de SSI y +CGI. Esta información no se facilita por defecto por razones de rendimiento. +(Vea StdEnvVars de <code class="directive">SSLOptions</code> más adelante.) Las +variables generadas se listan en la tabla a continuación. Para +retrocompatibilidad la información también puede estar disponible bajo distintos +nombres. Vea el capítulo <a href="../ssl/ssl_compat.html">Compatibilidad</a> +para más detalles sobre las variables de compatibilidad.</p> + +<table class="bordered"> + +<tr> + <th><a name="table3">Nommbre de Variable:</a></th> + <th>Valor Tipo:</th> + <th>Descripción:</th> +</tr> +<tr><td><code>HTTPS</code></td> <td>flag</td> <td>Se está usando HTTPS.</td></tr> +<tr><td><code>SSL_PROTOCOL</code></td> <td>string</td> <td>El protocolo SSL versión (SSLv3, TLSv1, TLSv1.1, TLSv1.2)</td></tr> +<tr><td><code>SSL_SESSION_ID</code></td> <td>string</td> <td>El id de sesión SSL codificado en hexadecimal</td></tr> +<tr><td><code>SSL_SESSION_RESUMED</code></td> <td>string</td> <td>Sesíón SSL inicial o reanudada. Nota: multiples peticiones pueden servirse a través de la misma sesión SSL (Inicial o Reanudada) si el KeepAlive de HTTP está en uso</td></tr> +<tr><td><code>SSL_SECURE_RENEG</code></td> <td>string</td> <td><code>true</code> si la renegociación segura está soportada, si no <code>false</code></td></tr> +<tr><td><code>SSL_CIPHER</code></td> <td>string</td> <td>El nombre de la especificación del cifrado</td></tr> +<tr><td><code>SSL_CIPHER_EXPORT</code></td> <td>string</td> <td><code>true</code> si el cifrado es un cifrado export</td></tr> +<tr><td><code>SSL_CIPHER_USEKEYSIZE</code></td> <td>number</td> <td>Número de bits de cifrado (en uso actualmente)</td></tr> +<tr><td><code>SSL_CIPHER_ALGKEYSIZE</code></td> <td>number</td> <td>Número de bits de cifrado (posibles)</td></tr> +<tr><td><code>SSL_COMPRESS_METHOD</code></td> <td>string</td> <td>Método de compresión SSL negociado</td></tr> +<tr><td><code>SSL_VERSION_INTERFACE</code></td> <td>string</td> <td>La versión de mod_ssl</td></tr> +<tr><td><code>SSL_VERSION_LIBRARY</code></td> <td>string</td> <td>La versión del programa OpenSSL</td></tr> +<tr><td><code>SSL_CLIENT_M_VERSION</code></td> <td>string</td> <td>La versión del certificado cliente</td></tr> +<tr><td><code>SSL_CLIENT_M_SERIAL</code></td> <td>string</td> <td>El serial del certificado cliente</td></tr> +<tr><td><code>SSL_CLIENT_S_DN</code></td> <td>string</td> <td>Sujeto DN en el certificado cliente</td></tr> +<tr><td><code>SSL_CLIENT_S_DN_</code><em>x509</em></td> <td>string</td> <td>Componente del Sujeto DN cliente</td></tr> +<tr><td><code>SSL_CLIENT_SAN_Email_</code><em>n</em></td> <td>string</td> <td>Entradas de extensión subjectAltName del certificado cliente del tipo rfc822Name</td></tr> +<tr><td><code>SSL_CLIENT_SAN_DNS_</code><em>n</em></td> <td>string</td> <td>Entradas de extensión subjectAltName del tipo dNSName</td></tr> +<tr><td><code>SSL_CLIENT_SAN_OTHER_msUPN_</code><em>n</em></td> <td>string</td> <td>Entradas de extensión subjectAltName del certificado cliente del tipo otherName, Microsoft User Principal Name form (OID 1.3.6.1.4.1.311.20.2.3)</td></tr> +<tr><td><code>SSL_CLIENT_I_DN</code></td> <td>string</td> <td>DN del firmante en el certificado cliente</td></tr> +<tr><td><code>SSL_CLIENT_I_DN_</code><em>x509</em></td> <td>string</td> <td>Componente del DN en el firmante del certificado cliente</td></tr> +<tr><td><code>SSL_CLIENT_V_START</code></td> <td>string</td> <td>Validez del certificado cliente (fecha de inicio)</td></tr> +<tr><td><code>SSL_CLIENT_V_END</code></td> <td>string</td> <td>Validez del certificado cliente (fecha fin)</td></tr> +<tr><td><code>SSL_CLIENT_V_REMAIN</code></td> <td>string</td> <td>Número de días hasta que el certificado cliente expira</td></tr> +<tr><td><code>SSL_CLIENT_A_SIG</code></td> <td>string</td> <td>Algoritmo usado para la firma del certificado cliente</td></tr> +<tr><td><code>SSL_CLIENT_A_KEY</code></td> <td>string</td> <td>Algoritmo usado para la clave pública del certificado cliente.</td></tr> +<tr><td><code>SSL_CLIENT_CERT</code></td> <td>string</td> <td>Certificado cliente condificado en PEM</td></tr> +<tr><td><code>SSL_CLIENT_CERT_CHAIN_</code><em>n</em></td> <td>string</td> <td>Certificados codificados en PEM en la cadena de certificados cliente</td></tr> +<tr><td><code>SSL_CLIENT_CERT_RFC4523_CEA</code></td> <td>string</td> <td>Número de serie y distribuidor del certificado. El formato coincide con el CertificateExactAssertion en RFC4523</td></tr> +<tr><td><code>SSL_CLIENT_VERIFY</code></td> <td>string</td> <td><code>NONE</code>, <code>SUCCESS</code>, <code>GENEROUS</code> or <code>FAILED:</code><em>reason</em></td></tr> +<tr><td><code>SSL_SERVER_M_VERSION</code></td> <td>string</td> <td>La versión del certificado del servidor</td></tr> +<tr><td><code>SSL_SERVER_M_SERIAL</code></td> <td>string</td> <td>El serial del certificado del servidor</td></tr> +<tr><td><code>SSL_SERVER_S_DN</code></td> <td>string</td> <td>Nombre DN en el certificado del servidor</td></tr> +<tr><td><code>SSL_SERVER_SAN_Email_</code><em>n</em></td> <td>string</td> <td>Entradas de extensión subjectAltName en el certificado del servidor del tipo rfc822Name</td></tr> +<tr><td><code>SSL_SERVER_SAN_DNS_</code><em>n</em></td> <td>string</td> <td>Entradas de Extensión subjectAltName del tipo Server dNSName del certificado del Servidor</td></tr> +<tr><td><code>SSL_SERVER_SAN_OTHER_dnsSRV_</code><em>n</em></td> <td>string</td> <td>Entradas de extensión subjectAltName del tipo otherName, forma SRVName (OID 1.3.6.1.5.5.7.8.7, RFC 4985) del certificado del servidor.</td></tr> +<tr><td><code>SSL_SERVER_S_DN_</code><em>x509</em></td> <td>string</td> <td>Componente del Sujeto DN del servidor</td></tr> +<tr><td><code>SSL_SERVER_I_DN</code></td> <td>string</td> <td>DN del Firmante del certificado del servidor</td></tr> +<tr><td><code>SSL_SERVER_I_DN_</code><em>x509</em></td> <td>string</td> <td>Componente en el DN del firmante del servidor</td></tr> +<tr><td><code>SSL_SERVER_V_START</code></td> <td>string</td> <td>Validez del certificado del servidor (fecha de inicio)</td></tr> +<tr><td><code>SSL_SERVER_V_END</code></td> <td>string</td> <td>Validez del certificado del servidor (fecha de fin)</td></tr> +<tr><td><code>SSL_SERVER_A_SIG</code></td> <td>string</td> <td>Algoritmo utilizado para la firma del certificado del servidor</td></tr> +<tr><td><code>SSL_SERVER_A_KEY</code></td> <td>string</td> <td>Algoritmo utilizado para la clave pública del certificado del servidor</td></tr> +<tr><td><code>SSL_SERVER_CERT</code></td> <td>string</td> <td>Certificado del servidor codificado en PEM</td></tr> +<tr><td><code>SSL_SRP_USER</code></td> <td>string</td> <td>Nombre de usuario SRP</td></tr> +<tr><td><code>SSL_SRP_USERINFO</code></td> <td>string</td> <td>Información de usuario SRP</td></tr> +<tr><td><code>SSL_TLS_SNI</code></td> <td>string</td> <td>Contenido de la extensión TLS SNI (si se provee en el ClientHello)</td></tr> +</table> + +<p><em>x509</em> especifica un componente de un DN X.509; uno entre +<code>C,ST,L,O,OU,CN,T,I,G,S,D,UID,Email</code>. En Apache 2.2.0 en +posterior, <em>x509</em> también puede incluir un sufijo <code>_n</code> +numérico. Si el DN en cuestión contiene múltiples atributos del mismo +nombre, este sufijo se usa para un índice basado en ceros para seleccionar +un atributo en particular. Por ejemplo, donde el sujeto del DN del +certificado del servidor incluia dos atributos OU, + <code>SSL_SERVER_S_DN_OU_0</code> y +<code>SSL_SERVER_S_DN_OU_1</code> podría usarse para referenciar cada una. +Una variable sin un sufijo <code>_n</code> es equivalente a ese nombre con un +sufijo <code>_0</code>; el primer (y único) atributo. +Cuando la tabla del entorno se llena usando la opción <code>StdEnvVars</code> +de la directiva <code class="directive"><a href="#ssloptions">SSLOptions</a></code>, el primer +(o único) atributo de cualquier DN se añade sólo bajo un nombre sin sufijo; +p. ej. no se añaden entradas con sufijo <code>_0</code>.</p> + +<p>En httpd 2.5.0 y posterior, se puede añadir un sufijo <em>_RAW</em> a +<em>x509</em> en un componente DN para suprimir la conversión del valor +del atributo a UTF-8. Esto se debe colocar después del sufijo de indice (si lo +hay). Por ejemplo, se podría usar <code>SSL_SERVER_S_DN_OU_RAW</code> o +<code>SSL_SERVER_S_DN_OU_0_RAW</code>.</p> + +<p>El formato de las variables <em>*_DN</em> ha cambiado en Apache HTTPD +2.3.11. Vea la opción <code>LegacyDNStringFormat</code> para +<code class="directive"><a href="#ssloptions">SSLOptions</a></code> para más detalles.</p> + +<p><code>SSL_CLIENT_V_REMAIN</code> sólo está disponible en la versión 2.1 y +posterior.</p> + +<p>Se puede usar varias variables de entorno adicionales con expresiones en +<code class="directive">SSLRequire</code>, o en formatos de log personalizados:</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>En estos contextos, también se pueden usar dos formatos especiales:</p> + +<dl> + <dt><code>ENV:<em>nombredevariable</em></code></dt> + <dd>Esto se rellenará al valor de la variable de entorno estándar + <em>nombredevariable</em>.</dd> + + <dt><code>HTTP:<em>nombredecabecera</em></code></dt> + <dd>Esto se rellenará con el valor de la cabecera de solicitud con el nombre + <em>nombredecabecera</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">Formatos de Log Personalizados</a><a title="Enlace permanente" href="#logformats" class="permalink">¶</a></h2> + +<p>Cuando se compila <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> en Apache o al menos se carga (en +situación de DSO) existen funciones adicionales para el +<a href="mod_log_config.html#formats">Formatos de Log Personalizados</a> de +<code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code>. Primero hay una función de extensión de formato +adicional ``<code>%{</code><em>varname</em><code>}x</code>'' que puede usarse +para extender cualquier variable facilitada por cualquier módulo, especialmente +aquellas que son facilitadas por mod_ssl que puede encontrar en la tabla de más +arriba.</p> +<p> + +Para retro compatibilidad adicionalmente se facilita una función de formato de +criptografía ``<code>%{</code><em>nombre</em><code>}c</code>''. Información sobre +esta función se facilita en capítulo de <a href="../ssl/ssl_compat.html">Compatibilidad</a>.</p> +<div class="example"><h3>Ejemplo</h3><pre class="prettyprint lang-config">CustomLog "logs/ssl_request_log" "%t %h %{SSL_PROTOCOL}x %{SSL_CIPHER}x \"%r\" %b"</pre> +</div> +<p>Estos formatos incluso funcionan sin la opción de configuración +<code>StdEnvVars</code> de la directiva +<code class="directive"><a href="#ssloptions">SSLOptions</a></code>.</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">Notas de Solicitud</a><a title="Enlace permanente" href="#notes" class="permalink">¶</a></h2> + +<p><code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> configura "notas" para la petición que pueden +usarse en el registro de logs con la cadena de caracteres +<code>%{<em>nombre</em>}n</code> en <code class="module"><a href="../mod/mod_log_config.html">mod_log_config</a></code>.</p> + +<p>A continuación se indican las notas soportadas:</p> + +<dl> + <dt><code>ssl-access-forbidden</code></dt> + <dd>Esta nota se configura al valor <code>1</code> si el acceso fue + denegado debido a una directiva <code class="directive">SSLRequire</code> o + <code class="directive">SSLRequireSSL</code>.</dd> + + <dt><code>ssl-secure-reneg</code></dt> + <dd>Si se compila <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> con una versión de OpenSSL que + soporta la extensión de renegociación segura, esta nota se configura con el + valor <code>1</code> si se usa SSL para la conexión actual y el cliente + también soporta la extensión de renegociación segura. Si el cliente no + soporta la extensión de renegociación segura, esta nota se configura con el valor + <code>0</code>. + Si se compila <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> con una versión de OpenSSL que no + soporta renegociación segura, o si SSL no se usa en la conexión actual, esta + nota no se configura.</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">Extensión Intérprete de Expresiones</a><a title="Enlace permanente" href="#expressionparser" class="permalink">¶</a></h2> + + +<p>Cuando se compila <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> en Apache o se carga +(bajo situación DSO) cualquier <a name="envvars">variable</a> +facilitada por <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> puede usarse en expresiones para el + <a href="../expr.html">Intérprete de Expresiones ap_expr</a>. +Se puede hacer referencia a las variables usando la sintaxis +``<code>%{</code><em>varname</em><code>}</code>''. Comenzando con la versión +2.4.18 uno también puede usar el estilo de sintaxis de +<code class="module"><a href="../mod/mod_rewrite.html">mod_rewrite</a></code> +``<code>%{SSL:</code><em>nombredevariable</em><code>}</code>'' o el estilo de +sintaxis de la función +``<code>ssl(</code><em>nombredevariable</em><code>)</code>''.</p> + +<div class="example"><h3>Ejemplo (usando <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>Esta característica funciona incluso sin configurar la opción + <code>StdEnvVars</code> de la directiva + <code class="directive"><a href="#ssloptions">SSLOptions</a></code>.</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">Proveedores de Autorización para su uso con + Require</a><a title="Enlace permanente" href="#authzproviders" class="permalink">¶</a></h2> + <p><code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> facilita unos pocos proveedores de autenticación + para usarse con la directiva <code class="directive"><a href="../mod/mod_authz_core.html#require">Require</a></code> + de <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>El proveedor de <code>ssl</code> deniega el acceso si la conexión no está + encriptada con SSL. Esto es similar a la directiva + <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>El proveedor de <code>ssl</code> permite acceso si el usuario se autentica + con un certificado cliente válido. Esto sólo es útil si se está usando + <code>SSLVerifyClient optional</code>.</p> + + <p>El siguiente ejemplo permite acceso si el usuario se autentica o bien + con certificado cliente o con usuario y contraseña.</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">Directiva</a> <a name="SSLCACertificateFile" id="SSLCACertificateFile">SSLCACertificateFile</a><a title="Enlace permanente" href="#sslcacertificatefile" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Fichero de Certificados CA concatenados y codificados en PEM para +la Autenticación de Cliente</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLCACertificateFile <em>ruta-al-fichero</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Override">Anula:</a></th><td>AuthConfig</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura el fichero <em>todo-en-uno</em> donde puede ensamblar +los Certificados de las Autoridades de Certificación (CA) de los +<em>clientes</em> que acceden a su servidor. Esto se usan para la Autenticación +de Cliente. Tal fichero es sencillamente la concatenación, en orden de preferencia, +de varios ficheros de Certificado codificados en PEM. Esto puede usarse +alternativamente y/o adicionalmente a +<code class="directive"><a href="#sslcacertificatepath">SSLCACertificatePath</a></code>.</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLCACertificatePath" id="SSLCACertificatePath">SSLCACertificatePath</a><a title="Enlace permanente" href="#sslcacertificatepath" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Directorio de certificados CA codificados en PEM para la +autenticación de Cliente</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLCACertificatePath <em>ruta-de-directorio</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Override">Anula:</a></th><td>AuthConfig</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura el directorio donde guarda los certificados de +Autoridades de Certificación (CAs) de los clientes que accederán a su servidor. +Esto se usarán para verificar el certificado cliente en la Autenticación de +Cliente.</p> + +<p> +Los ficheros en este directorio tienen que ser codificados en PEM y se acceden a +través de nombres de ficheros con hash. Así que generalmente no puede poner +simplemente los ficheros ahí: también tiene que crear enlaces simbólicos con +nombre <em>valor-hash</em><code>.N</code>. Y siempre debería asegurarse de que +este directorio contiene los enlaces simbólicos apropiados.</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLCADNRequestFile" id="SSLCADNRequestFile">SSLCADNRequestFile</a><a title="Enlace permanente" href="#sslcadnrequestfile" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Fichero de certificados CA concatenados codificados en PEM para + definir nombres de CA aceptables</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLCADNRequestFile <em>ruta-al-fichero</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p>Cuando se solicita un certificado cliente por mod_ssl, una lista de +<em>nombres de Autoridad Certificadora aceptables</em> se envía al cliente en +el saludo SSL. Estos nombres de CA se pueden usar por el cliente para +seleccionar un certificado cliente apropiado entre los que tiene disponibles.</p> + +<p>Si no están las directivas <code class="directive"><a href="#sslcadnrequestpath">SSLCADNRequestPath</a></code> o +<code class="directive"><a href="#sslcadnrequestfile">SSLCADNRequestFile</a></code>, entonces el +conjunto de nombres aceptables de CA enviados al cliente es la de los nombres +de todos los certificados de CA cargados en las directivas +<code class="directive"><a href="#sslcacertificatefile">SSLCACertificateFile</a></code> y +<code class="directive"><a href="#sslcacertificatepath">SSLCACertificatePath</a></code>; en otras palabras, +los nombres de las CAs que se usarán actualmente para verificar el certificado +cliente.</p> + +<p>En algunas circunstancias, es útil poder enviar un conjunto de nombres de CA +aceptables diferente de las CAs usadas para verificar el certificado cliente - +por ejemplo, si los certificados cliente están firmados CAs intermedias. En tales +casos, <code class="directive"><a href="#sslcadnrequestpath">SSLCADNRequestPath</a></code> y/o +<code class="directive"><a href="#sslcadnrequestfile">SSLCADNRequestFile</a></code> se pueden usar; los +nombres de CA aceptables se toman del conjunto completo de certificados en el +directorio y/o fichero especificados por este par de directivas.</p> + +<p><code class="directive"><a href="#sslcadnrequestfile">SSLCADNRequestFile</a></code> debe especificar +un fichero <em>todo-en-uno</em> que contenga una concatenación de certificados +CA codificados en PEM.</p> + +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLCADNRequestPath" id="SSLCADNRequestPath">SSLCADNRequestPath</a><a title="Enlace permanente" href="#sslcadnrequestpath" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Directorio de Certificados CA codificados en PEM para definir +nombres de CA aceptables</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLCADNRequestPath <em>ruta-al-directorio</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> + +<p>Esta directiva opcional puede usarse para especificar un conjunto de +<em>nombres de CA aceptables</em> que serán enviados al cliente cuando se +solicita un certificado cliente. Vea la directiva +<code class="directive"><a href="#sslcadnrequestfile">SSLCADNRequestFile</a></code> para más +detalles.</p> + +<p>Los ficheros en este directorio tienen que estar codificados en PEM y se +accede a ellos con nombres de ficheros con hash. Así que generalmente no puede +poner sin más los ficheros de Certificado ahí: también tiene que crear enlaces +simbólicos llamados <em>valor-de-hash</em><code>.N</code>. Y siempre debería +estar seguro de que este directorio contiene los enlaces simbólicos +apropiados.</p> + +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLCARevocationCheck" id="SSLCARevocationCheck">SSLCARevocationCheck</a><a title="Enlace permanente" href="#sslcarevocationcheck" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Activar comprobación de revocación basada en CRL</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLCARevocationCheck chain|leaf|none <em>modificador</em>es</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLCARevocationCheck none</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td><em>Modificador</em>es Opcionales disponibles en httpd 2.4.21 o +posterior</td></tr> +</table> +<p> +Activa la comprobación de la lista de revocación de certificados (CRL). Al menos +<code class="directive"><a href="#sslcarevocationfile">SSLCARevocationFile</a></code> +o <code class="directive"><a href="#sslcarevocationpath">SSLCARevocationPath</a></code> deben estar +configuradas. Cuando se configuran a <code>chain</code> (configuración +recomendada), las comprobaciones de CRL se aplican a todos los certificados +en la cadena, mientras que si se configura a <code>leaf</code> limita las +comprobaciones al certificado firmado final. +</p> + +<p>Los <em>modificador</em>es disponibles son:</p> +<ul> +<li><code>no_crl_for_cert_ok</code> + <p> + Previamente a la versión 2.3.15, la comprobación de CRL en mod_ssl también + tenía éxito cuando no se encontraban CRL/s para los certificados comprobados + en ninguna de las ubicaciones configuradas con + <code class="directive"><a href="#sslcarevocationfile">SSLCARevocationFile</a></code> + o <code class="directive"><a href="#sslcarevocationpath">SSLCARevocationPath</a></code>. + </p> + + <p> + Con la introducción de <code class="directive">SSLCARevocationFile</code>, + el comportamiento ha cambiado: por defecto con <code>chain</code> o + <code>leaf</code>, los CRLs <strong>deben</strong> estar presentes + para que la validación tenga éxito, si no fallará con un error + <code>"unable to get certificate CRL"</code>. + </p> + + <p> + El <em>modificador</em> <code>no_crl_for_cert_ok</code> permite + restaurar el comportamiento anterior.. + </p> +</li> +</ul> +<div class="example"><h3>Ejemplo</h3><pre class="prettyprint lang-config">SSLCARevocationCheck chain</pre> +</div> +<div class="example"><h3>Compatibilidad con versiones 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">Directiva</a> <a name="SSLCARevocationFile" id="SSLCARevocationFile">SSLCARevocationFile</a><a title="Enlace permanente" href="#sslcarevocationfile" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Fichero de CRL's de CA concatenados y codificados en PEM para la + Autenticación de ClienteFile of concatenated PEM-encoded CA CRLs for +</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLCARevocationFile <em>ruta-al-fichero</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura el fichero <em>todo-en-uno</em> donde puede ensamblar +las Listas de Revocación de Certificados (CRL) de las Autoridades de +Certificación (CA) para los <em>clientes</em> que conectan a su servidor. Estos +se usan para la Autenticación de Cliente. Tal fichero es simplemente la +concatenación de varios ficheros CRL codificados en PEM, en orden de +preferencia. Esto se puede usar alternativamente a/o adicionalmente a +<code class="directive"><a href="#sslcarevocationpath">SSLCARevocationPath</a></code>.</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLCARevocationPath" id="SSLCARevocationPath">SSLCARevocationPath</a><a title="Enlace permanente" href="#sslcarevocationpath" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Directorio de CRLs de CA codificados en PEM para la Autenticación +de Cliente</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLCARevocationPath <em>ruta-al-directorio</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura el directorio donde usted alojará las Listas de +Revocación de Certificados (CRL) de las Autoridades de Certificación (CAs) para +los clientes que conectan al servidor. Estas se usan para revocar el +certificado cliente en la Autenticación de Cliente.</p> + +<p> +Los ficheros en este directorio tienen que ser codificados en PEM y se accede a +ellos con nombres de ficheros con hash. Así que generalmente no sólo tiene que +poner los ficheros CRL ahí. Adicionalmente tiene que crear enlaces simbólicos +llamados <em>valor-de-hash</em><code>.rN</code>. Y debería asegurarse siempre +que este directorio contiene los enlaces simbólicos apropiados.</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLCertificateChainFile" id="SSLCertificateChainFile">SSLCertificateChainFile</a><a title="Enlace permanente" href="#sslcertificatechainfile" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Fichero de Certificados CA de Servidor codificado en + PEM</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLCertificateChainFile <em>ruta-al-fichero</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<div class="note"><h3>SSLCertificateChainFile está obsoleto</h3> +<p><code>SSLCertificateChainFile</code> quedó obsoleto con la versión 2.4.8, +cuando se extendió <code class="directive"><a href="#sslcertificatefile">SSLCertificateFile</a></code> +para cargar también los certificados de CA intermedias del fichero de +certificados del servidor.</p> +</div> + +<p> +Esta directiva configura el fichero <em>todo-en-uno</em> donde puede ensamblar los +certificados de Autoridades de Certificación (CA - Certification Authorities) +que forman la cadena del certificado del servidor. Este comienza con el +certificado de la CA firmante del certificado del servidor y puede ir hasta el +certificado de la CA raíz. Tal fichero es simplemente la concatenación de varios +ficheros de Certificado CA codificado en PEM, generalmente siguiendo la cadena +de certificación.</p> + +<p> +Esto debería usarse alternativamente y/o adicionalmente a +<code class="directive"><a href="#sslcacertificatepath">SSLCACertificatePath</a></code> para construir +explicitamente la cadena de CA del certificado del servidor que se envía al +navegador además del certificado del servidor. Es especialmente últil +para evitar conflictos con certificados CA cuando se usa autenticación de +cliente. Porque aunque colocar los CA de la cadena de certificados del servidor +en <code class="directive"><a href="#sslcacertificatepath">SSLCACertificatePath</a></code> tiene el mismo +efecto para la construcción de la cadena de certificados, tiene un efecto +adicional en la que los certificados cliente firmados por el mismo certificado CA +también se aceptan en la autenticación de cliente.</p> + +<p> +Pero tenga cuidado: Proveer la cadena de certificados funciona sólo si está +usando <em>un sólo</em> certificado de servidor basado en RSA <em>o</em> DSA. Si +está usando un par de certificados juntos RSA+DSA, esto sólo funcionará si +ambos certificados usan <em>la misma</em> cadena de certificados. Si no los +navegadores se confundirán en esta situación.</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLCertificateFile" id="SSLCertificateFile">SSLCertificateFile</a><a title="Enlace permanente" href="#sslcertificatefile" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Fichero de datos Certificado X.509 codificado en PEM</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLCertificateFile <em>ruta-al-fichero</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva apunta a un fichero con datos de certificado en formato PEM. Como +mínimo, el fichero debe incluir un certificado final (no sólo CA a menos que sea +autofirmado). La directiva puede usarse multiples veces (haciendo referencia a +ficheros distintos) para dar soporte a múltiples algoritmos para la +autenticación de servidor - típicamente RSA, DSA y ECC. El número de algoritmos +soportados depende de la versión de OpenSSL utilizada por mod_ssl: con la versión +1.0.0 o posterior, +<code>openssl list-public-key-algorithms</code> sacará una lista de algoritmos +soportados, vea también la nota más adelante sobre limitaciones de versiones +OpenSSL previas a 1.0.2 y la forma de sortearlas. +</p> + +<p> +Los ficheros pueden también incluir certificados de CA intermedias, ordenados +desde el certificado firmado hasta el certificado raíz. Esto está soportado con +la versión 2.4.8 y posterior, y deja obsoleta la directiva +<code class="directive"><a href="#sslcertificatechainfile">SSLCertificateChainFile</a></code>. +Cuando se trabaja con OpenSSL 1.0.2 o posterior, esto permite que se configuren +la cadena de CAs intermedias por certificado. +</p> + +<p> +También se pueden añadir parámetros personalizados DH y un nombre de curva EC +para claves efímeras al final del primer fichero configurado usando +<code class="directive"><a href="#sslcertificatefile">SSLCertificateFile</a></code>. +Esto está soportado en la versión 2.4.7 y posterior. + +Tales parámetros pueden ser generados usando los comandos +<code>openssl dhparam</code> y <code>openssl ecparam</code>. Los parámetros se +pueden añadir tal cual al final del primer fichero de certificado. sólo se puede +usar el primer fichero para los parámetros personalizados, puesto que estos +se aplican independientemente del tipo de algoritmo de autenticación. +</p> + +<p> +Finalmente la clave privada del certificado también se puede añadir al fichero +de certificado en lugar de usar por separado la directiva +<code class="directive"><a href="#sslcertificatekeyfile">SSLCertificateKeyFile</a></code>. Esta práctica +está muy desaconsejada. Si se usa, los ficheros de certificado usando tales +ficheros de claves embebidas deben configurarse después de los certificados que +usan una clave privada en un fichero aparte. Si la clave privada está encriptada +, el diálogo de solicitud de contraseña se fuerza en el arranque. +</p> + +<div class="note"> +<h3>Interoperabilidad de parámetro DH con primos > 1024 bits</h3> +<p> +Comenzando con la versión 2.4.7, mod_ssl hace uso de parámetros DH +estandarizados con longitud de primos de 2048, 3072 y 4096 bits y con longitud +adicional de primos de 6144 y 8192 bits comenzando con la versión 2.4.10 +(from <a href="http://www.ietf.org/rfc/rfc3526.txt">RFC 3526</a>), y los +envía a clientes basándose en la longitud de la clave RSA/DSA del certificado. +Con clientes basados en Java en particular (Java 7 o anterior), esto puede +llevar a fallos de saludo inicial SSL - vea esta +<a href="../ssl/ssl_faq.html#javadh">respuesta de FAQ </a> para sortear estos +problemas. +</p> +</div> + +<div class="note"> +<h3>Parámetros DH por defecto cuando se usan multiples certificados y +y versiones de OpenSSL anteriores a 1.0.2</h3> +<p> +Cuando se usan múltiples certificados para dar soporte a algoritmos de +autenticación diferentes (como RSA, DSA pero principalmente ECC) y OpenSSL +anterior a 1.0.2, se recomienda usar o bien parámetros DH personalizados +(preferiblemente) añadiéndolos al primer fichero de certificado (como se +describe más arriba), o ordenar las directivas +<code class="directive">SSLCertificateFile</code> para que los certificados RSA/DSA +estén colocadas <strong>después</strong> del ECC. +</p> + +<p> +Esto se debe a una limitación en versiones más antiguas de OpenSSL que no +permiten que el servidor HTTP Apache determine el certificado seleccionado +actualmente en el momento del saludo SSL (cuando se deben mandar los parámetros +DH al cliente) pero en su lugar siempre se provee el último certificado +configurado. Consecuentemente, el servidor puede seleccionar parámetros DH +por defecto basado en la longitud de la clave privada incorrecta (las clacves +ECC son mucho más pequeñas que las RSA/DSA y su longitud no es relevante para +seleccionar primos DH). +</p> + +<p> +Puesto que los parámetros personalizados DH siempre tienen precedencia sobre +los de por defecto, este problema se puede evitar creando y configurándolos +(como se describe arriba), y así usar una longitud adecuada/personalizada. +</p> +</div> + +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLCertificateKeyFile" id="SSLCertificateKeyFile">SSLCertificateKeyFile</a><a title="Enlace permanente" href="#sslcertificatekeyfile" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Fichero de clave privada de Servidor codificada en PEM</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLCertificateKeyFile <em>ruta-al-fichero</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva apunta al fichero de clave privada codificado en PEM para el +servidor. Si la clave privada contenida en el fichero está encriptada, se +forzará un diálogo de solicitud de contraseña en el arranque.</p> + +<p> +La directiva puede usarse múltiples veces (haciendo referencia a ficheros +distintos) para dar soporte a múltiples algoritmos de autenticación para el +servidor. Por cada directiva +<code class="directive"><a href="#sslcertificatekeyfile">SSLCertificateKeyFile</a></code> +directive, debe haber una directiva <code class="directive">SSLCertificateFile</code> +relacionada.</p> + +<p> +La clave privada se puede combinar con el certificado en el fichero indicado en +<code class="directive"><a href="#sslcertificatefile">SSLCertificateFile</a></code>, pero esta práctica +es muy desaconsejable. Si se usa, los ficheros de certificado con la clave +privada dentro deben configurarse después de los certificados que tienen una +clave privada en otro fichero.</p> + +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLCipherSuite" id="SSLCipherSuite">SSLCipherSuite</a><a title="Enlace permanente" href="#sslciphersuite" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Conjunto de Cifrados disponibles para negociación en el saludo SSL +</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLCipherSuite <em>especificación-de-cifrado</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLCipherSuite DEFAULT (depende de la versión de OpenSSL)</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, directory, .htaccess</td></tr> +<tr><th><a href="directive-dict.html#Override">Anula:</a></th><td>AuthConfig</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta compleja directiva usa una cadena de <em>cifrados</em> separados por comas +que consiste en especificaciones de cifrado OpenSSL para configurar el conjunto +de cifrados que se le permite negociar al cliente en la fase de saludo SSL. +Tenga en cuenta que esta directiva se puede usar en contexto de servidor y de +directorio. En contexto de servidor aplica el saludo estándar de SSL cuando se +establece una conexión. En contexto directorio fuerza una renegociación SSL con +el juego de cifrados después de que la solicitud HTTP ha sido leída pero antes de +que se envíe la respuesta.</p> +<p> +Una especificación de cifrado SSL en <em>especificación-de-cifrado</em> se compone de 4 +atributos principales más unos cuantos menores extra:</p> +<ul> +<li><em>Algoritmo de Intercambio de Clave</em>:<br /> + RSA, Diffie-Hellman, Elliptic Curve Diffie-Hellman, Secure Remote Password +</li> +<li><em>Algoritmo de Autenticación</em>:<br /> + RSA, Diffie-Hellman, DSS, ECDSA, or none. +</li> +<li><em>Algoritmo de Cifrado/Encriptación</em>:<br /> + AES, DES, Triple-DES, RC4, RC2, IDEA, etc. +</li> +<li><em>Algoritmo de Resúmen de MAC</em>:<br /> + MD5, SHA or SHA1, SHA256, SHA384. +</li> +</ul> + +<p>Un cifrado SSL puede ser un cifrado export. Los cifrados SSLv2 ya no están +soportados. Para especificar qué cifrados usar, uno puede especificar todos +los cifrados a utilizar, de uno en uno, o puede usar pseudónimos para +especificar la preferencia y orden de los cifrados (vea <a href="#table1">Tabla +1</a>). La lista actual de cifrados y pseudónimos depende de la versión openssl +utilizada. Versiones más modernas de openssl pueden incluir cifrados +adicionales.</p> + +<table class="bordered"> + +<tr><th><a name="table1">Tag</a></th> <th>Description</th></tr> +<tr><td colspan="2"><em>Algoritmo de Intercambio de Clave:</em></td></tr> +<tr><td><code>kRSA</code></td> <td>RSA key exchange</td></tr> +<tr><td><code>kDHr</code></td> <td>Diffie-Hellman key exchange with RSA key</td></tr> +<tr><td><code>kDHd</code></td> <td>Diffie-Hellman key exchange with DSA key</td></tr> +<tr><td><code>kEDH</code></td> <td>Ephemeral (temp.key) Diffie-Hellman key exchange (no cert)</td> </tr> +<tr><td><code>kSRP</code></td> <td>Secure Remote Password (SRP) key exchange</td></tr> +<tr><td colspan="2"><em>Algoritmo de Autenticación:</em></td></tr> +<tr><td><code>aNULL</code></td> <td>No authentication</td></tr> +<tr><td><code>aRSA</code></td> <td>RSA authentication</td></tr> +<tr><td><code>aDSS</code></td> <td>DSS authentication</td> </tr> +<tr><td><code>aDH</code></td> <td>Diffie-Hellman authentication</td></tr> +<tr><td colspan="2"><em>Algoritmo de Codificación de Cifrado:</em></td></tr> +<tr><td><code>eNULL</code></td> <td>No encryption</td> </tr> +<tr><td><code>NULL</code></td> <td>alias for eNULL</td> </tr> +<tr><td><code>AES</code></td> <td>AES encryption</td> </tr> +<tr><td><code>DES</code></td> <td>DES encryption</td> </tr> +<tr><td><code>3DES</code></td> <td>Triple-DES encryption</td> </tr> +<tr><td><code>RC4</code></td> <td>RC4 encryption</td> </tr> +<tr><td><code>RC2</code></td> <td>RC2 encryption</td> </tr> +<tr><td><code>IDEA</code></td> <td>IDEA encryption</td> </tr> +<tr><td colspan="2"><em>Algoritmo de Resumen de MAC</em>:</td></tr> +<tr><td><code>MD5</code></td> <td>MD5 hash function</td></tr> +<tr><td><code>SHA1</code></td> <td>SHA1 hash function</td></tr> +<tr><td><code>SHA</code></td> <td>alias for SHA1</td> </tr> +<tr><td><code>SHA256</code></td> <td>SHA256 hash function</td> </tr> +<tr><td><code>SHA384</code></td> <td>SHA384 hash function</td> </tr> +<tr><td colspan="2"><em>Aliases:</em></td></tr> +<tr><td><code>SSLv3</code></td> <td>all SSL version 3.0 ciphers</td> </tr> +<tr><td><code>TLSv1</code></td> <td>all TLS version 1.0 ciphers</td> </tr> +<tr><td><code>EXP</code></td> <td>all export ciphers</td> </tr> +<tr><td><code>EXPORT40</code></td> <td>all 40-bit export ciphers only</td> </tr> +<tr><td><code>EXPORT56</code></td> <td>all 56-bit export ciphers only</td> </tr> +<tr><td><code>LOW</code></td> <td>all low strength ciphers (no export, single DES)</td></tr> +<tr><td><code>MEDIUM</code></td> <td>all ciphers with 128 bit encryption</td> </tr> +<tr><td><code>HIGH</code></td> <td>all ciphers using Triple-DES</td> </tr> +<tr><td><code>RSA</code></td> <td>all ciphers using RSA key exchange</td> </tr> +<tr><td><code>DH</code></td> <td>all ciphers using Diffie-Hellman key exchange</td> </tr> +<tr><td><code>EDH</code></td> <td>all ciphers using Ephemeral Diffie-Hellman key exchange</td> </tr> +<tr><td><code>ECDH</code></td> <td>Elliptic Curve Diffie-Hellman key exchange</td> </tr> +<tr><td><code>ADH</code></td> <td>all ciphers using Anonymous Diffie-Hellman key exchange</td> </tr> +<tr><td><code>AECDH</code></td> <td>all ciphers using Anonymous Elliptic Curve Diffie-Hellman key exchange</td> </tr> +<tr><td><code>SRP</code></td> <td>all ciphers using Secure Remote Password (SRP) key exchange</td> </tr> +<tr><td><code>DSS</code></td> <td>all ciphers using DSS authentication</td> </tr> +<tr><td><code>ECDSA</code></td> <td>all ciphers using ECDSA authentication</td> </tr> +<tr><td><code>aNULL</code></td> <td>all ciphers using no authentication</td> </tr> +</table> + +<p> +La parte en que ésto se vuelve interesante es que éstos se pueden poner juntos +para especificar el orden y los cifrados que quiere usar. Para acelerar esto +también hay pseudónimos (<code>SSLv3, TLSv1, EXP, LOW, MEDIUM, +HIGH</code>) para ciertos grupos de cifrados. Estas etiquetas se pueden juntar +con prefijos para formar <em>especificación-de-cifrado</em>. Los prefijos disponibles son:</p> + +<ul> +<li>none: añade cifrado a la lista</li> +<li><code>+</code>: mueve los cifrados coincidentes a la ubicación actual en la +lista</li> +<li><code>-</code>: borra los cifrados de la lista (se pueden añadir más +adelante)</li> +<li><code>!</code>: mata el cifrado de la lista completamente +(<strong>no</strong> puede añadirse después)</li> +</ul> + +<div class="note"> +<h3>Los cifrados <code>aNULL</code>, <code>eNULL</code> y <code>EXP</code> +siempre están deshabilitados</h3> +<p>Empezando con la versión 2.4.7, null y cifrados de grado export +están siempre deshabilitados, asi que mod_ssl añade incondicionalmente +<code>!aNULL:!eNULL:!EXP</code> a cualquier lista de cifrados en la +inicialización.</p> +</div> + +<p>Una forma más sencilla de ver todo esto es usar el comando +``<code>openssl ciphers -v</code>'' que facilita una buena forma de crear una +cadena correcta de <em>especificación-de-cifrado</em>. La cadena <em>especificación-de-cifrado</em> depende +de la versión de librerías OpenSSL utilizadas. Supongamos que es +``<code>RC4-SHA:AES128-SHA:HIGH:MEDIUM:!aNULL:!MD5</code>'' que significa +lo siguiente: Pon <code>RC4-SHA</code> y <code>AES128-SHA</code> al principio. +Hacemos esto, porque estos cifrados ofrecen un buen compromiso entre velocidad y +seguridad. Después, incluye los cifrados de seguridad alta y media. Finalmente, +elimina todos los cifrados que no autentican, p.ej. para SSL los cifrados +Anónimos Diffie-Hellman, así como todos los cifrados que usan <code>MD5</code> +como algoritmo de hash porque se ha probado que son insuficientes.</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>La lista completa de cifrados RSA & DH concretos para SSL se facilita en +la <a href="#table2">Tabla 2</a>.</p> +<div class="example"><h3>Ejemplo</h3><pre class="prettyprint lang-config">SSLCipherSuite RSA:!EXP:!NULL:+HIGH:+MEDIUM:-LOW</pre> +</div> +<table class="bordered"> + +<tr><th><a name="table2">Cipher-Tag</a></th> <th>Protocol</th> <th>Key Ex.</th> <th>Auth.</th> <th>Enc.</th> <th>MAC</th> <th>Type</th> </tr> +<tr><td colspan="7"><em>RSA Ciphers:</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>Diffie-Hellman Ciphers:</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">Directiva</a> <a name="SSLCompression" id="SSLCompression">SSLCompression</a><a title="Enlace permanente" href="#sslcompression" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Activa la compresión a nivel de SSL</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLCompression on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLCompression off</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible en httpd 2.4.3 y posterior, si se usa OpenSSL 0.9.8 o +posterior; disponible en el contexto de virtualhost si se usa OpenSSL 1.0.0 o +posterior. El valor por defecto solía ser <code>on</code> en la versión +2.4.3</td></tr> +</table> +<p>Esta directiva permite activar la compresión a nivel de SSL.</p> +<div class="warning"> +<p>Activar la compresión provoca problemas de seguridad en la mayoría de las +configuraciones (como el conocido ataque 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">Directiva</a> <a name="SSLCryptoDevice" id="SSLCryptoDevice">SSLCryptoDevice</a><a title="Enlace permanente" href="#sslcryptodevice" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Activar el uso de un hardware acelerador criptográfico</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLCryptoDevice <em>engine</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLCryptoDevice builtin</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva activa el uso de una placa hardware acelerador criptográfico +para aliviar parte de la carga del procesamiento de SSL. Esta directiva +sólo puede usarse si el kit de herramientas SSL está compilado con soporte de +"engine"; OpenSSL 0.9.7 y posteriores versiones tienen soporte de "engine" por +defecto, en versiones Openssl 0.9.6 debe usarse "-engine".</p> + +<p>Para descubrir qué nombres de "engine" están soportados, ejecute el comando +"<code>openssl engine</code>".</p> + +<div class="example"><h3>Ejemplo</h3><pre class="prettyprint lang-config"># For a Broadcom accelerator: +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">Directiva</a> <a name="SSLEngine" id="SSLEngine">SSLEngine</a><a title="Enlace permanente" href="#sslengine" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Interruptor de Activación del motor SSL</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLEngine on|off|optional|addr[:port] [addr[:port]] ...</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLEngine off</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>El parámetro <code>addr:port</code> está disponible en Apache +2.4.30 y posterior.</td></tr> +</table> +<p> +Esta directiva sirve para activar o desactivar el uso del motor del protocolo +SSL/TLS. Los valores 'on', 'off' y 'optional' deberían usarse dentro de una +sección <code class="directive"><a href="../mod/core.html#virtualhost"><VirtualHost></a></code> para +activar SSL/TLS para un host virtual. Por defecto el motor de SSL/TLS está +deshabilitado para ambos el servidor principal y todos los host virtuales +configurados.</p> + +<div class="example"><h3>Ejemplo</h3><pre class="prettyprint lang-config"><VirtualHost _default_:443> +SSLEngine on +#... +</VirtualHost></pre> +</div> +<p>Se deberían usar los valores <code>addr:port</code> en la configuración +global del servidor para activar el motor del Protocolo SSL/TLS para +<em>todos</em> los +<code class="directive"><a href="../mod/core.html#virtualhost"><VirtualHost></a></code> +que coincidan con una de las direcciones de la lista.</p> +<div class="example"><h3>Ejemplo</h3><pre class="prettyprint lang-config">SSLEngine *:443 +<VirtualHost *:443> +#... +</VirtualHost></pre> +</div> +<p><code class="directive">SSLEngine</code> puede ser configurado a +<code>optional</code>: esto activa el soporte 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">Directiva</a> <a name="SSLFIPS" id="SSLFIPS">SSLFIPS</a><a title="Enlace permanente" href="#sslfips" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Interruptor del modo SSL FIPS</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLFIPS on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLFIPS off</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva activa o desactiva el uso de FIPS_mode en la librería SSL. Esto +debe ponerse en el contexto de la configuración global del servidor y no puede +configurarse con otras configuraciones que especifiquen lo contrario (SSLFIPS on +seguido de SSLFIPS off o similar). Este modo se aplica a todas las operaciones +de la librería SSL. +</p> + +<p> +Si httpd fuera compilado contra una librería SSL que no soporta FIPS_mode, +<code>SSLFIPS on</code> fallará. Vea el documento de Políticas de Seguridad +FIPS 140-2 de su proveedor de librería SSL para requerimientos específicos para +usar mod_ssl en un modo de operación aprobado; tenga en cuenta que mod_ssl +en sí mismo no está validado, pero puede ser descrito como un módulo +validado de criptofrafía FIPS 140-2, cuando todos los componentes son montados +y gestionados bajo las reglas impuestas por la Política de Seguridad aplicable. +</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">Directiva</a> <a name="SSLHonorCipherOrder" id="SSLHonorCipherOrder">SSLHonorCipherOrder</a><a title="Enlace permanente" href="#sslhonorcipherorder" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Opción para forzar el orden de preferencia de cifrados del + servidor</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLHonorCipherOrder on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLHonorCipherOrder off</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p>Cuando se selecciona un cifrado durante el saludo SSLv3 o TLSv1, normalmente +se selecciona en función de las preferencias del cliente. Con esta directiva +activada, se usará la preferencia del servidor en su lugar.</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLInsecureRenegotiation" id="SSLInsecureRenegotiation">SSLInsecureRenegotiation</a><a title="Enlace permanente" href="#sslinsecurerenegotiation" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Opción para activar soporte de renegociación + insegura</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLInsecureRenegotiation on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLInsecureRenegotiation off</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible si se usa OpenSSL 0.9.8m o posterior</td></tr> +</table> +<p>Tal y como se especificó originalmente, todas las versiones de protocolo SSL y +TLS (incluído TLS/1.2) eran vulnerables a ataques tipo Man-in-the-Middle +(<a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2009-3555">CVE-2009-3555</a>) +durante una renegociación. Esta vulnerabilidad permitía a un atancante poner +un prefijo a un texto plano específico en la petición HTTP tal y como se veía +en el servidor web. Se desarrolló una extensión del protocolo para esta vulnerabilidad si estaba soportada tanto por el cliente como por el +servidor.</p> + +<p>Si <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> está compilado contra la versión OpenSSL 0.9.8m +o posterior, por defecto la renegociación sólo está soportada por clientes +que tengan soporte para la nueva extensión del protocolo. Si esta directiva está +activada, la renegociación se permitirá con los clientes antiguos (no +parcheados), aunque de manera insegura.</p> + +<div class="warning"><h3>Aviso de Seguridad</h3> +<p>Si se activa esta directiva, las conexiones SSL serán vulnerables a ataques +Man-in-the-Middle de prefijo tal y como se describe en +<a href="http://cve.mitre.org/cgi-bin/cvename.cgi?name=CAN-2009-3555">CVE-2009-3555</a>.</p> +</div> + +<div class="example"><h3>Ejemplo</h3><pre class="prettyprint lang-config">SSLInsecureRenegotiation on</pre> +</div> + +<p>La variable de entorno <code>SSL_SECURE_RENEG</code> se puede usar desde un +script CGI o desde SSI para determinar si la renegociación segura está soportada +para la conexión SSL en cuestión.</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">Directiva</a> <a name="SSLOCSPDefaultResponder" id="SSLOCSPDefaultResponder">SSLOCSPDefaultResponder</a><a title="Enlace permanente" href="#sslocspdefaultresponder" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Configura la URI por defecto del respondedor para la validación +OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLOCSDefaultResponder <em>uri</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p>Esta opción configura el respondedor OCSP por defecto a usar. Si +<code class="directive"><a href="#sslocspoverrideresponder">SSLOCSPOverrideResponder</a></code> no está +activada, la URI facilitada se usará si no hay una URI de respondedor en el +certificado que está siendo verificado.</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">Directiva</a> <a name="SSLOCSPEnable" id="SSLOCSPEnable">SSLOCSPEnable</a><a title="Enlace permanente" href="#sslocspenable" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Activa la validación OCSP para la cadena de certificados del +cliente</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLOCSPEnable on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLOCSPEnable off</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p>Esta opción activa la validación OCSP de la cadena de certificados del +cliente. Si esta opción está activada, los certificados en la cadena de +certificados del cliente se validarán contra un respondedor OCSP después de que +se hayan hecho las verificaciones normales (incluidas las comprobaciones de +CRL).</p> + +<p>El respondedor OCSP utilizado o bien se extrae del mismo certificado, o +derivado de la configuración; vea las directivas +<code class="directive"><a href="#sslocspdefaultresponder">SSLOCSPDefaultResponder</a></code> y +<code class="directive"><a href="#sslocspoverrideresponder">SSLOCSPOverrideResponder</a></code> +directives.</p> + +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLOCSPNoverify" id="SSLOCSPNoverify">SSLOCSPNoverify</a><a title="Enlace permanente" href="#sslocspnoverify" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Salta la verificación de certificados de respondedor + OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLOCSPNoverify <em>On/Off</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLOCSPNoverify Off</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible en httpd 2.4.26 y posterior, si se usa OpenSSL 0.9.7 o +posterior</td></tr> +</table> +<p>Salta la verificación de certificados del respondedor OCSP, generalmente +útil cuando se comprueba un servidor 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">Directiva</a> <a name="SSLOCSPOverrideResponder" id="SSLOCSPOverrideResponder">SSLOCSPOverrideResponder</a><a title="Enlace permanente" href="#sslocspoverrideresponder" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Fuerza el uso de una URI de respondedor por defecto para la +validación OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLOCSPOverrideResponder on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLOCSPOverrideResponder off</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p>Esta opción fuerza que se use el respondedor OCSP por defecto para la +validación OCSP del certificado, independientemente de si el certificado que +se está validando referencia un respondedor OCSP o no.</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">Directiva</a> <a name="SSLOCSPProxyURL" id="SSLOCSPProxyURL">SSLOCSPProxyURL</a><a title="Enlace permanente" href="#sslocspproxyurl" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>URL de Proxy a utilizar para las consultas OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLOCSPProxyURL <em>url</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible en httpd 2.4.19 y posterior</td></tr> +</table> +<p>Esta opción permite configurar la URL de un proxy HTTP que debería usarse para +todas las consultas a respondedores 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">Directiva</a> <a name="SSLOCSPResponderCertificateFile" id="SSLOCSPResponderCertificateFile">SSLOCSPResponderCertificateFile</a><a title="Enlace permanente" href="#sslocsprespondercertificatefile" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Conjunto de certificados de respondedor OCSP confiables codificados + en PEM</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLOCSPResponderCertificateFile <em>fichero</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible en httpd 2.4.26 y posterior, si se usa con OpenSSL + 0.9.7 o posterior</td></tr> +</table> + +<p>Esto aporta una lista de certificados confiables de respondedor OCSP para +ser usados durante la validación de certificados de respondedor OCSP. Se confía +en los certificados facilitados de manera implícita sin ninguna comprobación +posterior. Esto se usa generalmente cuando el certificado del respondedor +OCSP es autofirmado o se omite de la respuesta.</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">Directiva</a> <a name="SSLOCSPResponderTimeout" id="SSLOCSPResponderTimeout">SSLOCSPResponderTimeout</a><a title="Enlace permanente" href="#sslocsprespondertimeout" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Expiración de las consultas OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLOCSPResponderTimeout <em>segundos</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLOCSPResponderTimeout 10</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p>Esta opción configura el tiempo de expiración para las consultas a los +respondedores OCSP, cuando <code class="directive"><a href="#sslocspenable">SSLOCSPEnable</a></code> +está activado.</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">Directiva</a> <a name="SSLOCSPResponseMaxAge" id="SSLOCSPResponseMaxAge">SSLOCSPResponseMaxAge</a><a title="Enlace permanente" href="#sslocspresponsemaxage" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Edad máxima permitida para las respuestas OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLOCSPResponseMaxAge <em>segundos</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLOCSPResponseMaxAge -1</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p>Esta opción configura la edad máxima permitida de las respuestas +OCSP. El valor por defecto (<code>-1</code>) no fuerza una edad máxima, lo que +significa que las respuestas OCSP se consideran válidas mientras su campo +<code>nextUpdate</code> está en una fecha futura.</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">Directiva</a> <a name="SSLOCSPResponseTimeSkew" id="SSLOCSPResponseTimeSkew">SSLOCSPResponseTimeSkew</a><a title="Enlace permanente" href="#sslocspresponsetimeskew" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Desviación máxima de tiempo permitida para la validación de la +respuesta OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLOCSPResponseTimeSkew <em>segundos</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLOCSPResponseTimeSkew 300</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p>Esta opción configura el tiempo máximo permitido de desviación para las +respuestas OCSP +(cuando se están comprobando sus campos <code>thisUpdate</code> y +<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">Directiva</a> <a name="SSLOCSPUseRequestNonce" id="SSLOCSPUseRequestNonce">SSLOCSPUseRequestNonce</a><a title="Enlace permanente" href="#sslocspuserequestnonce" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Usar un nonce dentro de las consultas OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLOCSPUseRequestNonce on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLOCSPUseRequestNonce on</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible en httpd 2.4.10 y posterior</td></tr> +</table> +<p>Esta opción determina si las consultas a respondedores OCSP deberían contener +un "nonce" o no. Por defecto, una consulta "nonce" siempre se comprueba y se usa +contra la de la respuesta. Cuando el responderdor no usa "nonce"s (p.ej. Microsoft +OCSP Responder), esta opción debería estar configuada a +<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">Directiva</a> <a name="SSLOpenSSLConfCmd" id="SSLOpenSSLConfCmd">SSLOpenSSLConfCmd</a><a title="Enlace permanente" href="#sslopensslconfcmd" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Configura parámetros OpenSSL a través de su API <em>SSL_CONF</em> +</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLOpenSSLConfCmd <em>nombre-de-comando</em> +<em>parámetro-de-comando</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible en httpd 2.4.8 y posterior, si se usa OpenSSL 1.0.2 o +posterior</td></tr> +</table> +<p>Esta directiva expone <em>SSL_CONF</em> de la API de OpenSSL para mod_ssl, +permitiendo una configuración flexible de parámetros para OpenSSL sin la +necesidad de implementar directivas adicionales de <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> +cuando se añaden nuevas características a OpenSSL.</p> + +<p>El conjunto de comandos disponibles de +<code class="directive">SSLOpenSSLConfCmd</code> depende de la versión OpenSSL utilizada +para <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> (al menos la versión 1.0.2 es necesaria). Para una +lista de nombres de comandos +soportados, vea la sección <em>Comandos soportados para fichero de +configuración</em> en la página de manual +<a href="http://www.openssl.org/docs/man1.0.2/ssl/SSL_CONF_cmd.html#SUPPORTED-CONFIGURATION-FILE-COMMANDS">SSL_CONF_cmd(3)</a> +de OpenSSL.</p> + +<p>Algunos de los comandos de <code class="directive">SSLOpenSSLConfCmd</code> se pueden +usar como alternativa a directivas existentes (tales como +<code class="directive"><a href="#sslciphersuite">SSLCipherSuite</a></code> o +<code class="directive"><a href="#sslprotocol">SSLProtocol</a></code>), +aunque debería tenerse en cuenta que la sintaxis / valores disponibles para +parámetros pueden ser diferentes.</p> + +<div class="example"><h3>Ejemplos</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">Directiva</a> <a name="SSLOptions" id="SSLOptions">SSLOptions</a><a title="Enlace permanente" href="#ssloptions" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Configurar varias opciones del motor SSL en tiempo + real</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLOptions [+|-]<em>opción</em> ...</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, directory, .htaccess</td></tr> +<tr><th><a href="directive-dict.html#Override">Anula:</a></th><td>Options</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva puede usarse para controlar varias opciones en tiempo real en +contexto directorio. Normalmente, si múltiples <code>SSLOptions</code> +pueden aplicar a un directorio, entonces se usará la más +específica; las opciones no se fusionan. Sin embargo, si <em>todas</em> las +opciones en la directiva <code>SSLOptions</code> están precedidas de un signo +más (<code>+</code>) o menos (<code>-</code>), las opciones se fusionan. +Cualquier opción precedida de un <code>+</code> es añadida a las opciones que +se están aplicando en ese momento, y cualquier opción precedida de un +<code>-</code> se elimina de las opciones aplicadas en ese momento.</p> +<p> +Las <em>opciones</em> disponibles son:</p> +<ul> +<li><code>StdEnvVars</code> + <p> + Cuando esta opción está habilitada, se generan las variables de entorno + estándar de SSL relacionadas con CGI/SSI. Esto está desactivado por defecto + por razones de rendimiento, porque el paso de extracción de la información + es una operación bastante costosa. Así que uno sólo activaría esta opción + para peticiones CGI o SSI.</p> +</li> +<li><code>ExportCertData</code> + <p> + Cuando se activa esta opción, se generan variables de entorno CGI/SSI + adicionales: <code>SSL_SERVER_CERT</code>, <code>SSL_CLIENT_CERT</code> y + <code>SSL_CLIENT_CERT_CHAIN_</code><em>n</em> (con <em>n</em> = 0,1,2,..). + Estas contienen los certificados X.509 codificados en PEM del servidor + y el cliente para la conexión actual HTTPs y pueden usarse por scripts CGI + para una comprobación más detallada de los Certificados. Adicionalmente + también se facilitan todos los demás certificados de la cadena del + certificado cliente. Esto carga el entorno de variables un poco, así + que por esto deberá usar esta opción para activarla sólo cuando sea + necesario.</p> +</li> +<li><code>FakeBasicAuth</code> + <p> + Cuando se activa esta opción, el Nombre Distinguido de Sujeto (DN) del + Certificado Cliente X509 se traduce a un nombre de Autenticación HTTP Básica. + Esto significa que se pueden usar los métodos estándar de autenticación para + control de acceso. El nombre de usuario es tan sólo el Sujeto del + Certificado Cliente X509 (se puede determinar ejecutando el comando + de OpenSSL <code>openssl x509</code>: <code>openssl x509 -noout -subject -in + </code><em>certificado</em><code>.crt</code>). La directiva + <code class="directive"><a href="#sslusername">SSLUserName</a></code> puede usarse para + especificar qué + parte del Sujeto del Certificado está embebida en el nombre de usuario. + Tenga en cuenta que no se obtiene ninguna contraseña del usuario. Cada + entrada en el fichero de usuario necesita esta contraseña: + ``<code>xxj31ZMTZzkVA</code>'', que es la versión encriptada en DES de la + palabra `<code>password</code>''. Aquellos que viven bajo la encriptación + basada en MD5 (por ejemplo bajo FreeBSD or BSD/OS, etc.) debería usar + el siguiente hash MD5 de la misma palabra: + ``<code>$1$OXLyS...$Owx8s2/m9/gfkcRVXzgoE/</code>''.</p> + + <p>Tenga en cuenta que + la directiva <code class="directive"><a href="../mod/mod_auth_basic.html#authbasicfake">AuthBasicFake</a></code> + dentro de <code class="module"><a href="../mod/mod_auth_basic.html">mod_auth_basic</a></code> puede usarse como un mecanismo + general para fingir la autenticación básica, dando control sobre la + estructura tanto del nombre como de la contraseña.</p> + + <div class="warning"> + <p>Los nombres de usuarios utilizados para <code>FakeBasicAuth</code> no + deben incluir caracteres no-ASCII, caracteres de escape ASCII (tales como + el de nueva línea), o una coma. Si se encuentra una coma, se generará + un error 403 Forbidden con httpd 2.5.1 y posterior.</p> + </div> +</li> +<li><code>StrictRequire</code> + <p> + Esto <em>fuerza</em> acceso prohibido cuando <code>SSLRequireSSL</code> o + <code>SSLRequire</code> deciden satisfactoriamente que el acceso debería + denegarse. Generalmente por defecto en el caso donde se usa una + directiva ``<code>Satisfy any</code>'', y se pasan otras restricciones de + acceso, se sobreescribe la denegación del acceso debido a + <code>SSLRequireSSL</code> o <code>SSLRequire</code> (porque así es como + debería funcionar el mecanismo <code>Satisfy</code> de Apache .) Pero para + la restricción estricta de acceso puede usar <code>SSLRequireSSL</code> y/o + <code>SSLRequire</code> en combinación con un + ``<code>SSLOptions +StrictRequire</code>''. Entonces un + ``<code>Satisfy Any</code>'' adicional no tiene oportunidad una vez que + mod_ssl ha decidido denegar el acceso.</p> +</li> +<li><code>OptRenegotiate</code> + <p> + Esto activa la gestión optimizada de renegociación de conexión SSL cuando + se usan directivas SSL en contexto de directorio. Por defecto un esquema + estricto está habilitado donde <em>cada</em> reconfiguración de directorio de + parámetros SSL provoca una renegociación <em>total</em> del saludo SSL. + Cuando se usa esta opción mod_ssl intenta evitar saludos SSL innecesarios + haciendo comprobaciones más específicas (pero todavía seguras) de parámetros. + Sin embargo estas comprobaciones más específicas pueden no ser lo que espera + el usuario, así que, lo recomendable es que active ésto sólo en contexto + directorio.</p> +</li> +<li><code>LegacyDNStringFormat</code> + <p> + Esta opción influencia cómo se formatean los valores de las variables + <code>SSL_{CLIENT,SERVER}_{I,S}_DN</code>. Desde la versión 2.3.11, Apache + HTTPD usa un formato compatible RFC 2253 por defecto. Esto usa comas como + delimitadores entre atributos, permite el uso de caracteres no-ASCII (que + son convertidos a UTF-8), escapa varios caracteres especiales con barra + invertida "\", y ordena los atributos con el atributo "C" al final.</p> + + <p>Si se activa <code>LegacyDNStringFormat</code>, el formato antiguo + que ordena el atributo "C" el primero será utilizado, usa barras como + separadores y no manipula caracteres no-ASCII y especiales de ninguna forma + consistente. + </p> +</li> +</ul> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLPassPhraseDialog" id="SSLPassPhraseDialog">SSLPassPhraseDialog</a><a title="Enlace permanente" href="#sslpassphrasedialog" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Tipo de díalogo de solicitud de contraseña para claves privadas + encriptadas</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLPassPhraseDialog <em>tipo</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLPassPhraseDialog builtin</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Cuando Apache arranca tiene que leer varios ficheros Certificado (vea +<code class="directive"><a href="#sslcertificatefile">SSLCertificateFile</a></code>) y Clave Privada +(vea +<code class="directive"><a href="#sslcertificatekeyfile">SSLCertificateKeyFile</a></code>) de los servidores +virtuales que tienen SSL activado. Por razones de seguridad los ficheros +de clave privada están generalmente encriptados, mod_ssl necesita preguntar al +administrador por la contraseña para desencriptar esos ficheros. Esta solicitud +puede hacerse de dos maneras que se pueden configurar por +<em>tipo</em>:</p> +<ul> +<li><code>builtin</code> + <p> + Este es el método por defecto donde una ventana de terminal interactiva + aparece al inicio antes que Apache pase a segundo plano. Aquí un + administrador tiene que introducir manualmente la contraseña para cada + fichero de Clave Privada Encriptada. Puesto que puede haber muchos + hosts virtuales configurados con SSL, se usa el siguiente esquema de + reutilización para minimizar el número de veces que se pide la contraseña: + Cuanto un fichero de clave privada está encriptado, se intentará usar + todas las Contraseñas conocidas (al principio no hay ninguna, por supuesto). + Si una de esas contraseñas conocidas funciona no se abre ventana de diálogo + para este fichero de clave privada en particular. Si ninguna funciona, + se vuelve a solicitar la contraseña en la terminal y se recuerda para las + siguientes (donde quizás se pueden reutilizar).</p> + <p> + Este esquema permite a mod_ssl ser flexible al máximo (porque para N + ficheros de Clave Privada Encriptados <em>usted puede</em> usar N + contraseñas diferentes - pero entonces tiene que introducir todas ellas, por + supuesto) al mismo tiempo que se minimizan las solicitudes de contraseña + por terminal (p.ej. cuando usa una sola contraseña para todos los N ficheros + de Clave Privada esta contraseña sólo se pide una vez).</p></li> + +<li><code>|/path/to/program [args...]</code> + + <p>Este modo permite que se use un programa externo que actúa como tubería a + un dispositivo de entrada en particular; al programa se le envía la + solicitud estándar de texto que se usa para el modo <code>builtin</code> en + <code>stdin</code>, y se espera que escriba cadenas de caracteres de + contraseñas en <code>stdout</code>. Si se necesitan varias contraseñas (o si + se introduce una contraseña incorrecta), se escribirán solicitudes de + contraseña adicionales y se tendrá que devolver más contraseñas a través + de dicho programa.</p></li> + +<li><code>exec:/path/to/program</code> + <p> + Aquí se configura un programa externo que se lanza en el arranque para cada + uno de los ficheros de Clave Privada encriptados. Se le llama con un sólo + parámetro, una cadena de caracteres de la forma + ``<code>servername:portnumber:index</code>'' (cuando <code>index</code> es + un número basado en una secuencia de ceros), que indica para qué servidor, + puerto TCP y número de certificado debe imprimir la Contraseña + correspondiente a <code>stdout</code>. La intención es que este programa + externo primero ejecuta comprobaciones de seguridad para asegurar que el + sistema no se ha visto comprometido por un atacante, y sólo cuando estas + comprobaciones se realizan satisfactoriamente entonces facilita la + Contraseña.</p> + + <p> + Ambas comprobaciones de seguridad y el método en que se determina la + contraseña, puede ser tan complejo como usted desee. Mod_ssl sólo define + el interfaz: un programa ejecutable que provee la contraseña en + <code>stdout</code>. Ni más y ni menos. Así que, si usted es realmente + paranoico con la seguridad, este es su interfaz. Cualquier otra cosa se debe + dejar como un trabajo para el administrador, porque los requerimientos de + seguridad local son muy diferentes.</p> + + <p> + El algoritmo de reutilización descrito previamente se usa aquí también. En + otras palabras: se llama sólo una vez al programa externo cuando hay una + única contraseña.</p></li> +</ul> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLPolicy" id="SSLPolicy">SSLPolicy</a><a title="Enlace permanente" href="#sslpolicy" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Aplica una Política SSL por nombre</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLPolicy <em>nombre</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible en httpd 2.4.30 y posterior</td></tr> +</table> +<p>Esta directiva aplica el conjunto de directivas SSL definidas bajo +'nombre' (vea <code class="directive"><SSLPolicyDefine></code>) como las +configuraciones <em>base</em> en el contexto actual. Apache viene con las +siguientes políticas pre-definidas de Mozilla, los desarrolladores del +navegador Firefox +(<a href="https://wiki.mozilla.org/Security/Server_Side_TLS#Recommended_configurations"> +vea aquí para una descripción detallada de ellas.</a>): +</p> +<ul> + <li><code>modern</code>: recomendada cuando su servidor es accesible desde + Internet. Funciona con todos los navegadores modernos, pero dispositivos + antiguos podrían no ser capaces de conectar.</li> + <li><code>intermediate</code>: el recurso si necesita dar soporte a clientes + antiguos (pero no muy antiguos).</li> + <li><code>old</code>: cuando necesita dar acceso a Windows XP/Internet + Explorer 7. El último recurso.</li> +</ul> + +<p>Puede comprobar una descripciónm detallada de todas las políticas definidas +a través de la línea de comandos:</p> +<div class="example"><h3>Listar Todas las Políticas Definidas</h3><pre class="prettyprint lang-sh">httpd -t -D DUMP_SSL_POLICIES</pre> +</div> + +<p>Una SSLPolicy define la línea base para el contexto en la que se utiliza. Eso +significa que cualquier otra diretiva SSL en el mismo contexto la sobreescribirá. +Como ejemplo de esto, vea el valor efectivo de +<code class="directive">SSLProtocol</code> en la siguiente configuración:</p> + +<div class="example"><h3>Precedencia de Política</h3><pre class="prettyprint lang-config"><VirtualHost...> # efectivo en: 'all' + SSLPolicy modern + SSLProtocol all +</VirtualHost> + +<VirtualHost...> # efectivo en: 'all' + SSLProtocol all + SSLPolicy modern +</VirtualHost> + +SSLPolicy modern +<VirtualHost...> # efectivo en: 'all' + SSLProtocol all +</VirtualHost> + +SSLProtocol all +<VirtualHost...> # efectivo en: '+TLSv1.2' + SSLPolicy modern +</VirtualHost></pre> +</div> + +<p>Puede haber más de una política aplicada en un contexto. La últimas +sobreescribiendo las previas: :</p> + +<div class="example"><h3>Ordenando Políticas</h3><pre class="prettyprint lang-config"><VirtualHost...> # protocolo efectivo: 'all -SSLv3' + SSLPolicy modern + SSLPolicy intermediate +</VirtualHost> + +<VirtualHost...> # protocolo efectivo: '+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="sslprotocol" id="sslprotocol">Directiva</a> <a name="SSLProtocol" id="SSLProtocol">SSLProtocol</a><a title="Enlace permanente" href="#sslprotocol" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Configura versiones de protocolo SSL/TLS utilizables</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProtocol [+|-]<em>protocol</em> ...</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLProtocol all -SSLv3</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Se puede usar esta directiva para controlar que versiones del protocolo SSL/TLS +serán aceptadas en las nuevas conexiones.</p> +<p> +Los <em>protocolos</em> disponibles (no sensibles a mayúsculas) son:</p> +<ul> +<li><code>SSLv3</code> + <p> + Este es el protocolo de Secure Sockets Layer (SSL), version 3.0, de la + Corporación Netscape. Es el sucesor a SSLv2 y el predecesor de TLSv1, pero + se ha marcado ya como obsoleto en + <a href="http://www.ietf.org/rfc/rfc7568.txt">RFC 7568</a>.</p></li> + +<li><code>TLSv1</code> + <p> + Este es el protocolo Transport Layer Security (TLS), versión 1.0. + Es el sucesor de SSLv3 y está definido en + <a href="http://www.ietf.org/rfc/rfc2246.txt">RFC 2246</a>. + Está soportado por casi cualquier cliente.</p></li> + +<li><code>TLSv1.1</code> (cuando se usa OpenSSL 1.0.1 y posterior) + <p> + Una revisión del protocolo TLS 1.0, tal y como se define en + <a href="http://www.ietf.org/rfc/rfc4346.txt">RFC 4346</a>.</p></li> + +<li><code>TLSv1.2</code> (cuando se usa OpenSSL 1.0.1 y posterior) + <p> + Una revisión del protocolo TLS 1.1, tal y como se define en + <a href="http://www.ietf.org/rfc/rfc5246.txt">RFC 5246</a>.</p></li> + +<li><code>all</code> + <p> + Esto es un atajo para ``<code>+SSLv3 +TLSv1</code>'' o + - cuando se usa OpenSSL 1.0.1 y posterior - + ``<code>+SSLv3 +TLSv1 +TLSv1.1 +TLSv1.2</code>'', respectivamente + (excepto para versiones de OpenSSL compiladas con la opción de configuración + ``no-ssl3'', donde <code>all</code> no incluye <code>+SSLv3</code>). + </p></li> +</ul> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLProxyCACertificateFile" id="SSLProxyCACertificateFile">SSLProxyCACertificateFile</a><a title="Enlace permanente" href="#sslproxycacertificatefile" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Fichero de Certificados CA concatenados codificados en PEM para +la Autenticación Remota del Servidor</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyCACertificateFile <em>ruta-al-fichero</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura el fichero <em>todo-en-uno</em> donde ensambla los +Certificados de Autoridades de Certificación (CA) de los <em>servidores +remotos</em> a los que conecta. Estos se usan como Autenticación de Servidor +Remoto. Tal fichero es simplemente la concatenación de varios ficheros de +Certificado codificados en PEM en orden de preferencia. Esto se puede usar +alternativamente y/o adicionalmente a +<code class="directive"><a href="#sslproxycacertificatepath">SSLProxyCACertificatePath</a></code>.</p> +<div class="example"><h3>Ejemplo</h3><pre class="prettyprint lang-config">SSLProxyCACertificateFile "/usr/local/apache2/conf/ssl.crt/ca-bundle-remote-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="sslproxycacertificatepath" id="sslproxycacertificatepath">Directiva</a> <a name="SSLProxyCACertificatePath" id="SSLProxyCACertificatePath">SSLProxyCACertificatePath</a><a title="Enlace permanente" href="#sslproxycacertificatepath" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Directorio de Certificados CA codificados en PEM para la +Autenticación de Servidor Remoto</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyCACertificatePath <em>ruta-al-directorio</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura el directorio donde guarda los Certificados de +Autoridades de Certificación (CAs) de los servidores remotos a los que conecta. +Estos se usan para verificar el certificado del servidor remoto en la +Autenticación de Servidor Remoto.</p> + +<p> +Los ficheros en este directorio tienen que estar codificados en PEM y se accede +a ellos a través de nombres de ficheros con hash. Así que generalmente no puede +tan sólo colocar los ficheros de Certificado ahí: también tiene que crear +enlaces simbólicos llamados <em>valor-de-hash</em><code>.N</code>. Y debería +asegurarse siempre de que este directorio contiene los enlaces símbólicos +apropiados.</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLProxyCARevocationCheck" id="SSLProxyCARevocationCheck">SSLProxyCARevocationCheck</a><a title="Enlace permanente" href="#sslproxycarevocationcheck" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Activa la comprobación de revocación basada en CRL para la +Autenticación Remota de Servidor</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyCARevocationCheck chain|leaf|none</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLProxyCARevocationCheck none</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Activa la comprobación de listas de revocación de certificado (CRL) para +los <em>servidores remotos</em> a los que conecta. Al menos una de las directivas +<code class="directive"><a href="#sslproxycarevocationfile">SSLProxyCARevocationFile</a></code> +o <code class="directive"><a href="#sslproxycarevocationpath">SSLProxyCARevocationPath</a></code> debe estar +configurada. Cuando se configura a <code>chain</code> (configuración recomendada), +las comprobaciones de CRL se aplican a todos los certificados en la cadena de +certificación, mientras que configurándolo a <code>leaf</code> limita las +comprobaciones al certificado firmado final. +</p> + +<div class="note"> +<h3>Cuando se configura a <code>chain</code> o <code>leaf</code>, +las CRLs <em>deben</em> estar disponibles para la validación con éxito.</h3> + +<p> +Antes de la versión 2.4.15, la comprobación de CRL en mod_ssl también tenía +éxito cuando no se encontraban CRLs en ninguna de las ubicaciones configuradas +con <code class="directive"><a href="#sslproxycarevocationfile">SSLProxyCARevocationFile</a></code> +o <code class="directive"><a href="#sslproxycarevocationpath">SSLProxyCARevocationPath</a></code>. +Con la introducción de esta directiva, el comportamiento ha cambiado: cuando +la comprobación está habilitada, las CRLs <em>deben</em> estar presentes para +que la validación pueda tener éxito - si no fallará con un error +<code>"unable to get certificate CRL"</code>. +</p> +</div> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLProxyCARevocationFile" id="SSLProxyCARevocationFile">SSLProxyCARevocationFile</a><a title="Enlace permanente" href="#sslproxycarevocationfile" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Fichero de CRLs de CA codificados en PEM concatenados para la +Autenticación Remota de Servidor</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyCARevocationFile <em>ruta-al-fichero</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura el fichero <em>todo-en-uno</em> donde puede ensamblar +las Listas de Revocación de Certificados (CRL) de las Autoridades de +Certificación (CA) de los <em>servidores remotos</em> a los que conecta. Estos +se usan para la Autenticación Remota de Servidor. Tal fichero es simplemente la +concatenación de varios ficheros CRL codificados en PEM, en orden de preferencia. +Esto se puede usar alternativamente a/o adicionalmente a +<code class="directive"><a href="#sslproxycarevocationpath">SSLProxyCARevocationPath</a></code>.</p> +<div class="example"><h3>Ejemplo</h3><pre class="prettyprint lang-config">SSLProxyCARevocationFile "/usr/local/apache2/conf/ssl.crl/ca-bundle-remote-server.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">Directiva</a> <a name="SSLProxyCARevocationPath" id="SSLProxyCARevocationPath">SSLProxyCARevocationPath</a><a title="Enlace permanente" href="#sslproxycarevocationpath" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Directorio de CRLs de CA codificadas en PEM para la Autenticación +Remota de Servidor</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyCARevocationPath <em>ruta-al-directorio</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura el directorio donde se alojan las Listas de Revocación de +Certificado (CRL) de las Autoridades de Certificación (CA) de los servidores a +los que conecta. Estas se usan para revocar el certificado del servidor remoto +en la Autenticación del Servidor Remoto.</p> +<p> +Los ficheros en este directorio tienen que ser codificados en PEM y se acceden +con nombres de ficheros con hash. Así que generalmente no sólo tiene que poner +los ficheros CRL ahí. También tiene que crear enlaces simbólicos llamados +<em>valor-de-hash</em><code>.rN</code>. Y siempre debería asegurarse de que este +directorio tiene los enlaces simbólicos apropiados.</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLProxyCheckPeerCN" id="SSLProxyCheckPeerCN">SSLProxyCheckPeerCN</a><a title="Enlace permanente" href="#sslproxycheckpeercn" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Comprobar el campo CN del certificado del servidor remoto +</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyCheckPeerCN on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLProxyCheckPeerCN on</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura si se debe comparar el campo CN del certificado del +servidor remoto contra el nombre de host de la URL solicitada. Si ambos no son +iguales se envía un código de estado 502 (Bad Gateway). +<code>SSLProxyCheckPeerCN</code> ha sido sustituido por +<code class="directive"><a href="#sslproxycheckpeername">SSLProxyCheckPeerName</a></code> en la versión +2.4.5 y posterior. +</p> + +<p> +En todas las versiones desde 2.4.5 hasta 2.4.20, configurar +<code>SSLProxyCheckPeerName off</code> era suficiente para activar este +comportamiento (puesto que el valor por defecto de +<code>SSLProxyCheckPeerCN</code> era <code>on</code>.) En estas versiones, ambas +directivas deben configurarse a <code>off</code> para evitar completamente que +se valide el nombre del certificado del servidor remoto. Muchos usuarios +reportaron que esto es bastante confuso. +</p> + +<p> +Desde la versión 2.4.21, todas las configuraciones que permiten una de las +opciones <code>SSLProxyCheckPeerName</code> o <code>SSLProxyCheckPeerCN</code> +usarán el nuevo comportamiento de +<code class="directive"><a href="#sslproxycheckpeername">SSLProxyCheckPeerName</a></code>, y todas las +configuraciones que deshabilitan una de las opciones de +<code>SSLProxyCheckPeerName</code> o <code>SSLProxyCheckPeerCN</code> +suprimirán la validación del nombre del certificado del servidor remoto. sólo +la siguiente configuración habilitará la comparación antigua del CN en 2.4.21 y +versiones posteriores; +</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLProxyCheckPeerExpire" id="SSLProxyCheckPeerExpire">SSLProxyCheckPeerExpire</a><a title="Enlace permanente" href="#sslproxycheckpeerexpire" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Comprobar si el certificado del servidor remoto está expirado +</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyCheckPeerExpire on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLProxyCheckPeerExpire on</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura si se debe comprobar si el certificado del servidor +remoto está expirado o no. Si la comprobación falla se devuelve un error 502 +(Bad Gateway). +</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLProxyCheckPeerName" id="SSLProxyCheckPeerName">SSLProxyCheckPeerName</a><a title="Enlace permanente" href="#sslproxycheckpeername" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Configure comprobación de nombre de host para certificados de + servidor remoto +</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyCheckPeerName on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLProxyCheckPeerName on</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Apache HTTP Server 2.4.5 and later</td></tr> +</table> +<p> +Esta directiva configura la comprobación del nombre de host de certificados de +servidor cuando mod_ssl está actuando como un cliente SSL. La comprobación +tendrá éxito si el nombre de host de la petición coincide con uno de los +CN del sujeto del certificado, o coincide con la extensión subjectAltName. Si la +comprobación falla, la petición SSL se aborta y se devuelve un código de +estado 502. +</p> + +<p> +Se soportan coincidencias con certificados wildcard para casos específicos: una +entrada subjectAltName del tipo dNSName, o atributos CN que comienzan con +<code>*.</code> coincidirán con cualquier nombre de host del mismo número de +elementos de nombre y el mismo sufijo. +P. ej. <code>*.example.org</code> coinciderá con <code>foo.example.org</code>, +pero no coincidirá con <code>foo.bar.example.org</code>, porque el número de +elementos en el nombre de host respectivo es diferente. +</p> + +<p> +Esta característica fue introducida en 2.4.5 y sustituye el comportamiento de +la directiva <code class="directive"><a href="#sslproxycheckpeercn">SSLProxyCheckPeerCN</a></code>, que +sólo comprobaba el valor exacto en el primer atributo CN contra el nombre de +host. Sin embargo, muchos usuarios estaban confundidos por el comportamiento de +usar estas directivas individualmente, así que el comportamiento mutuo de las +directivas <code>SSLProxyCheckPeerName</code> y <code>SSLProxyCheckPeerCN</code> +fue mejorado en la versión 2.4.21. Vea la descripción de la directiva +<code class="directive"><a href="#sslproxycheckpeercn">SSLProxyCheckPeerCN</a></code> para el +comportamiento original y detalles de estas mejoras. +</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">Directiva</a> <a name="SSLProxyCipherSuite" id="SSLProxyCipherSuite">SSLProxyCipherSuite</a><a title="Enlace permanente" href="#sslproxyciphersuite" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Conjunto de Cifrados disponibles para negociación en el saludo SSL +de proxy</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyCipherSuite <em>especificación-de-cifrado</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLProxyCipherSuite ALL:!ADH:RC4+RSA:+HIGH:+MEDIUM:+LOW:+EXP</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p>Equivalente a <code class="directive"><a href="#sslciphersuite">SSLCipherSuite</a></code>, pero +para la conexión de proxy. +Por favor consulte <code class="directive"><a href="#sslciphersuite">SSLCipherSuite</a></code> +para información adicional.</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">Directiva</a> <a name="SSLProxyEngine" id="SSLProxyEngine">SSLProxyEngine</a><a title="Enlace permanente" href="#sslproxyengine" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Interruptor de Operación del Motor de Proxy SSL</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyEngine on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLProxyEngine off</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva activa el uso del motor de protocolo SSL/TLS para proxy. Esto +se usa actualmente dentro de una sección +<code class="directive"><a href="../mod/core.html#virtualhost"><VirtualHost></a></code> para activar el +uso de proxy con SSL/TLS en un host virtual en particular. Por defecto el Motor +de Protocolo SSL/TLS está desactivado para tanto el servidor principal como todos +los hosts virtuales.</p> + +<p>Tenga en cuenta que la directiva <code class="directive">SSLProxyEngine</code> no +debería en general, ser incluida en un host virtual que actuará como forward +proxy (usando las directivas +<code class="directive"><a href="../mod/mod_proxy.html#proxy"><Proxy></a></code> +o <code class="directive"><a href="../mod/mod_proxy.html#proxyrequests">ProxyRequests</a></code>). +<code class="directive">SSLProxyEngine</code> no es necesario para activar un servidor +forward proxy para hacer proxy de peticiones SSL/TLS.</p> + +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLProxyMachineCertificateChainFile" id="SSLProxyMachineCertificateChainFile">SSLProxyMachineCertificateChainFile</a><a title="Enlace permanente" href="#sslproxymachinecertificatechainfile" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Fichero de certificados CA concatenados y codificados en PEM para +ser usados por el proxy para elegir un certificado</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyMachineCertificateChainFile <em>ruta-al-fichero</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura el fichero todo-en-uno donde guarda la cadena de +certificados para todos los certificados cliente en uso. Esta directiva se +necesitará si los servidores remotos presentan una lista de certificados CA +que no son firmantes directos de uno de los certificados cliente configurados. +</p> +<p> +Este fichero es simplemente la concatenciación de varios ficheros de certificado +codificado en PEM. En el arranque, cada certificado cliente configurado será +examinado y se construirá una cadena de confianza. +</p> +<div class="warning"><h3>Aviso de Seguridad</h3> +<p>Si se activa esta directiva, se confiará en todos los certificados en el +fichero como si también estuvieran en +<code class="directive"><a href="#sslproxycacertificatefile">SSLProxyCACertificateFile</a></code>.</p> +</div> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLProxyMachineCertificateFile" id="SSLProxyMachineCertificateFile">SSLProxyMachineCertificateFile</a><a title="Enlace permanente" href="#sslproxymachinecertificatefile" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Fichero de certificados cliente codificados en PEM y claves para +ser usadas por el proxy</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyMachineCertificateFile <em>ruta-al-fichero</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura el fichero todo-en-uno donde guarda los certificados y +claves usadas para la autenticación del servidor proxy en servidores remotos. +</p> +<p> +Este fichero es simplemente la concatenación de varios ficheros de certificado +codificados en PEM, en orden de preferencia. Use esta directiva alternativamente +o adicionalmente a <code>SSLProxyMachineCertificatePath</code>. +</p> +<div class="warning"> +<p>Actualmente no hay soporte para claves privadas encriptadas</p> +</div> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLProxyMachineCertificatePath" id="SSLProxyMachineCertificatePath">SSLProxyMachineCertificatePath</a><a title="Enlace permanente" href="#sslproxymachinecertificatepath" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Directorio de certificados cliente codificados en PEM y claves + para ser usadas por el proxy</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyMachineCertificatePath <em>directorio</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura el directorio donde se guardan los certificados y claves +usadas para la autenticación del servidor proxy en servidores remotos. +</p> + +<p>Los ficheros en este directorio deben ser codificados en PEM y accesibles +con nombres de ficheros con hash. Además, debe crear enlaces simbólicos +llamados <code><em>valor-del-hash</em>.N</code>. Y siempre debería asegurarse +de que este directorio contiene los enlaces simbólicos apropiados.</p> +<div class="warning"> +<p>Actualmente no hay soporte para claves privadas encriptadas</p> +</div> +<div class="example"><h3>Ejemplo</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="sslproxyprotocol" id="sslproxyprotocol">Directiva</a> <a name="SSLProxyProtocol" id="SSLProxyProtocol">SSLProxyProtocol</a><a title="Enlace permanente" href="#sslproxyprotocol" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Configure sabores de protocolo SSL utilizables para uso de + proxy</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyProtocol [+|-]<em>protocolo</em> ...</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLProxyProtocol all -SSLv3</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> + +<p> +Esta directiva puede usarse para controlar los sabores de protocolo SSL que +mod_ssl debería usar cuando establece si entorno de servidor para proxy. sólo +conectará con servidores usando uno de sus protocolos facilitados.</p> +<p>Por favor vea <code class="directive"><a href="#sslprotocol">SSLProtocol</a></code> para +información adicional. +</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">Directiva</a> <a name="SSLProxyVerify" id="SSLProxyVerify">SSLProxyVerify</a><a title="Enlace permanente" href="#sslproxyverify" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Tipo de verficación de certificado del servidor remoto</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyVerify <em>level</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLProxyVerify none</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> + +<p>Cuando se configura un proxy para enviar peticiones a un servidor remoto SSL, +esta directiva se puede usar para configurar verificación de certificado del +servidor remoto.</p> + +<p> +Los siguientes niveles están disponibles para <em>nivel</em>:</p> +<ul> +<li><strong>none</strong>: + No se requiere Certificado del servidor remoto para nada</li> +<li><strong>optional</strong>: + el servidor remoto <em>puede</em> presentar un Certificado válido</li> +<li><strong>require</strong>: + el servidor remoto <em>tiene que</em> presenta un Certificado válido</li> +<li><strong>optional_no_ca</strong>: + el servidor remoto puede presentar un Certificado válido<br /> + pero no tiene por qué ser verificable (con éxito).</li> +</ul> +<p>En la práctica sólo los niveles <strong>none</strong> y +<strong>require</strong> son realmente interesantes, porque el nivel +<strong>optional</strong> no funciona en todos los servidores y el nivel +<strong>optional_no_ca</strong> va actualmente contra la idea de autenticación +(pero se puede usar para establecer páginas de test SSL, etc.)</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLProxyVerifyDepth" id="SSLProxyVerifyDepth">SSLProxyVerifyDepth</a><a title="Enlace permanente" href="#sslproxyverifydepth" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Máxima profundidad de los Certificados CA en la verificación del +Certificado en el Servidor Remoto</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLProxyVerifyDepth <em>number</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLProxyVerifyDepth 1</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, sección de proxy</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura hasta dónde mod_ssl debería verificar antes de decidir +que el servidor remoto not tiene un certificado válido.</p> + +<p> +La profundidad actualmente es el número máximo de expedidores intermedios de +certificados, p. ej. el número de certificados CA que se permiten seguir como +máximo para verificar el certificado del servidor remoto. Una profundidad de 0 +sigifnica que sólo se permiten certificados auto-firmados, la profundidad por +defecto de 1 significa que el servidor remoto puede ser autofirmado o fimado por +una CA que es directamente conocida por el servidor (p. ej. el certificado CA +bajo <code class="directive"><a href="#sslproxycacertificatepath">SSLProxyCACertificatePath</a></code>), +etc.</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLRandomSeed" id="SSLRandomSeed">SSLRandomSeed</a><a title="Enlace permanente" href="#sslrandomseed" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Fuente de generación de semilla pseudoaleatoria de números + (PRNG)</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLRandomSeed <em>contexto</em> <em>fuente</em> +[<em>bytes</em>]</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> + <p> + Esto configura una o más fuentes de generación de semilla pseudoaleatoria de + números "Pseudo Random Number Generator (PRNG)" en OpenSSL en el arranque + (<em>contexto</em> es <code>startup</code>) y/o justo antes de que se + establezca una nueva conexión SSL + (<em>contexto</em> es <code>connect</code>). Esta directiva sólo se puede usar + en el contexto global de configuración del servidor porque PRNG es una + característica global.</p> + <p> + Las siguientes variante de <em>fuente</em> están disponibles:</p> + <ul> + <li><code>builtin</code> + <p>Esta es siempre la fuente de generación de semilla que está siempre + disponible. Usa el mínimo de ciclos de CPU en tiempo real así que se puede + usar siempre sin contratiempos. La fuente utilizada para la generación de + semilla de PRNG contiene la hora actual, el id de proceso actual y + (cuando es aplicable) un extracto de 1KB escogido aleatoriamente de la + estructura de scoreboard de Apache. La pega es que no es realmente una + fuente muy compleja y en el momento del arranque (cuando el scoreboard + todavía no está disponible) esta fuente sólo produce unos pocos bytes de + entropía. Así que usted debería, al menos en el arranque, usar una fuente + adicional de generación de semilla.</p></li> + + <li><code>file:/ruta/hacia/la/fuente</code> + <p> + Esta variante usa un fichero externo <code>/ruta/hacia/la/fuente</code> con + la fuente de generación de semilla para PRNG. Cuando se especifica + <em>bytes</em>, sólo los primeros <em>bytes</em> del número de bytes del + fichero forman la entropía (y <em>bytes</em> se da a + <code>/ruta/hacia/la/fuente</code> como el primer parámetro). Cuando + no se especifica <em>bytes</em> el fichero al completo forma la entropía + (y <code>0</code> se da a <code>/ruta/hacia/la/fuente</code> como primer + parámetro). Use esto especialmente en el arranque, por ejemplo con + dispositivos disponibles <code>/dev/random</code> y/o + <code>/dev/urandom</code> (que generalmente existen en derivados de Unix + modernos como FreeBSD y Linux).</p> + <p> + <em>Pero tenga cuidado</em>: Generalmente <code>/dev/random</code> facilita + sólo tantos datos de entropía como tiene en ese momento, p.ej. cuando solicita + 512 bytes de entropía, pero el dispositivo sólo tiene 100 bytes disponibles + dos cosas pasan: En algunas plataformas recibe sólo 100 bytes mientras que + en otras plataformas la lectura se bloquea hasta que hay suficientes bytes + disponibles (lo cual puede llevar bastante tiempo). Aquí usar un + <code>/dev/urandom</code> existente es mejor, porque nunca bloquea y porque + facilita la cantidad de datos solicitada. La pega es que la calidad de los + datos recibidos puede que no sea la mejor.</p></li> + +<li><code>exec:/ruta/al/programa</code> + <p> + Esta variante usa un ejecutable externo + <code>/ruta/al/programa</code> como la fuente de generación de semilla de + PRNG. Cuando se especifica <em>bytes</em>, sólo los primeros + <em>bytes</em> del número de bytes de su contenido de <code>stdout</code> + forman la entropía. Cuando no se especifica <em>bytes</em>, el total de los + datos producidos en <code>stdout</code> forman la entropía. Use esto sólo + en el tiempo de arranque cuando necesita una generación de semilla muy + compleja con la ayuda de un programa externo (como en el + ejemplo de más arriba con la utilidad <code>truerand</code> que puede + encontrar en la distribución de mod_ssl que está basada en la librería + <em>truerand</em> de AT&T). Usar esto en contexto de conexión + ralentiza al servidor de manera dramática, por supuesto. Así que debería + evitar programas externos en ese contexto. </p></li> + +<li><code>egd:/ruta/al/egd-socket</code> (Sólo Unix) + <p> + Esta variante usa el socket de dominio Unix del Demonio de Recolección de + Entropía externo (Entropy Gathering Daemon (EGD)) (vea <a href="http://www.lothar.com/tech/crypto/">http://www.lothar.com/tech + /crypto/</a>) para generar semilla de PRNG. Use esto si no hay un + dispositivo de generación de datos aleatorios en su sistema.</p></li> +</ul> + +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLRenegBufferSize" id="SSLRenegBufferSize">SSLRenegBufferSize</a><a title="Enlace permanente" href="#sslrenegbuffersize" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Configure el tamaño para el búfer de renegociación + SSL</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLRenegBufferSize <var>bytes</var></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLRenegBufferSize 131072</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>directory, .htaccess</td></tr> +<tr><th><a href="directive-dict.html#Override">Anula:</a></th><td>AuthConfig</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> + +<p>Si se requiere una renegociación SSL por el contexto location, por ejemplo, +cualquier uso de <code class="directive"><a href="#sslverifyclient">SSLVerifyClient</a></code> en un +bloque Directory o Location, entonces <code class="module"><a href="../mod/mod_ssl.html">mod_ssl</a></code> debe hacer búfer +del cuerpo de la petición HTTP en memoria hasta que el nuevo saludo SSL +puede realizarse. Esta directiva se puede usar para especificar la cantidad +de memoria que se usará para este búfer.</p> + +<div class="warning"><p> +Tenga en cuenta que en muchas configuraciones, el cliente enviando el cuerpo de +la petición no es confiable así que se debe considerar un ataque de denegación +de servicio por consumo de memoria cuando se cambie este valor de +configuración. +</p></div> + +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLRequire" id="SSLRequire">SSLRequire</a><a title="Enlace permanente" href="#sslrequire" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Permite acceso sólo cuando una compleja expresión booleana + arbitraría es cierta</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLRequire <em>expresión</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>directory, .htaccess</td></tr> +<tr><th><a href="directive-dict.html#Override">Anula:</a></th><td>AuthConfig</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> + +<div class="note"><h3>SSLRequire está obsoleta</h3> +<p><code>SSLRequire</code> está obsoleta y debería en general ser sustituida por +<a href="mod_authz_core.html#reqexpr">Require expr</a>. La tal llamada +sintaxis de <a href="../expr.html">ap_expr</a> en <code>Require expr</code> es +la sustitución de la sintaxis de <code>SSLRequire</code>, con la siguiente +excepción:</p> + +<p>En <code>SSLRequire</code>, los operadores de comparación <code><</code>, +<code><=</code>, ... son equivalentes completamente a los operadores +<code>lt</code>, <code>le</code>, ... y funionan de una manera un tanto peculiar +que primero compara la longitud de dos cadenas de caracteres y después el orden +léxico. Por otro lado, <a href="../expr.html">ap_expr</a> tiene dos conjuntos +de operadores de comparación: Los operadores <code><</code>, +<code><=</code>, ... hacen compraciones léxicas de cadenas de caracteres, +mientras que los operadores <code>-lt</code>, <code>-le</code>, ... hacen +comparación de números integrales. +Para los últimos, también hay aliases sin el guión inicial: +<code>lt</code>, <code>le</code>, ... +</p> +</div> + +<p> +Esta directiva especifica un requerimiento de acceso general que tiene +que pasarse para que se permita el acceso. Es una directiva muy versátil porque +la especificación del requerimiento es una compleja expresión booleana arbitraria +que contiene cualquier número de comprobaciones.</p> +<p> + +La <em>expresión</em> debe coincidir en la siguiente sintaxis (dada una notación +gramatical 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>Para <code>varname</code> se puede usar cualquiera de las variables descritas +en <a href="#envvars">Variables de Entorno</a>. Para +<code>funcname</code> las funciones disponibles están listadas en la +<a href="../expr.html#functions">documentación de ap_expr</a>.</p> + +<p>La <em>expresión</em> es interpretada dentro de una representación interna +de máquina cuando se carga la configuración, y es después evaluada durante +el procesamiento de la petición. En contexto .htaccess, la <em>expresión</em> es +en ambos casos interpretada y ejecutada cada vez que se encuentra un fichero +.htaccess durante el procesamiento de la petición.</p> + +<div class="example"><h3>Ejemplo</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 función <code>PeerExtList(<em>object-ID</em>)</code> espera encontrar +cero o más instancias de la extensión de certificado X.509 identificadas por +un <em>ID de objecto</em> (OID) dado en el certificado cliente. La expresión +se evalúa a cierta si la cadena de caracteres de la izquierda coincide +exactamente contra el valor de la extensión identificada por este OID. (Si están +presentes múltiples extensiones con el mismo OID, al menos uno debe +coincidir).</p> + +<div class="example"><h3>Ejemplo</h3><pre class="prettyprint lang-config">SSLRequire "foobar" in PeerExtList("1.2.3.4.5.6")</pre> +</div> + +<div class="note"><h3>Notas sobre la función PeerExtList</h3> + +<ul> + +<li><p>El ID de objeto puede ser especificado o bien como un +nombre descriptivo reconocido por la librería SSL, tal como +<code>"nsComment"</code>, o como un OID numérico, tal como + <code>"1.2.3.4.5.6"</code>.</p></li> + +<li><p>Expresiones con tipos conocidos para la librería SSL se expresan como una +cadena de caracteres antes de su comparación. Para una extensión con un tipo no +reconocido por la librería SSL, mod_ssl interpretará el valor si es uno de los +tipos primitivos ASN.1 types UTF8String, IA5String, VisibleString, +o BMPString. Para una extensión de uno de estos tipos, el valor de la cadena +de caracteres se convertirá en UTF-8 si es necesario, y entonces comparada +contra la expresión de la izquierda.</p></li> + +</ul> +</div> + + +<h3>Consulte también</h3> +<ul> +<li><a href="../env.html">Variables de entorno en el Servidor HTTP + Apache</a>, para más ejemplos. +</li> +<li><a href="mod_authz_core.html#reqexpr">Require expr</a></li> +<li><a href="../expr.html">Sintaxis general de expresión en el Servidor +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">Directiva</a> <a name="SSLRequireSSL" id="SSLRequireSSL">SSLRequireSSL</a><a title="Enlace permanente" href="#sslrequiressl" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Denegar el acceso cuando no se usa SSL para la petición + HTTP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLRequireSSL</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>directory, .htaccess</td></tr> +<tr><th><a href="directive-dict.html#Override">Anula:</a></th><td>AuthConfig</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva prohibe el acceso a menos que esté habilitado HTTP sobre SSL +(p. ej. HTTPS) para la conexión en cuestión. Esto es muy útil dentro de +hosts virtuales con SSL activado o directorios, para defenderse de errores +de configuración que exponen cosas que deberían estar protegidas. Cuando esta +directiva está presente todas las peticiones que no usen SSL son denegadas.</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLSessionCache" id="SSLSessionCache">SSLSessionCache</a><a title="Enlace permanente" href="#sslsessioncache" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Tipo de la Caché global/interproceso de la sesión SSL</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLSessionCache <em>tipo</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLSessionCache none</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esto configura el tipo de almacenamiento para la Cache global/interproceso de +la sesión SSL. Esta cache es una característica opcional que acelera el +processamiento de peticiones en paralelo. Para peticiones con el mismo +proceso de servidor (a través de keep-alive HTTP), OpenSSL ya cachea la +información de sesión de SSL localmente. Pero puesto que los clientes modernos +solicitan imágenes y otros datos a través de peticiones en paralelo +(generalmente hasta cuatro peticiones en paralelo es lo típico) esas peticiones +se sirven por procesos de servidor <em>diferentes</em>. Aquí la cache de +inter-proceso ayuda para evitar saludos de sesión SSL innecesarios.</p> +<p> + +Los cinto <em>tipos</em> de almacenamientos siguientes están soportados:</p> +<ul> +<li><code>none</code> + + <p>Esto desactiva la Cache de Sesión de interproceso/global. Esto + repercutirá en un descenso de la velocidad notable y puede causar problemas + con ciertos navegadores, particularmente si están activados los certificados + cliente. Esta configuración no se recomienda.</p></li> + +<li><code>nonenotnull</code> + + <p>Esto sólo desactiva la Cache de Sesión de interproceso/global. Aun así no + fuerza a OpenSSL a enviar ID de sesión no-nula para adaptarse a clientes + que requieren una.</p></li> + +<li><code>dbm:/ruta/al/ficherodedatos</code> + + <p>Esto hace uso del fichero de hash DBM en el disco local para sincronizar + las caches de memoria del OpenSSL de los procesos del servidor. Esta caché + de sesión puede tener problemas de fiabilidad cuando hay carga alta. Para + usarla, asegúrese de que + <code class="module"><a href="../mod/mod_socache_dbm.html">mod_socache_dbm</a></code> está cargado.</p></li> + +<li><code>shmcb:/ruta/al/ficherodedatos</code>[<code>(</code><em>tamaño</em><code>)</code>] + + <p>Esto hace uso del búfer cíclico de alto rendimiento + (approx. <em>tamaño</em> bytes de tamaño) dentro de un segmento de memoria + compartida en RAM (establecida con <code>/ruta/al/ficherodedatos</code>) + para sincronizar las caches de memoria del OpenSSL local de los procesos del + servidor. Esta es la caché de sesión recomendada. Para usarla, asegúrese de + que <code class="module"><a href="../mod/mod_socache_shmcb.html">mod_socache_shmcb</a></code> está cargado.</p></li> + +<li><code>dc:UNIX:/ruta/al/socket</code> + + <p>Esto hace uso de las librerias de cacheo <a href="http://distcache.sourceforge.net/">distcache</a>. El parámetro debería + especificar la ubicación del servidor o proxy para ser usado con distcache + usando sintaxis de dirección; por ejemplo, + <code>UNIX:/ruta/al/socket</code> especifica un socket de dominio UNIX + (típicamente un proxy dc_client local); + <code>IP:server.example.com:9001</code> especifica una dirección IP. Para + usar esto, asegúrese de que <code class="module"><a href="../mod/mod_socache_dc.html">mod_socache_dc</a></code> está + cargado.</p></li> + +</ul> + +<div class="example"><h3>Ejemplos</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>El mutex <code>ssl-cache</code> se usa para serializar el acceso a la cache +de sesión para prevenir corrupción. Este mutex puede configurarse usando la +directiva <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">Directiva</a> <a name="SSLSessionCacheTimeout" id="SSLSessionCacheTimeout">SSLSessionCacheTimeout</a><a title="Enlace permanente" href="#sslsessioncachetimeout" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Número de segundos antes de que la sesión SSL expira + en la Cache de Sesión</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLSessionCacheTimeout <em>segundos</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLSessionCacheTimeout 300</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Aplica también al RFC 5077 de reanudación de sesión en + Apache 2.4.10 o posterior</td></tr> +</table> +<p> +Esta directiva configura el tiemplo límite en segundos para la información +guardada en la caché de sesión SSL de interproceso/global, la caché de memoria +interna de OpenSSL y para las sesiones reanudadas por la reanudación de sesión +de TLS (RFC 5077). Puede ponerse hasta un mínimo de 15 para hacer pruebas, pero +debería configurarse con valores como 300 en entornos funcionales.</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLSessionTicketKeyFile" id="SSLSessionTicketKeyFile">SSLSessionTicketKeyFile</a><a title="Enlace permanente" href="#sslsessionticketkeyfile" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Clave persistente de encriptación/desencriptación para ticket de +sesión TLS</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLSessionTicketKeyFile <em>ruta-al-fichero</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible en httpd 2.4.0 y posterior, si se usaOpenSSL 0.9.8h o +posterior</td></tr> +</table> +<p>Opcionalmente configura una clave secreta para la encriptación y +desencriptación de tickets de sesión TLS, tal y como se define en +<a href="http://www.ietf.org/rfc/rfc5077.txt">RFC 5077</a>. Principalmente +adecuado para entornos clusterizados donde la información de sesiones TLS +debería ser compartida entre varios nodos. Para configuraciones de una sola +instancia http, es recomendable <em>no</em> configurar un fichero clave +de ticket, pero si depender de varias claves generadas (al azar) por mod_ssl +en el arranque, en su lugar.</p> +<p>El fichero clave de ticket debe contener 48 bytes de datos aleatorios, +preferiblemente credos de una fuente con alta entropía. En un sistema basado en +Unix, un fichero clave de ticket puede generarse como sigue:</p> + +<div class="example"><p><code> +dd if=/dev/random of=/path/to/file.tkey bs=1 count=48 +</code></p></div> + +<p>Las claves de ticket deberían rotarse (sustituirse) frecuentemente, puesto +que esta es la única forma de invalidar sesiones de ticket existentes - Openssl +actualmente no permite especificar un tiempo límite de validez de tickets. Una +nueva clave de ticket sólo se usa después de reiniciar el servidor web. +Todas las sesiones de tickets existentes son inválidas después de un +reinicio.</p> + +<div class="warning"> +<p>El fichero clave de ticket contiene material sensible de claves y debería +protegerse con permisos de fichero de una manera similar a las que se deben +usar para los ficheros utilizados con +<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">Directiva</a> <a name="SSLSessionTickets" id="SSLSessionTickets">SSLSessionTickets</a><a title="Enlace permanente" href="#sslsessiontickets" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Activa o desactiva el uso de tickets de sesión TLS</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLSessionTickets on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLSessionTickets on</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible en httpd 2.4.11 y posterior, si se usa OpenSSL 0.9.8f +o posterior.</td></tr> +</table> +<p>Esta directiva permite activar o desactivar el uso de los tickets de sesión +TLS (RFC 5077).</p> +<div class="warning"> +<p>Los tickets de sesión TLS se activan por defecto. Usarlos sin reiniciar el +servidor web con una frecuencia apropiada (p. ej. diariamente) compromete +un "forward secrecy" perfecto</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">Directiva</a> <a name="SSLSRPUnknownUserSeed" id="SSLSRPUnknownUserSeed">SSLSRPUnknownUserSeed</a><a title="Enlace permanente" href="#sslsrpunknownuserseed" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Semilla de usuario desconocido SRP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLSRPUnknownUserSeed <em>cadenadecaracteres-secreta</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible en httpd 2.4.4 y posterior si se usa OpenSSL 1.0.1 o +posterior</td></tr> +</table> +<p> +Esta directiva configura la semilla usada para aparentar parámetros de usuario +SRP para usuarios desconocidos, para evitar dar a conocer si el usuario +facilitado existe, se especifica una cadena de caracteres secreta. Si no se usa +esta directiva, entonces Apache deolverá la alerta UNKNOWN_PSK_IDENTITY a +clientes que espcifican un nombre de usuario desconocido. +</p> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLSRPVerifierFile" id="SSLSRPVerifierFile">SSLSRPVerifierFile</a><a title="Enlace permanente" href="#sslsrpverifierfile" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Ruta hacia el fichero verificador SRP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLSRPVerifierFile <em>ruta-al-fichero</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible en httpd 2.4.4 y posterior si se usa OpenSSL 1.0.1 o +posterior</td></tr> +</table> +<p> +Esta directiva activa TLS-SRP y configura la ruta al fichero verificador +OpenSSL SRP (Secure Remote Password) que contiene nombres de usuario, +verificadores, salts y parámetros de grupo TLS-SRP.</p> +<div class="example"><h3>Ejemplo</h3><p><code> +SSLSRPVerifierFile "/ruta/al/fichero.srpv" +</code></p></div> + +<p> +El fichero verificador puede generarse con la utilidad de línea de comandos +<code>openssl</code>:</p> + +<div class="example"><h3>Creando el fichero verificador SRP</h3><p><code> +openssl srp -srpvfile passwd.srpv -userinfo "some info" -add username +</code></p></div> + +<p> El valor dado con el parámetro opcional <code>-userinfo</code> está +disponible en la variable de entorno de petición +<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">Directiva</a> <a name="SSLStaplingCache" id="SSLStaplingCache">SSLStaplingCache</a><a title="Enlace permanente" href="#sslstaplingcache" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Configura la cache del stapling de OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLStaplingCache <em>tipo</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible si se usa OpenSSL 0.9.8h o posterior</td></tr> +</table> +<p>Configura la cache utilizada para almacenar las respuestas OCSP que se +incluyen en el saludo TLS si +<code class="directive"><a href="#sslusestapling">SSLUseStapling</a></code> está activada. La +coniguración de la cache es obligatoria para el stapling the OCSP. Con la +excepción de <code>none</code> y <code>nonenotnull</code>, se da soporte a +los mismos tipos de almacenamiento que con +<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">Directiva</a> <a name="SSLStaplingErrorCacheTimeout" id="SSLStaplingErrorCacheTimeout">SSLStaplingErrorCacheTimeout</a><a title="Enlace permanente" href="#sslstaplingerrorcachetimeout" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Número de segundos antes de expirar respuestas inválidas en la +cache del stapling de OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLStaplingErrorCacheTimeout <em>segundos</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLStaplingErrorCacheTimeout 600</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible si se usa OpenSSL 0.9.8h o posterior</td></tr> +</table> +<p>Configura el tiempo límite en segundos antes de que las respuestas +<em>inválidas</em> en la cache de stapling OCSP (configuradas con +<code class="directive"><a href="#sslstaplingcache">SSLStaplingCache</a></code>) expiren. Para +configurar el tiempo límite de respuestas válidas, vea +<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">Directiva</a> <a name="SSLStaplingFakeTryLater" id="SSLStaplingFakeTryLater">SSLStaplingFakeTryLater</a><a title="Enlace permanente" href="#sslstaplingfaketrylater" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Sintetiza respuestas "tryLater" para consultas fallidas de stapling +de OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLStaplingFakeTryLater on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLStaplingFakeTryLater on</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible si se usa OpenSSL 0.9.8h o posterior</td></tr> +</table> +<p>Cuando se activa y una consulta de stapling a un respondedor OCSP falla, +mod_ssl sintetizará una respuesta "tryLater" para el cliente. sólo efectiva si +<code class="directive"><a href="#sslstaplingreturnrespondererrors">SSLStaplingReturnResponderErrors</a></code> +también está activada.</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">Directiva</a> <a name="SSLStaplingForceURL" id="SSLStaplingForceURL">SSLStaplingForceURL</a><a title="Enlace permanente" href="#sslstaplingforceurl" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Sobreescribe la URI especificada por el respondedor OCSP + especificada en la extensión AIA del certificado</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLStaplingForceURL <em>uri</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible si se usa OpenSSL 0.9.8h o posterior</td></tr> +</table> +<p>Esta directiva sobreescribe la URI de un respondedor OCSP obtenida de la +extensión authorityInfoAccess (AIA) del certificado. +Un uso potencial puede ser cuando se usa un proxy para hacer consultas 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="sslstaplingrespondertimeout" id="sslstaplingrespondertimeout">Directiva</a> <a name="SSLStaplingResponderTimeout" id="SSLStaplingResponderTimeout">SSLStaplingResponderTimeout</a><a title="Enlace permanente" href="#sslstaplingrespondertimeout" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Tiempo máximo para las consultas de stapling de OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLStaplingResponderTimeout <em>segundos</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLStaplingResponderTimeout 10</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible si se usa OpenSSL 0.9.8h o posterior</td></tr> +</table> +<p>Esta opción configura el tiempo máximo para consultas a respondedores OCSP +cuando <code class="directive"><a href="#sslusestapling">SSLUseStapling</a></code> está activada y +mod_ssl está consultando a un respondedor por motivos de stapling de 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="sslstaplingresponsemaxage" id="sslstaplingresponsemaxage">Directiva</a> <a name="SSLStaplingResponseMaxAge" id="SSLStaplingResponseMaxAge">SSLStaplingResponseMaxAge</a><a title="Enlace permanente" href="#sslstaplingresponsemaxage" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Edad máxima permitida para respuesta de stapling OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLStaplingResponseMaxAge <em>segundos</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLStaplingResponseMaxAge -1</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible si se usa OpenSSL 0.9.8h o posterior</td></tr> +</table> +<p>Esta opción configura la edad máxima permitida ("frescura") cuando se +consideran las respuestas OCSP para stapling, p. ej. cuando +<code class="directive"><a href="#sslusestapling">SSLUseStapling</a></code> está activada. +El valor por defecto (<code>-1</code>) no fuerza una edad máxima, lo que +significa que las respuestas OCSP se consideran válidas mientras el valor del +campo <code>nextUpdate</code> está en una fecha futura.</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">Directiva</a> <a name="SSLStaplingResponseTimeSkew" id="SSLStaplingResponseTimeSkew">SSLStaplingResponseTimeSkew</a><a title="Enlace permanente" href="#sslstaplingresponsetimeskew" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Tiempo máximo permitido para la validación del stapling + OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLStaplingResponseTimeSkew <em>segundos</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLStaplingResponseTimeSkew 300</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible si se usa OpenSSL 0.9.8h o posterior</td></tr> +</table> +<p>Esta opción configura el tiempo máximo de desviación cuando mod_ssl comprueba +los campos <code>thisUpdate</code> y <code>nextUpdate</code> de las respuestas +OCSP que se incluyen en el saludo TLS (Stapling de OCSP). sólo aplicable si +<code class="directive"><a href="#sslusestapling">SSLUseStapling</a></code> está activada.</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">Directiva</a> <a name="SSLStaplingReturnResponderErrors" id="SSLStaplingReturnResponderErrors">SSLStaplingReturnResponderErrors</a><a title="Enlace permanente" href="#sslstaplingreturnrespondererrors" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Pasa los errores relacionados con stapling de OCSP al cliente +</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLStaplingReturnResponderErrors on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLStaplingReturnResponderErrors on</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible si se usa OpenSSL 0.9.8h o posterior</td></tr> +</table> +<p>Cuando se activa, mod_ssl pasará las respuestas de consultas sin éxito +relacionadas con el stapling OCSP (tales como respuestas con un estado general +que no sea otro que "con éxito", respuestas con un estado de certificado que no +sea otro que "bueno", respuestas de expirado, etc.) al cliente. +Si la configura a <code>off</code>, sólo respuestas indicando un estado de +certificado "bueno" se incluirán en el saludo TLS.</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">Directiva</a> <a name="SSLStaplingStandardCacheTimeout" id="SSLStaplingStandardCacheTimeout">SSLStaplingStandardCacheTimeout</a><a title="Enlace permanente" href="#sslstaplingstandardcachetimeout" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Número de segundos antes de expirar las respuestas en la cache del +stapling de OCSP</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLStaplingStandardCacheTimeout <em>segundos</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLStaplingStandardCacheTimeout 3600</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible si se usa OpenSSL 0.9.8h o posterior</td></tr> +</table> +<p>Configura el límite de tiempo en segundos antes de que las respuestas en el +cache de stapling de OCSP (configuradas con +<code class="directive"><a href="#sslstaplingcache">SSLStaplingCache</a></code>) expiren. Esta +directiva aplica a respuestas <em>válidas</em>, mientras que +<code class="directive"><a href="#sslstaplingerrorcachetimeout">SSLStaplingErrorCacheTimeout</a></code> se +usa para controlar el límite de tiempo para respuestas inválidas/indisponibles. +</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">Directiva</a> <a name="SSLStrictSNIVHostCheck" id="SSLStrictSNIVHostCheck">SSLStrictSNIVHostCheck</a><a title="Enlace permanente" href="#sslstrictsnivhostcheck" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Permitir o no a clientes no-SNI acceder a host virtuales basados + en nombre. +</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLStrictSNIVHostCheck on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLStrictSNIVHostCheck off</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura si un cliente no-SNI tiene permiso para acceder a un +host virtual basado en nombre. Si se configura a <code>on</code> en el host +virtual por defecto basado en nombre, los clientes que no son compatibles con +SNI no se les permitirá el acceso a <em>ningún</em> host virtual que pertenezca +a esta combinación de ip/puerto. Si se configura a <code>on</code> en cualquier +otro host virtual, los clientes no compatibles con SNI no tendrán acceso a ese +host virtual en particular. +</p> + +<div class="warning"><p> +Esta opción sólo está disponible si httpd fue compilado contra una versión +compatible con SNI de OpenSSL. +</p></div> + +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLUserName" id="SSLUserName">SSLUserName</a><a title="Enlace permanente" href="#sslusername" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Nombre de variable para determinar el nombre de usuario</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLUserName <em>nombre de variable</em></code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, directory, .htaccess</td></tr> +<tr><th><a href="directive-dict.html#Override">Anula:</a></th><td>AuthConfig</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura el campo "usuario" en el objeto de solicitud de Apache. +Esto se usa por módulos menores para identificar el usuario con una cadena +de caracteres. En particular esto puede causar que la variable de entorno +<code>REMOTE_USER</code> sea configurada. El <em>nombre de variable</em> puede +ser cualquiera de las <a href="#envvars">variables de entorno SSL</a>.</p> + +<p>Cuando se activa la opción <code>FakeBasicAuth</code>, esta directiva +controla en su lgar el valor del nombre de usuario embebido dentro de la +cabecera de autenticación básica (vea <a href="#ssloptions">SSLOptions</a>).</p> + +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLUseStapling" id="SSLUseStapling">SSLUseStapling</a><a title="Enlace permanente" href="#sslusestapling" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Activa stapling de las respuestas OCSP en el saludo + TLS</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLUseStapling on|off</code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLUseStapling off</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +<tr><th><a href="directive-dict.html#Compatibility">Compatibilidad:</a></th><td>Disponible si se usa OpenSSL 0.9.8h o posterior</td></tr> +</table> +<p>Esta opción activa el stapling de OCSP, tal y como se define en la extensión +TLS "Solicitud de Estado de Certificado" especificada en el RFC 6066. Si está +activado (y solicitado por el cliente), mod_ssl incluirá una respuesta OCSP de +su propio certificado en el saludo TLS. Configurar una +<code class="directive"><a href="#sslstaplingcache">SSLStaplingCache</a></code> es un pre-requisito para +activar stapling de OCSP.</p> + +<p>El stapling de OCSP releva al cliente de consultar el respondedor OCSP por si +mismo, pero debería tenerse en cuenta que con la especificación RFC 6066, la +respuesta de <code>CertificateStatus</code> del servidor podría sólo incluir +una respuesta OCSP de un sólo certificado. Para los certificados de servidor +con certificados de CA intermedias en su cadena (lo típico hoy en día), +stapling en su implementación actual por tanto sólo consigue su objetivo +parcialmente de "ahorrar varias peticiones y consumo de recursos" - vea también +el <a href="http://www.ietf.org/rfc/rfc6961.txt">RFC 6961</a> +(Extensión de TLS del Estado de Múltiples Certificados). +</p> + +<p>Cuando el stapling de OCSP está activado, se usa el mutex +<code>ssl-stapling</code> para controlar el acceso a la cahe de stapling de OCSP +para prevenir corrupción, y se usa el mutex <code>sss-stapling-refresh</code> +para controlar los refrescos a las respuestas OCSP. Estos mutexes pueden ser +configurados usando la directiva +<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">Directiva</a> <a name="SSLVerifyClient" id="SSLVerifyClient">SSLVerifyClient</a><a title="Enlace permanente" href="#sslverifyclient" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Tipo de verificación de Certificado Cliente</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLVerifyClient <em>nivel</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLVerifyClient none</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, directory, .htaccess</td></tr> +<tr><th><a href="directive-dict.html#Override">Anula:</a></th><td>AuthConfig</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura el nivel de verificación de Certificado para la +Autenticación de Cliente. Tenga en cuenta que esta directiva se puede usar tanto +en contexto servidor como en contexto directorio. En contexto de servidor se +aplica al proceso de autenticación de cliente usado en el saludo estándar de SSL +cuando se establece una conexión. En el contexto directorio fuerza una +renegociación SSL con el nivel de verificación reconfigurado después de que se +lee la petiicón HTTP pero antes de que se responda la respuesta HTTP.</p> + +<p> +Los siguientes niveles están disponibles para <em>nivel</em>:</p> +<ul> +<li><strong>none</strong>: + no se requiere Certificado cliente ninguno</li> +<li><strong>optional</strong>: + el cliente <em>puede</em> presentar un Certificado válido</li> +<li><strong>require</strong>: + el cliente <em>tiene que</em> presentar un Certificado válido</li> +<li><strong>optional_no_ca</strong>: + el cliente puede presentar un Certificado válido<br /> + pero no tiene por qué ser verificable (satisfactoriamente). No se puede + depender de esta opción para la autenticación de cliente. </li> +</ul> +<div class="example"><h3>Ejemplo</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">Directiva</a> <a name="SSLVerifyDepth" id="SSLVerifyDepth">SSLVerifyDepth</a><a title="Enlace permanente" href="#sslverifydepth" class="permalink">¶</a></h2> +<table class="directive"> +<tr><th><a href="directive-dict.html#Description">Descripción:</a></th><td>Profundidad máxima de Certificados CA en la verificación de +Certificado Cliente</td></tr> +<tr><th><a href="directive-dict.html#Syntax">Sintaxis:</a></th><td><code>SSLVerifyDepth <em>number</em></code></td></tr> +<tr><th><a href="directive-dict.html#Default">Valor por defecto:</a></th><td><code>SSLVerifyDepth 1</code></td></tr> +<tr><th><a href="directive-dict.html#Context">Contexto:</a></th><td>server config, virtual host, directory, .htaccess</td></tr> +<tr><th><a href="directive-dict.html#Override">Anula:</a></th><td>AuthConfig</td></tr> +<tr><th><a href="directive-dict.html#Status">Estado:</a></th><td>Extensión</td></tr> +<tr><th><a href="directive-dict.html#Module">Módulo:</a></th><td>mod_ssl</td></tr> +</table> +<p> +Esta directiva configura hasta qué nivel debe mod_ssl verificar antes de decidir +cuando los clientes no tienen un certificado válido. Tenga en cuenta que esta +directiva puede usarse tanto en contexto servidor como en contexto directorio. +En contexto servidor se aplica al proceso de autenticación de cliente en el +salido SSL estándar cuando se establece una conexión. En el contexto directorio +fuerza una renegociación SSL con la profundidad de verficiación de cliente +reconfigurada después de que se lea la petición HTTP pero antes de que sé haya +enviado la respuesta HTTP.</p> +<p> +La profundidad es en realidad el número máximo de certificados CA intermedios, +p. ej. el número de certificados CA máximo permitido a seguir en la verificación +del certificado cliente. Una profundidad de 0 significa que sólo se +aceptan los certificados cliente autofirmados, la profundidad por defecto de 1 +significa que el cliente puede ser autofirmado o tiene que estar firmado por una +CA que es directamente conocida por el servidor (p. ej. los certificados CA +están bajo +<code class="directive"><a href="#sslcacertificatepath">SSLCACertificatePath</a></code>), etc.</p> +<div class="example"><h3>Ejemplo</h3><pre class="prettyprint lang-config">SSLVerifyDepth 10</pre> +</div> + +</div> +</div> +<div class="bottomlang"> +<p><span>Idiomas disponibles: </span><a href="../en/mod/mod_ssl.html" hreflang="en" rel="alternate" title="English"> en </a> | +<a href="../es/mod/mod_ssl.html" title="Español"> es </a> | +<a href="../fr/mod/mod_ssl.html" hreflang="fr" rel="alternate" title="Franç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">Comentarios</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 />Licencia bajo los términos de la <a href="http://www.apache.org/licenses/LICENSE-2.0">Apache License, Version 2.0</a>.</p> +<p class="menu"><a href="../mod/">Módulos</a> | <a href="../mod/quickreference.html">Directivas</a> | <a href="http://wiki.apache.org/httpd/FAQ">Preguntas Frecuentes</a> | <a href="../glossary.html">Glosario</a> | <a href="../sitemap.html">Mapa del sitio web</a></p></div><script type="text/javascript"><!--//--><![CDATA[//><!-- +if (typeof(prettyPrint) !== 'undefined') { + prettyPrint(); +} +//--><!]]></script> +</body></html>
\ No newline at end of file |