Cuándo entran en vigor las directivas SSL

Cuándo entran en vigor las directivas SSL

Estoy tratando de aprender los conceptos básicos de la configuración del servidor Apache y me pregunto acerca de la validez de las directivas SSL entre los diferentes ámbitos de Apache.

Esas directivas;

SSLEngine on
SSLCertificateFile "/etc/apache2/ssl/apache.crt"
SSLCertificateKeyFile "/etc/apache2/ssl/apache.key"
SSLRequireSSL ...

¿Dónde se pueden colocar? ¿Solo en la sección VirtualHost? Si los coloco en el ámbito global, ¿funcionarán?

Lo siento si esta pregunta está fuera de contexto de alguna manera, todavía tengo algunos problemas generales con Apache :)

Respuesta1

¡Bienvenido al mundo de Apache! La primera lección es aprender a leer la excelente documentación. En la documentación de Apache, cada directiva tiene uncontextosección que indica en qué parte de los archivos de configuración del servidor la directiva es legal. Se puede encontrar justo debajo de las líneas Syntax:y Default:.

configuración del servidorEsto significa que la directiva puede usarse en los archivos de configuración del servidor (por ejemplo, httpd.conf), pero no dentro de ninguno <VirtualHost>de <Directory>los contenedores. No está permitido en .htaccessningún archivo.

anfitrión virtualEste contexto significa que la directiva puede aparecer dentro de <VirtualHost>contenedores en los archivos de configuración del servidor.

directorioUna directiva marcada como válida en este contexto se puede utilizar dentro de <Directory>, <Location>, <Files>, <If>y <Proxy> contenedores en los archivos de configuración del servidor, sujeto a las restricciones descritas en las Secciones de Configuración.

.htaccessSi una directiva es válida en este contexto, significa que puede aparecer dentro de archivos .htaccess por directorio. Es posible que no se procese, aunque dependerá de las anulaciones actualmente activas.

ConSSLEngine,SSLCertificateFile,SSLCertificateKeyFilelos contextos son configuración del servidor y host virtual. Esto significa que puede especificarlos para todo el servidor y también anular esta configuración predeterminada según <VirtualHost>.

ElSSLRequireSSLDirectivapor otro lado, es legal en contextos de directorio y .htaccess. Esto significa que puede, al colocar esto en un directorio, especificar que no se deben permitir conexiones que no sean TLS incluso si existe un host virtual solo HTTP que de otro modo serviría a este directorio.

Sin embargo, hoy en día debes proteger todo con TLS, lo que lo hace SSLRequireSSLinnecesario. Redirigir todo HTTP a HTTPS y aplicarlo mediante unSeguridad de transporte estricta HTTP(HSTS) política (RFC 6797).

información relacionada