docker-httpd ssl配置,文件上传大小限制,ssl握手和安全性

时间:2018-11-14 05:37:10

标签: apache docker ssl httpd.conf

对于这篇文章的长度,我事先表示歉意。

由于我们的服务器在工作中出现了一些最近的问题,我无法使用Nginx解决(重定向从浏览器的http-> https正常工作,但不适用于curl -L,例如,意味着无法再使用icalendar链接在某些情况下),我使用docker image:httpd切换到apache2。 我认为这无关紧要,但是网站/应用程序是基于django的python(所有docker化,因此一个docker用于前端网络,一个用于django应用,一个用于db)。

设置Apache2解决了重定向问题,走出Nginxmare感觉很棒! 现在,Apached出现了另一个问题:文件上传和文件大小限制。

我搜索了很多,如果文件大于一定大小(我认为是128 kb),SSL握手就会失败。

不幸的是,仅在httpd.conf中添加“ SSLRenegBufferSize 7000000”参数并没有帮助(我尝试了多个目录,几乎是我希望人们上载文件的所有目录+应用程序的根目录)。

我最终解决了问题,但是...我想知道网站现在是否仍然足够安全(一些客户的数据正存储在我们这边,包括一些身份证明文件的图片)。 我向发现there的httpd.conf中添加了一些参数:

After the issues due to Apache renegotiation made public on November 2009, it is advised to configure Apache this way:

    On the SSL virtualhost root

    SSLVerifyDepth 4
    SSLVerifyClient none (ou require)
    SSLCipherSuite !EDH:!ADH:!DSS:!RC4:HIGH:+3DES
    SSLProtocol all -SSLv2 -SSLv3 
    SSLHonorCipherOrder on  # apache 2.1+

    Then inside your virtualhost, or in the .htaccess of your DocumentRoot, do not ever use the 4 instructions up here.

    It makes Apache negotiate the right values from the root and not to renegotiate them after.

    Downside: you can not configure a site without certificate authentication on the root with one repertory requiring a certificate anymore. You will have to create a special site that requires the user certificate from the root.

现在我在httpd.conf中以“ SSLVerifyClient none”结束了...(否则将无法解决问题),这令我感到担忧,我们根本不再要求提供客户端证书(我无法告知如果Nginx做到了这一点,说实话)。 以前它设置为“可选”。

所以我要找的是:

  • 可以保证这样的设置很好并且我们的网站仍然足够安全
  • 另一种解决此问题的方法。

如果其他一些人遇到了我们刚才遇到的同样的问题,那么我很乐意该帖子帮助他们找到了解决该问题的方法。

0 个答案:

没有答案