2016-10-20 18 views
0

我使用Graham's image在Docker中運行mod_wsgi-express。我希望用戶通過HTTPS訪問我的網站。Docker中的mod_wsgi-express:SSLCipherSuite和SSLProtocol

當我通過SSL實驗室運行該站點時,我可以看到SSLv3和TLS1.0已打開,RC4密碼也一樣。我不想要這些,所以我需要訪問httpd.conf文件中的SSLCipherSuiteSSLProtocol指令。

但是,看看mod_wsgi-express start-server --help和生成文件中的HTTPS節的選項,我沒有看到任何方式來訪問這些變量。

<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> 

是否有訪問SSLCipherSuiteSSLProtocol,我很想念的方式,還是我卡住建設自己的httpd.conf和其注入的形象呢?

回答

0

嘗試創建一個ssl.conf文件並在其中添加您的指令。然後添加選項:

--include-file ssl.conf 

mod_wsgi-express運行時。

這些將包括在生成的httpd.conf文件的結尾,我認爲這些選項是可以的。

如果沒有幫助,那麼跳轉到mod_wsgi郵件列表,我們可以在那裏進一步討論。我可能需要添加一個--ssl-options選項來包含帶有SSL資料的片段文件,因此包含在生成文件的正確位置。

+0

這就像一個冠軍。我的ssl.conf文件不在https://mozilla.github.io/server-side-tls/ssl-config-generator/中,我用COPY將它注入圖像。 – plavacek