2016-10-20 2 views
0

Ich verwende mod_wsgi-express in Docker mit Graham's image. Ich möchte, dass Benutzer über HTTPS auf meine Website zugreifen.mod_wsgi-express in Docker: SSLCipherSuite und SSLProtocol

Wenn ich die Site über SSL-Labs ausführen, kann ich sehen, dass SSLv3 und TLS1.0 aktiviert sind, ebenso wie die RC4-Chiffren. Ich möchte nichts davon, also brauche ich Zugang zu den SSLCipherSuite und SSLProtocol Direktiven in der Datei httpd.conf.

Aber, Blick auf die Optionen von mod_wsgi-express start-server --help und die HTTPS-Zeilengruppen in der generierten Datei, sehe ich keine Möglichkeit, auf diese Variablen zuzugreifen.

<IfDefine MOD_WSGI_WITH_HTTPS> 
<IfDefine MOD_WSGI_WITH_LISTENER_HOST> 
Listen localhost:443 
</IfDefine> 
<IfDefine !MOD_WSGI_WITH_LISTENER_HOST> 
Listen 443 
</IfDefine> 
<IfVersion < 2.4> 
NameVirtualHost *:443 
</IfVersion> 
<VirtualHost _default_:443> 
<Location /> 
<IfVersion < 2.4> 
Order deny,allow 
Deny from all 
</IfVersion> 
<IfVersion >= 2.4> 
Require all denied 
</IfVersion> 
<IfDefine MOD_WSGI_ALLOW_LOCALHOST> 
Allow from localhost 
</IfDefine> 
</Location> 
SSLEngine On 
SSLCertificateFile cert-file.crt 
SSLCertificateKeyFile key-file.key 
<IfDefine MOD_WSGI_VERIFY_CLIENT> 
SSLCACertificateFile None 
SSLVerifyClient none 
</IfDefine> 
<IfDefine MOD_WSGI_CERTIFICATE_CHAIN> 
SSLCertificateChainFile None 
</IfDefine> 
</VirtualHost> 
<VirtualHost *:443> 
ServerName my-server.me 
<IfDefine MOD_WSGI_SERVER_ALIAS> 
ServerAlias None 
</IfDefine> 
SSLEngine On 
SSLCertificateFile cert-file.crt 
SSLCertificateKeyFile key-file.ky 
<IfDefine MOD_WSGI_VERIFY_CLIENT> 
SSLCACertificateFile None 
SSLVerifyClient none 
</IfDefine> 
<IfDefine MOD_WSGI_CERTIFICATE_CHAIN> 
SSLCertificateChainFile None 
</IfDefine> 
<IfDefine MOD_WSGI_HTTPS_ONLY> 
<IfDefine MOD_WSGI_HSTS_POLICY> 
Header set Strict-Transport-Security None 
</IfDefine> 
</IfDefine> 
<IfDefine MOD_WSGI_SSL_ENVIRONMENT> 
SSLOptions +StdEnvVars 
</IfDefine> 
</VirtualHost> 
<IfDefine MOD_WSGI_REDIRECT_WWW> 
<VirtualHost *:443> 
ServerName unspecified 
Redirect permanent/https://my-server.me:443/ 
SSLEngine On 
SSLCertificateFile cert-file.crt 
SSLCertificateKeyFile key-file.key 
<IfDefine MOD_WSGI_VERIFY_CLIENT> 
SSLCACertificateFile None 
SSLVerifyClient none 
</IfDefine> 
<IfDefine MOD_WSGI_CERTIFICATE_CHAIN> 
SSLCertificateChainFile None 
</IfDefine> 
</VirtualHost> 
</IfDefine> 
</IfDefine> 

</IfDefine> 

Gibt es eine Möglichkeit SSLCipherSuite und SSLProtocol zuzugreifen, die mir fehlt, oder bin ich mein eigenes httpd.conf stecken zu bauen und es in das Bild eingespritzt?

Antwort

0

Versuchen Sie, eine ssl.conf Datei zu erstellen, und fügen Sie Ihre Anweisungen hinzu. Dann fügen Sie die Option:

--include-file ssl.conf 

zu mod_wsgi-express bei der Ausführung.

Diese werden am Ende der generierten httpd.conf Datei enthalten sein, die ich denke für diese Optionen ist in Ordnung.

Wenn das nicht hilft, dann geh auf die mod_wsgi Mailingliste und wir können weiter dort diskutieren. Ich muss möglicherweise eine --ssl-options Option hinzufügen, um eine Snippet-Datei mit SSL-Zeug darin aufzunehmen, so dass sie an der richtigen Stelle in der generierten Datei enthalten ist.

+0

Das funktionierte wie ein Champion. Meine ssl.conf Datei ist von https://mozilla.github.io/server-side-tls/ssl-config-generator/ und ich injiziere es mit COPY in das Bild. – plavacek