====== mod_ssl ======
===== HowTo - Как сделать xyz? =====
==== Как отключить сжатие данных? ====
Зачем нужно отключать - [[https://community.qualys.com/blogs/securitylabs/2012/09/14/crime-information-leakage-attack-against-ssltls|CRIME]], [[http://web.nvd.nist.gov/view/vuln/detail?vulnId=CVE-2012-4929|CVE-2012-4929]]
Чтобы отключить добавляем в конфигурацию Apache директиву ''SSLCompression'' (http://httpd.apache.org/docs/2.2/mod/mod_ssl.html#sslcompression)
SSLCompression off
Но если у вас старенький RHEL, CentOS или Scientific, то вероятно вы получите ошибку при рестарте Apache
Invalid command 'SSLCompression', perhaps misspelled or defined by a module not included in the server configuration
**Нужна версия Apache минимум 2.2.24**.
Поэтому если нет возможности обновить Apache, то добавляем в файл ''/etc/sysconfig/httpd''
export OPENSSL_NO_DEFAULT_ZLIB=1
Перезапускаем Apache и проверяем через [[https://github.com/iSECPartners/sslyze/downloads|python скрипт]] (зеркало - {{ :linux:apache:sslyze-0.5_src.zip |sslyze-0.5_src.zip}})
# ./sslyze.py –compression webserver1 | grep "Compression Support:"
Compression Support: Enabled (zlib compression)
# ./sslyze.py –compression webserver1 | grep "Compression Support:"
Compression Support: Disabled
Также занятный факт - ''SSLCompression'' работает только внутри ''httpd.conf'' и не работает на уровне .
Во всяком случае в CentOS 6 ошибка такая:
This version of openssl does not support configuring compression within sections
==== Как убрать пароль (passphrase) для сертификата ====
https://wiki.apache.org/httpd/RemoveSSLCertPassPhrase
openssl rsa -in originalkeywithpass.key -out /path/to/newkeywithnopass.key
А если нужно оставить пароль, но не хочется его набирать каждый раз?
* https://unix.stackexchange.com/questions/15506/run-ubuntu-10-04-lts-with-apache2-ssl-with-passphrase
* https://serverfault.com/questions/160768/stop-apache-from-asking-for-ssl-password-each-restart
* https://serverfault.com/questions/71043/ssl-password-on-apache2-restart
В конфиге apache указываем
SSLPassPhraseDialog exec:/etc/apache2/conf.d/passphrase.sh
И создаём файл ''passphrase.sh'' с паролем
#!/bin/bash
echo "your passphrase here"
===== Ошибки =====
==== Ошибка Invalid command SSLSessionTickets ====
Директива ''SSLSessionTickets'' появилась в версии Apache 2.4.12
Видимо настало время подумать о апгрейде.