Всем доброго дня!
После обновления на 27 версию Firefox стало невозможно соединиться с локальным сервером, с которым ведется обмен данными по защищенному каналу.
Получаю следующее сообщение:
Ошибка при установлении защищённого соединения При соединении с ххххххх произошла ошибка. SSL-узлу не удалось договориться о приемлемом наборе параметров безопасности. (Код ошибки: ssl_error_handshake_failure_alert)
До обновления на 27 версию все работало. В ИЕ, Хроме, Лисе ранее 27 версии все работает.
Что такого поменялось в настройках по-умолчанию, что соединение не устанавливается? Можно ли заставить все работать как раньше?
Пробовал играться с параметрами security.tls.version.min и security.tls.version.max - полезного ничего не дало. Если протоколы совпадают, то получаю сообщение выше, а если не совпадают, то так и пишет, что не совпадают. В остальные настройки security. особо не лез, поскольку не все из них мне понятны.
WBR, Akiko.
Отсутствует
Ну тогда можно только вслепую гадать.
Вот список CipherSuites из FF27, крайне желательно, чтобы сервер умел первые две.
TLS_ECDHE_ECDSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256
TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_ECDSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA
TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA
TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA
TLS_ECDHE_ECDSA_WITH_RC4_128_SHA
TLS_ECDHE_RSA_WITH_RC4_128_SHA
TLS_DHE_RSA_WITH_AES_128_CBC_SHA
TLS_DHE_DSS_WITH_AES_128_CBC_SHA
TLS_DHE_RSA_WITH_CAMELLIA_128_CBC_SHA
TLS_DHE_RSA_WITH_AES_256_CBC_SHA
TLS_DHE_DSS_WITH_AES_256_CBC_SHA
TLS_DHE_RSA_WITH_CAMELLIA_256_CBC_SHA
TLS_DHE_RSA_WITH_3DES_EDE_CBC_SHA
TLS_RSA_WITH_AES_128_CBC_SHA
TLS_RSA_WITH_CAMELLIA_128_CBC_SHA
TLS_RSA_WITH_AES_256_CBC_SHA
TLS_RSA_WITH_CAMELLIA_256_CBC_SHA
TLS_RSA_WITH_3DES_EDE_CBC_SHA
TLS_RSA_WITH_RC4_128_SHA
TLS_RSA_WITH_RC4_128_MD5
Отсутствует
sentaus, лично у меня используется Apache 2.2 по Windows, что он там конкретно использует я не сильно в курсе, да и настраивал я его года три назад, особо не заморачиваясь, фактически все по умолчанию, только сертификаты свои сделал. Никаких изменений при переходе на FF 27 я не заметил, все работает как и работало.
Отсутствует
Вот список CipherSuites из FF27, крайне желательно, чтобы сервер умел первые две.
Где и как это можно посмотреть?
И опять же, что из этого появилось в 27 версии и отсутствовало до 26 включительно?
WBR, Akiko.
Отсутствует
Где и как это можно посмотреть?
Где-нибудь на сервере А если у вас apache или nginx (или что-то ещё, использующее openssl), то можно просто вписать ему вот такие настройки ciphersuites:
И опять же, что из этого появилось в 27 версии и отсутствовало до 26 включительно?
Первых двух не было, остальные вроде были.
Отсутствует
Где-нибудь на сервере
Мда, логично... Пока ничего похожего не нашел.
Стоит Апач, но где у него конфиги и все остальное в QNX 4.25, пока не вижу...
Первых двух не было, остальные вроде были.
Отключить эти первые две где-то можно?
ЗЫ. Нашел, где отключить. Отключил. Не помогло.
Отредактировано Akiko (10-02-2014 14:34:43)
WBR, Akiko.
Отсутствует
Akiko
Ознакомьтесь с https://wiki.mozilla.org/Security/Serve … TLS#Apache
Добавлено 10-02-2014 15:21:27
Akiko
Если не поможет, установите CipherScan и просканируйте сервер. Вывод выложите сюда.
Добавлено 10-02-2014 15:24:48
Стоит Апач, но где у него конфиги и все остальное в QNX 4.25, пока не вижу...
http://www.openqnx.com/phpbbforum/viewt … 256#p12884
Отредактировано banbot (10-02-2014 15:24:48)
Do you feel lucky, punk?
Отсутствует
banbot
Уфф... Мозги уже закипают.
Под QNX 4.25 скрипт сканера не работает корректно, сразу вываливается с ошибкой. Что в нем не так - это выше моих сил.
Про Апач нет ничего похожего, кроме упоминаний его в логах или конфигах.
# And this one will be loaded before SSL is negotiated for each connection.
# Again, you can have as many of these as you want, and they will all be used
# at each connection.
SSLRandomFilePerConnection /www/srv.webmeteo/conf/rand.dat 1024
# Note that all SSL options can apply to virtual hosts.
# Disable SSL. Useful in combination with virtual hosts. Note that SSLEnable is
# now also supported.
SSLEnable
# Set the path for the global cache server executable.
# If this facility gives you trouble, you can disable it by setting
# CACHE_SESSIONS to FALSE in apache_ssl.c
SSLCacheServerPath /www/bin/gcache
# Set the global cache server port number, or path. If it is a path, a Unix
# domain socket is used. If a number, a TCP socket.
#SSLCacheServerPort logs/gcache_port
SSLCacheServerPort 1234
# Directory for the cache server to run in (in case of crashes). Optional.
SSLCacheServerRunDir /tmp
# Set the session cache timeout, in seconds (set to 15 for testing, use a
# higher value in real life)
SSLSessionCacheTimeout 15
# Set the CA certificate verification file (must be PEM encoded).
# (in addition to getenv("SSL_CERT_FILE"), I think).
SSLCACertificateFile /www/srv.webmeteo/conf/httpsd.pem
# Point SSLCertificateFile at a PEM encoded certificate.
# If the certificate is encrypted, then you will be prompted for a pass phrase.
# Note that a kill -1 will prompt again.
# A test certificate can be generated with "make certificate".
SSLCertificateFile /www/srv.webmeteo/conf/httpsd.pem
# Set SSLVerifyClient to:
# 0 if no certicate is required
# 1 if the client may present a valid certificate
# 2 if the client must present a valid certificate
# 3 if the client may present a valid certificate but it is not required to
# have a valid CA
SSLVerifyClient 2
# How deeply to verify before deciding they don't have a valid certificate
SSLVerifyDepth 2
# If you have enabled client cert exports (in buff.h) you need to use
# SSLExportClientCertificates to enable them. Note that the server still has to
# mess about with certs even if this is disabled (and exports are enabled)
# because the cert chain is received before we can know whether it is needed or
# not.
<Location /scripts>
SSLExportClientCertificates
</Location>
SSLExportClientCertificates
# Translate the client X509 into a Basic authorisation. This means that the
# standard Auth/DBMAuth methods can be used for access control. The user name
# is the "one line" version of the client's X509 certificate. Note that no
# password is obtained from the user. Every entry in the user file needs this
# password: xxj31ZMTZzkVA. See the code for further explanation.
SSLFakeBasicAuth
# List the ciphers that the client is permitted to negotiate. See the source
# for a definitive list. For example:
#SSLRequiredCiphers RC4-MD5:RC4-SHA:IDEA-CBC-MD5:DES-CBC3-SHA
# These two can be used per-directory to require or ban ciphers. Note that (at
# least in the current version) Apache-SSL will not attempt to renegotiate if a
# cipher is banned (or not required).
# You should probably at least ban the null encryption ciphers.
#SSLRequireCipher
SSLBanCipher NULL-MD5:NULL-SHA
# A home for miscellaneous rubbish generated by SSL. Much of it is duplicated
# in the error log file. Put this somewhere where it cannot be used for symlink
# attacks on a real server (i.e. somewhere where only root can write).
# Don't use this anymore! Now everything is logged in the error log.
#SSLLogFile /tmp/ssl.log
WBR, Akiko.
Отсутствует
Akiko
# List the ciphers that the client is permitted to negotiate. See the source
# for a definitive list. For example:
#SSLRequiredCiphers RC4-MD5:RC4-SHA:IDEA-CBC-MD5:DES-CBC3-SHA
Если эту строку раскоментировать, что будет?
Если не поможет, сходи на http://www.apache-ssl.org/docs.html#SSLRequiredCiphers и попробуй добавить в эту строку ещё Cipher Suites из этой таблицы. Не заморачивайся с шифрами стойкостью ниже 128.
Если не поможет, попробуй открыть в Firefox страницу about:config, отфильтровать по параметру security.ssl3. и установи щелчком всё что в false - в true.
Ну и я бы поискал обновления для QNX, OpenSSL и Apache, если они есть.
Добавлено 10-02-2014 20:41:55
Ещё вопрос - Chrome с этим сервером соединяется? Если да, то что пишет при щелчке по замку и выборе вкладки "Соединение"?
Добавлено 10-02-2014 20:55:53
Akiko
Еще покажи вывод команды:
Отредактировано banbot (10-02-2014 20:55:53)
Do you feel lucky, punk?
Отсутствует
banbot
Если эту строку раскоментировать, что будет?
Тоже подумал об этом... На тестовом конфиге ничего не изменилось. На рабочей машине менять не стал - надо же будет перезапустить веб-сервер, а тогда клиенты поотвалятся, начнут паниковать.
попробуй открыть в Firefox страницу about:config, отфильтровать по параметру security.ssl3. и установи щелчком всё
Это еще сразу попробовал - не помогает. Просто, появляется другая ошибка и все:
Установка защищённого соединения с этим узлом не удалась: отсутствуют общие алгоритм(ы) шифрования. (Код ошибки: ssl_error_no_cypher_overlap)
я бы поискал обновления для QNX, OpenSSL и Apache, если они есть
Ключевые слова - "если они есть"
На 4.25 вообще проблематично что-то найти. Под 6 версию еще реально. И еще заковыка в том, что все это заточено под определенные задачи, с которыми оно отлично справляется и так. Переделывать ПО вряд ли кто будет, я уже раз общался с разработчиками по похожему поводу, в связи с одним обновлением от Microsoft. Разговор был как в анекдоте: "... - Доктор, когда я делаю вот ТАК, у меня вот тут болит. - А вы не делайте ТАК." Уверен, тут будет так же.
Экспериментировать с обновлениями на рабочем серваке мне никто не даст, да и сам я не буду - слишком критично к перебоям в работе. Если только собрать для тестов такой же сервер...
Chrome с этим сервером соединяется? Если да, то что пишет при щелчке по замку и выборе вкладки "Соединение"?
Да, соединяются все браузеры с поддержкой TLS1.0, в том числе и Firefox до 27 версии. Проблема только в 27 версии Firefox.
А пишет он вот что:
покажи вывод команды
Нету про SSL ничего похожего...
WBR, Akiko.
Отсутствует
Кстати, обнаружил, что из новой версии невозможно подключиться к СервисГид от Мегафона. https://sg.megafon.ru
Видимо по той-же причине...
Отсутствует
Akiko
Пробовал играться с параметрами security.tls.version.min и security.tls.version.max - полезного ничего не дало.
Если просто установить security.tls.version.max в 1, не помогает?
Под QNX 4.25 скрипт сканера не работает корректно, сразу вываливается с ошибкой. Что в нем не так - это выше моих сил.
Его вообще надо запускать не на QNX, а на другой машинке с Linux и с неё сканировать сервер.
P.S. Попробуй ночную сборку Firefox - http://nightly.mozilla.org/
Добавлено 11-02-2014 11:27:37
CatCheshirsky
У себя проверил с 2 машин - работает гид Мегафона.
Добавлено 11-02-2014 11:34:41
Akiko
Ещё попробуй установить security.ssl.enable_false_start в false
Отредактировано banbot (11-02-2014 11:34:41)
Do you feel lucky, punk?
Отсутствует
CatCheshirsky
У себя проверил с 2 машин - работает гид Мегафона.
Всё работает. Проверьте на чистом профиле.
А прозрачных проксей никаких нет?
Отсутствует
Если просто установить security.tls.version.max в 1, не помогает?
Нет, все от 0 до 3 пробовал. Другие настройки security.ssl... тоже крутил по всякому. Всегда один из двух вариантов: либо отсутствуют общие алгоритмы шифрования - когда запрещаю лишнего, либо не удалось договориться о параметрах безопасности, если протоколы общие есть.
С security.ssl.enable_false_start в false аналогичная картина.
Его вообще надо запускать не на QNX, а на другой машинке с Linux и с неё сканировать сервер.
А, понятно... Ну, под руками все равно сейчас компа с Линуксом нет, в другой раз как-нибудь...
Попробуй ночную сборку Firefox
Попробовал. То же самое...
Добавлено 11-02-2014 15:14:19
из новой версии невозможно подключиться к СервисГид от Мегафона.
Кстати... Ради интереса проверил только что.
Хромом зашел.
Ночной сборкой Firefox: Ошибка. Сервис недоступен. Обратитесь, пожалуйста, в службу поддержки.
Отредактировано Akiko (11-02-2014 15:14:19)
WBR, Akiko.
Отсутствует
Его вообще надо запускать не на QNX, а на другой машинке с Linux и с неё сканировать сервер.
Приволок на работу Debian 6.0 Live, решил сервак потестить...
Чего-то не хочет он ни с кем коннектиться. Тупо строка из примера не работает
root@localhost:/home/user/Рабочий стол/cipherscan-master# openssl ciphers DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA:AES256-SHA:EDH-RSA-DES-CBC3-SHA:EDH-DSS-DES-CBC3-SHA:DES-CBC3-SHA:DES-CBC3-MD5:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA:AES128-SHA:RC2-CBC-MD5:RC4-SHA:RC4-MD5:RC4-MD5:EDH-RSA-DES-CBC-SHA:EDH-DSS-DES-CBC-SHA:DES-CBC-SHA:DES-CBC-MD5:EXP-EDH-RSA-DES-CBC-SHA:EXP-EDH-DSS-DES-CBC-SHA:EXP-DES-CBC-SHA:EXP-RC2-CBC-MD5:EXP-RC2-CBC-MD5:EXP-RC4-MD5:EXP-RC4-MD5 root@localhost:/home/user/Рабочий стол/cipherscan-master# ./cipherscan -v www.google.com:443 Loading 0 ciphersuites from .Connecting to 'www.google.com:443' with ciphersuite 'ALL:COMPLEMENTOFALL' handshake failed, no ciphersuite was returned
WBR, Akiko.
Отсутствует
Akiko
У меня тоже не работало. Открой файл cipherscan и замени
на
Добавлено 12-02-2014 12:21:31
P.S. В общем, тебе наверно лучше создать багрепорт в https://bugzilla.mozilla.org/enter_bug.cgi или написать в https://groups.google.com/forum/#!forum … v.security.
Если шифрование работает в Chrome, но не работает в Firefox, то это баг в Firefox.
Отредактировано banbot (12-02-2014 12:21:31)
Do you feel lucky, punk?
Отсутствует
banbot
Ага, понятно... путь полный к openssl указать надо.
Только все равно не запускается, гад. Ни так, как у тебя написано, ни со своими путями. Как только не пробовал...
Пишу в файле: OPENSSLBIN="/home/user/bin/openssl"
В консоли проверяю... файл видится, работает отдельно, а из скрипта не вызывается...
root@localhost:/home/user/bin# ls /home/user/bin cipherscan openssl OpenSSL-LICENSE README.md top1m root@localhost:/home/user/bin# openssl ciphers DHE-RSA-AES256-SHA:DHE-DSS-AES256-SHA:AES256-SHA:EDH-RSA-DES-CBC3-SHA:EDH-DSS-DES-CBC3-SHA:DES-CBC3-SHA:DES-CBC3-MD5:DHE-RSA-AES128-SHA:DHE-DSS-AES128-SHA:AES128-SHA:RC2-CBC-MD5:RC4-SHA:RC4-MD5:RC4-MD5:EDH-RSA-DES-CBC-SHA:EDH-DSS-DES-CBC-SHA:DES-CBC-SHA:DES-CBC-MD5:EXP-EDH-RSA-DES-CBC-SHA:EXP-EDH-DSS-DES-CBC-SHA:EXP-DES-CBC-SHA:EXP-RC2-CBC-MD5:EXP-RC2-CBC-MD5:EXP-RC4-MD5:EXP-RC4-MD5 root@localhost:/home/user/bin# openssl OpenSSL> ^C root@localhost:/home/user/bin# ./cipherscan -v www.google.com:443 Loading 0 ciphersuites from .Connecting to 'www.google.com:443' with ciphersuite 'ALL:COMPLEMENTOFALL' handshake failed, no ciphersuite was returned root@localhost:/home/user/bin#
Ну, и кстати, проверил Мегафоновский сервис-гид под Линуксом. Тоже не работает.
Багрепорт если сформулирую, то попробую отписать
Мне сдается, что просто слабую криптографию они запретили напрочь, без возможности включения. Майкрософт тоже ключи меньше 1024 бит заблокировал, но там хоть шаманством в реестре проблема решается, а как тут - хз пока.
WBR, Akiko.
Отсутствует
Akiko
Пишу в файле: OPENSSLBIN="/home/user/bin/openssl"
Не надо брать openssl из cipherscan, возьми его из системы.
Мне сдается, что просто слабую криптографию они запретили напрочь, без возможности включения. Майкрософт тоже ключи меньше 1024 бит заблокировал, но там хоть шаманством в реестре проблема решается, а как тут - хз пока.
А можешь выложить сертификат этого веб-сервера?
Do you feel lucky, punk?
Отсутствует
Проблема похожа на описанную в первом посте топикстартера: после обновления на 27 версию Firefox стало невозможно соединиться с локальным сервером, с которым ведется обмен данными по защищенному каналу.
Получаю следующее сообщение:
Ошибка при установлении защищённого соединения
При соединении с xxxxxxxxxxx произошла ошибка. Установка защищённого соединения с этим узлом не удалась: отсутствуют общие алгоритм(ы) шифрования. (Код ошибки: ssl_error_no_cypher_overlap)
До обновления на 27 версию все работало, то есть на версиях 26 и ниже входит на сервер без каких-либо проблем.
На сервере используется единственный ключ с шифрованием на основе эллиптических кривых TLS_ECDHE_ECDSA_WITH_AES_256_CBC_SHA , что должен поддерживать FF27 как написал выше sentaus
Отредактировано Asgard (13-02-2014 18:40:43)
Отсутствует
Asgard
А если в Firefox открыть about:config, отфильтровать по security.ssl3, установить все параметры в false кроме security.ssl3.ecdhe_ecdsa_aes_256_sha и перезапустить браузер?
Do you feel lucky, punk?
Отсутствует
Asgard
А если в Firefox открыть about:config, отфильтровать по security.ssl3, установить все параметры в false кроме security.ssl3.ecdhe_ecdsa_aes_256_sha и перезапустить браузер?
Не помогло
Отсутствует
CatCheshirskyУ себя проверил с 2 машин - работает гид Мегафона.Всё работает. Проверьте на чистом профиле.А прозрачных проксей никаких нет?
В первую очередь пробовал на чистом профиле - не работает. А вот прокси, не знаю. Работаю через 3G модем...
Надо будет проверить через другое соединение.
Хотя странно, другие браузеры и предыдущая версия FireFox работают...
Отсутствует