вторник, 31 января 2012 г.

Уходим с SSL на TLS

Уходим с SSL на TLS

OpenSSL
Дока про работу с SSL - можно проверять в том числе возможности сервера.
В частности

# openssl ciphers -v |grep -i TLS
#

И это дебиан 6.0.3! Впрочем, он отличается тормознутостью, сравнимой с даунизмом. Зато (типа) безопасный!
Вообще, в openssl с поддержкой TLS всё печально. Так что можно сразу переходить на gnutls.

Для этого придется править конфиги всех доменов с SSL. Универсальный метод - описать оба варианта сразу, например
<ifmodule mod_ssl.c>
        SSLEngine on
        SSLCertificateFile      /var/www/site.ru/ssl/certs/site.ru.pem
        SSLCertificateKeyFile   /var/www/site.ru/ssl/ppk/site.ru.key
        SSLCertificateChainFile /var/www/site.ru/ssl/ca/comodo-ca.crt
    </IfModule>

    <ifmodule mod_gnutls.c>
        GnuTLSEnable on
        GnuTLSCertificateFile   /var/www/site.ru/ssl/certs/site.ru.pem
        GnuTLSKeyFile           /var/www/site.ru/ssl/ppk/site.ru.key
        GnuTLSClientCAFile      /var/www/site.ru/ssl/ca/comodo-ca.crt
        GnuTLSPriorities        NORMAL

    </IfModule>

Замечания: без GnuTLSPriorities не запустится.
SSLCertificateChainFile будет называться GnuTLSClientCAFile, также можно попробовать добавить chain certificate в конец основного, или обновить системный ca-bundle.crt (отсюда). Надо проверять!
Тут есть нюанс с nginx:
"if you have a chain of certificates — by having intermediate certificates between the server certificate and the CA root certificate — they're not specified separately like you would do for Apache. Instead you'll need to concatenate all the certificates, starting with the server certificate, and going deeper in the chain running through all the intermediate certificates. This can be done with "cat chain.crt >> mysite.com.crt" on the command line."
http://wiki.nginx.org/HttpSslModule

То есть (наш домен) (корневой сертификат) >> итоговый файл

немного линков
SSL-enabled Name-based Apache Virtual Hosts with mod_gnutls
Apache HTTP Server: Обслуживание нескольких HTTPS-хостов на одном IP-адресе
Apache2/SSL and Name Based Virtual Hosts

1 комментарий: