Заметки об Apache, часть 3: Отключаем слабое шифрование и SSLv2

Date August 7th, 2011 Author Vitaly Agapov

Но мы-то не индейцы. Цивилизованному человеку нет нужды переносить страдания, а что до совершения мужественных поступков, то сохрани Форд от подобных помыслов. Если люди начнут действовать на свой риск, весь общественный порядок полетит в тартарары.

– Олдос Хаксли «О дивный новый мир»

Согласно требованиям PCI-DSS, сайты, работающие с конфиденциальной информацией пользователей, не должны поддерживать слабые алгоритмы шифрования, а также протокол SSL версии 2. Наборы тестов на соответствие требованиям PCI-DSS обычно выявляют эти моменты. Впрочем, для соблюдения этих требований многого не требуется. Ниже посмотрим, как проверить настройки ssl своего сервера Apache и какие изменения надо внести в случае необходимости.

Поддержка SSLv2

Для проверки поддержки SSLv2 можно воспользоваться утилитой openssl:

openssl s_client -ssl2 -connect SERVERNAME:443

Если после выполнения команды сервер позволит к нему подключиться и выдаст свой сертификат, то поддержка SSLv2 присутствует и её надо отключить.

Для этого в конфиг Apache (ssl.conf или httpd.conf) надо добавить:

SSLProtocol -ALL +SSLv3 +TLSv1

или

SSLProtocol all -SSLv2

После рестарта запрос openssl должен будет выдавать ошибку:

6284:error:140A90C4:SSL routines:SSL_CTX_new:null ssl method passed:ssl_lib.c:1453:

Это хорошо.

Поддержка слабых алгоритмов шифрования

Проверка идёт аналогично с помощью openssl:

openssl s_client -connect SERVERNAME:443 -cipher LOW:EXP

Вместо LOW:EXP можно вставить для проверки любой алгоритм (eNULL, RC4, RSA etc.). Главное, что для слабых шифров должна выдаваться ошибка:

CONNECTED(00000003)
6302:error:14077410:SSL routines:SSL23_GET_SERVER_HELLO:sslv3 alert handshake failure:s23_clnt.c:602:

Если она не выдаётся, то опять же в конфиге Apache надо прописать директиву:

SSLCipherSuite ALL:!aNULL:!ADH:!eNULL:!LOW:!EXP:RC4+RSA:+HIGH:+MEDIUM

или

SSLCipherSuite HIGH:MEDIUM:!ADH

Tags: ,
Category: Apache | No comments »

Comments

Leave a comment

 Comment Form