Я заранее извиняюсь за длину этого поста.
Из-за некоторых недавних проблем на нашем сервере в работе, которые я не смог решить с помощью Nginx (перенаправления работают правильно с http -> https из браузера, нонапример, не с curl -L, что означает, что в некоторых случаях ссылки icalendar больше нельзя использовать), я переключился на apache2 с образом докера: httpd.Я не думаю, что это имеет значение, но сайт / приложение основано на django, с python (все dockerized, поэтому один докер для front-web, один для приложения django, один для db).
Настройка Apache2 устранила проблемы с перенаправлением, и выход из Nginxmare был великолепен!Теперь с Apached возникла еще одна проблема: загрузка файлов и ограничение размера файлов.
Я довольно долго искал, и SSL Handshakes просто не удался, если файл больше определенного размера (я думаю, 128 КБ).
Добавление параметра «SSLRenegBufferSize 7000000» только в httpd.conf, к сожалению, не помогло (я пробовал несколько каталогов, почти все каталоги, куда я хотел бы, чтобы люди загружали файлы + корневой каталог приложения).
Я, в конце концов, решил проблему, НО ..... Мне интересно, достаточно ли безопасен сейчас веб-сайт (некоторые данные клиента хранятся на нашей стороне, включая фотографии некоторых документов, удостоверяющих личность).Я добавил некоторые параметры в 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.
И теперь я получаю "SSLVerifyClient none" в httpd.conf ... (это будетиначе я не решу проблему), что меня беспокоит, мы просто больше не запрашиваем клиентские сертификаты (хотя я не могу сказать, делал ли это Nginx, чтобы быть совершенно честным).Ранее он был установлен как «необязательный».
Итак, я ищу:
- гарантия того, что такие настройки хороши и наш веб-сайт все еще достаточно защищен
- еще один способ справиться с этой проблемой.
И если бы у некоторых других была такая же проблема, как у нас, я был бы рад, если бы этот пост помог им найти решение для решения этой проблемыпроблема.