проблема с командой wget SSL3_CHECK_CERT_AND_ALGORITHM: ключ dh слишком мал - PullRequest
0 голосов
/ 01 октября 2018

Я хочу проверить URL-адрес SSL, но когда я использую команду:

/usr/sfw/bin/wget --no-check-certificate --secure-protocol=SSLv3 https://url

Я получаю эту ошибку:

--2018-10-01 12:11:19--  https://url
Connecting to #:443... connected.
OpenSSL: error:14082174:SSL routines:ssl3_check_cert_and_algorithm:dh key too small
Unable to establish SSL connection.

Можно ли пропустить этот элемент управления?Я использую: GNU Wget 1.18, построенный на Solaris2.10.спасибо

Ответы [ 2 ]

0 голосов
/ 05 августа 2019

Вы можете перейти на wget 1.20.x и использовать следующую команду:

wget --ciphers SECURE128 --no-check-certificate https://url

Опция --ciphers переопределит протокол --secure и позволит вам установить SSL-рукопожатие с DH-слабые серверы.Значения --ciphers зависят от версии GnuTLS, поэтому вам может потребоваться проверить это.Однако я рекомендую вам обновить криптографические библиотеки.

0 голосов
/ 02 октября 2018

Можно ли пропустить этот элемент управления?

Нет, это не так.(Ну, вы можете, но это не разумно, и, скорее всего, это создаст небезопасные соединения. Вам нужно будет загрузить OpenSSL, внести изменения в исходный код, чтобы удалить соответствующие проверки безопасности, и перекомпилировать библиотеки SSL. Затем создайте правильнуюокружение для использования этих двоичных файлов. Это не то, что вы хотите сделать. Кто-то, кто должен задать этот вопрос, не должен изменять OpenSSL и удалять проверки безопасности ...)

Однако вы можете попытаться форсировать wget чтобы использовать другой набор шифров для соединения SSL, и в зависимости от сервера вы можете получить набор шифров, у которого нет проблем с ключом DH.

За руководство по GNU wget :

'- secure-protocol = protocol'

Выберите протокол безопасности, который будет использоваться.Допустимые значения: «auto», «SSLv2», «SSLv3», «TLSv1», «TLSv1_1», «TLSv1_2» и «PFS».Если используется «auto», библиотеке SSL предоставляется свобода выбора соответствующего протокола автоматически, что достигается отправкой приветствия TLSv1.Это значение по умолчанию.

Указание «SSLv2», «SSLv3», «TLSv1», «TLSv1_1» или «TLSv1_2» заставляет использовать соответствующий протокол.Это полезно при общении со старыми и ошибочными реализациями SSL-серверов, из-за которых базовой библиотеке SSL трудно выбрать правильную версию протокола.К счастью, такие серверы встречаются довольно редко.

Указание 'PFS' обеспечивает использование так называемых наборов шифров Perfect Forward Security.Вкратце, PFS повышает безопасность, создавая одноразовый ключ для каждого соединения SSL.Это немного больше влияет на процессор и клиент и сервер.Мы используем надежные шифры (например, без MD4) и протокол TLS.

Я бы рекомендовал сначала опцию PFS, затем TLSv1_2, затем TLSv1_1 и т. Д.вперед, делая самые безопасные, самые последние варианты в первую очередь.Один из них может сработать.

Если ни один из этих способов не работает, получите копию ssl_cipher_suite_enum.pl, запустите ее на сервере, передайте результаты администратору сервера и скажите ему:обновить свою устаревшую и небезопасную систему.

...