У меня есть выделенный веб-сервер CentOS (с Plesk 12), и я пытаюсь отключить SSL 3.
Я везде пытался отключить SSL 3 и пытался применить исправление, как описано в других сообщениях, но когда я повторно тестировал (используя https://www.ssllabs.com/ssltest/analyze.html?d) сервер по-прежнему показывает, что SSL 3 доступен.
Я был у поставщика серверов, и они мне не очень помогли.
Может ли кто-нибудь указать мне правильное направление?
Мой файл /etc/nginx/nginx.conf выглядит так
#user nginx;
worker_processes 1;
#error_log /var/log/nginx/error.log;
#error_log /var/log/nginx/error.log notice;
#error_log /var/log/nginx/error.log info;
#pid /var/run/nginx.pid;
events {
worker_connections 1024;
}
http {
include mime.types;
default_type application/octet-stream;
#log_format main '$remote_addr - $remote_user [$time_local] "$request" '
# '$status $body_bytes_sent "$http_referer" '
# '"$http_user_agent" "$http_x_forwarded_for"';
#access_log /var/log/nginx/access.log main;
sendfile on;
#tcp_nopush on;
#keepalive_timeout 0;
keepalive_timeout 65;
#tcp_nodelay on;
gzip on;
gzip_http_version 1.1;
gzip_vary on;
gzip_comp_level 6;
gzip_proxied any;
gzip_types text/plain image/svg+xml text/css application/json application/x$
gzip_buffers 16 8k;
gzip_disable "MSIE [1-6]\.(?!.*SV1)";
server_tokens off;
include /etc/nginx/conf.d/*.conf;
server {
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDH$
ssl_prefer_server_ciphers on;
}
}
После того, как я применил вышеуказанное, я перезапустил службу с sudo service nginx restart
Буду признателен за любую помощь.
Я настоятельно рекомендую вам использовать найденный инструмент настройки Mozilla SSL Вот.
Они поддерживают его в актуальном состоянии, он охватывает Apache и Nginx и показывает вам все параметры.
Вот выдержка из моей конфигурации сайта по умолчанию:
listen 443 ssl;
listen [::]:443 ssl ipv6only=on;
server_name ubuntu;
# ---- SSL Configuration - Use http://mozilla.github.io/server-side-tls/ssl-config-generator/ to update ---- #
# Includes PFS, Cert Pinning, SPDY
# certs sent to the client in SERVER HELLO are concatenated in ssl_certificate
ssl_certificate /etc/nginx/ssl/nginx.crt;
ssl_certificate_key /etc/nginx/ssl/nginx.key;
ssl_session_timeout 5m;
ssl_session_cache shared:SSL:50m;
# Diffie-Hellman parameter for DHE ciphersuites, recommended 2048 bits
# Generate with: cd /etc/ssl/certs && sudo openssl dhparam -out /etc/nginx/ssl/dhparam.pem 2048
ssl_dhparam /etc/nginx/ssl/dhparam.pem;
# modern configuration. tweak to your needs.
ssl_protocols TLSv1.1 TLSv1.2;
ssl_ciphers 'ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-DSS-AES128-GCM-SHA256:kEDH+AESGCM:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA384:ECDHE-RSA-AES256-SHA:ECDHE-ECDSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA256:DHE-RSA-AES256-SHA256:DHE-DSS-AES256-SHA:DHE-RSA-AES256-SHA:!aNULL:!eNULL:!EXPORT:!DES:!RC4:!3DES:!MD5:!PSK';
ssl_prefer_server_ciphers on;
# HSTS
add_header Strict-Transport-Security max-age=15768000;
# OCSP Stapling ---
# fetch OCSP records from URL in ssl_certificate and cache them
#ssl_stapling on;
#ssl_stapling_verify on;
## verify chain of trust of OCSP response using Root CA and Intermediate certs
#For StartSSL goto ‘Toolbox’ and ‘StartCom CA Certificates’ and is called ‘Server Certificate Bundle with CRLs’.
#ssl_trusted_certificate /path/to/root_CA_cert_plus_intermediates;
#resolver 8.8.8.8;
# ---- End of SSL Config ---- #
Обратите внимание, что я не включил сшивание OCSP, потому что оно берется с локального сервера разработки, работающего в гостевой системе VirtualBox, поэтому у него есть только самозаверяющий сертификат.
Спасибо всем за комментарии. Наконец-то мне удалось найти решение
http://forum.sp.parallels.com/threads/ssl-poodle-sslv3-bug.323338/
Сначала я хотел бы поблагодарить UFHH01 за предоставленное решение, на данный момент наша проблема решена! Надеюсь, вы не против, я собрал все шаги ниже:
Обновлено: убедитесь, что вы используете правильный каталог для шаблонов. «/ opt / psa / admin / conf / templates / default» не то же самое, что «/ usr / local / psa / admin / conf / templates / custom /», это может быть специфическим для дистрибутива или опечаткой в одном или другом. ..для меня я использовал / usr / local / psa / admin / conf / templates / custom /
Убедитесь, что вы сначала выполнили команды:
cd / etc / nginx / openssl dhparam -out dhparam.pem 4096
Возьмите чашку кофе, это будет немного ... [музыка в лифте] Когда он закончится, вы должны вернуться к приглашению оболочки.
Обновлено: создайте каталог / usr / local / psa / admin / conf / templates / custom /, если он еще не существует. При копировании файлов в пользовательские шаблоны убедитесь, что вы используете ту же структуру каталогов и копируете только те файлы, которые вы будете редактировать.
Команды:
mkdir / usr / local / psa / admin / conf / templates / custom cp /usr/local/psa/admin/conf/templates/default/nginxWebmailPartial.php / usr / local / psa / admin / conf / templates / custom / cp /usr/local/psa/admin/conf/templates/default/server/nginxVhosts.php / usr / local / psa / admin / conf / templates / custom / server / cp / usr / local / psa / admin / conf / templates /default/domain/nginxDomainVirtualHost.php / usr / local / psa / admin / conf / templates / custom / domain / cd / usr / local / psa / admin / conf / templates / custom /
Внесите следующие изменения кода в файлы ниже, которые теперь находятся в / usr / local / psa / admin / conf / templates / custom /
«nginxWebmailPartial.php» «сервер / nginxVhosts.php» «домен / nginxDomainVirtualHost.php»
Код:
ssl_session_timeout 5 мин; ssl_session_cache общий: SSL: 50 м;
ssl_protocols TLSv1 TLSv1.1 TLSv1.2; ssl_ciphers "EECDH + ECDSA + AESGCM EECDH + aRSA + AESGCM EECDH + ECDSA + SHA384 EECDH + ECDSA + SHA256 EECDH + aRSA + SHA384 EECDH + aRSA + RCHARSAULL EECDH4! aRSA + 3D RCHECDSAULL EECDH4! ! MD5! EXP! PSK! SRP! DSS »; ssl_prefer_server_ciphers на; ssl_dhparam /etc/nginx/dhparam.pem;
После внесения изменений обязательно:
/ usr / local / psa / admin / bin / httpdmng --reconfigure-all service httpd restart service nginx restart
Вы можете сделать это, сделав это по умолчанию:
ssl_protocols TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers ALL:! ADH: RC4 + RSA: + HIGH: + MEDIUM: -LOW: -SSLv2: -SSLv3: -EXP:! kEDH;
Чтобы отключить поддержку SSLv3 (poodle vunerablity), вам нужно добавить -SSLv3 к своим шифрам, а также использовать параметры TLS только в ваших протоколах, как я уже упоминал в точном примере, который я дал вам выше, для использования в ваших серверных блоках.
Когда вы это сделаете, вы можете проверить, сработало ли это, посетив: https://www.poodlescan.com/
надеюсь, это поможет