Wget невозможно проверить сертификат

Если необходимо запустить удалённо скрипт или скачать страницу сайта и wget выдаёт ошибку вида:

The certificate of «site.ru» is not trusted.

Есть пару вариантов решения проблемы:

для Debian: sudo apt-get install wget

2. Если п 1 не помог(что скорее всего) то добавляем параметры —no-check-certificate -O

пример команды: wget —no-check-certificate -O https://site.ru >/dev/null 2>&1

PS. п2 не решает причину возникновения ошибки, но помогает её обойти. Для детального анализа используйте логи wget. при запуске ипользуйте параметры -v —debug

Подскажите, как не использовать —no-check-certificate в Wget и чтобы не было ни "ERROR" ни "WARNING"? Дело происходит в ОС Windows.

ERROR

WARNING

3 ответа 3

Вам надо установить сертификат издателя в качестве доверенного сертификата издателя. OpenSSL (библиотека которого используется в wget ) доверяет сертификатам, установленным в /etc/ssl/certs . Сам сертификат в формате PEM надо загрузить в файл с расширением .crt и положить в /etc/ssl/certs . Этого должно быть достаточно, но если нет, то путь к директории с сертификатами можно указать для wget опцией

Вариант с отключением проверки сертификатов: создаете файл с именем ".wgetrc", прописываете в нем строку check_certificate = off и кладете этот файл в каталог с wget.exe. Проверено на wget 1.10.2

Добавить комментарий не получилось, наверно у меня был временный аккаунт.

WINDOWSу не нравится создание, переименование. файла без имени. Пробовал так:

Думал set check_certificate=off заменит —no-check-certificate — не заменяет.

Обновление

Egor Skriptunoff — Не получилось добавить комментарием, мой вопрос уже похоже не мой.

а смысл? просто запишите —no-check-certificate в файл параметров

  • —no-check-certificate . Это — почти всегда плохая идея, не проверять сертификаты при передаче конфиденциальных или важных данных; ОПЦИИ HTTPS(SSL/TLS)
  • Да, и если возможно избавиться от WARNING — почему бы не избавиться.
Читайте также:  Destiny 2 как вызвать спэрроу

Обновление 2

Прошу прощенья, Outtruder комментарий добавить не удалось, говорит, репутации маловато.

У меня есть подозрение, что установленный у вас wget вообще имеет проблемы с проверкой сертификатов (слишком старая версия библиотеки openssl? — не знаю. )

stay tune stay secure

Всякий раз, когда я использую команду wget для загрузки материала из Интернета, он говорит:

ERROR: cannot verify download.freebsd.org’s certificate, issued by ‘CN=Let’s Encrypt Authority X3,O=Let’s Encrypt,C=US’:
Unable to locally verify the issuer’s authority.

Как мне исправить эту проблему на FreeBSD 12?

Настройки wget по умолчанию — проверка сертификата сервера на соответствие признанным центрам сертификации.

Эта ошибка означает, что wget не может найти корневые сертификаты локально.

Вы должны установить корневые сертификаты на вашем сервере FreeBSD.

Без корневых сертификатов все команды и программы, такие как Firefox, не будут работать.

FreeBSD поставляется с пакетом ca_root_nss. Он включает в себя пакет корневых сертификатов от проекта Mozilla.

Все, что вам нужно сделать, это установить пакет ca_root_nss, чтобы избавиться от этой проблемы.

Как найти информацию о пакете ca_root_nss

Запустите следующую команду pkg вместе с командой grep для поиска:

# pkg search ca | grep root

R-cran-urca-1.3.0_2 Unit root and cointegration tests for time series data
ca_root_nss-3.41 Root certificate bundle from the Mozilla Project
p5-CACertOrg-CA-20110724.005 CACert.org CA root certificate in PEM format

Так что, если вы запустите wget, вы можете получить ошибку, которая выглядит следующим образом:

ERROR: cannot verify download.freebsd.org’s certificate, issued by ‘CN=Let’s Encrypt Authority X3,O=Let’s Encrypt,C=US’: (click to enlarge)

FreeBSD wget не может проверить центр сертификации

Теперь мы знаем название пакета. Давайте установим это:

# pkg install ca_root_nss

Пакет корневых сертификатов CA, установлен в каталогах /etc/ssl и /usr/local/openssl / во FreeBSD.

Читайте также:  Ricoh вход в сервисное меню

Проверьте работу

Запустите команду wget еще раз, и она должна работать без проблем:

—2018-12-17 15:32:38— https://download.freebsd.org/ftp/releases/amd64/12.0-RELEASE/base.txz
Resolving download.freebsd.org (download.freebsd.org)… 149.20.1.200, 2001:4f8:1:11::15:0
Connecting to download.freebsd.org (download.freebsd.org)|149.20.1.200|:443… connected.
HTTP request sent, awaiting response… 200 OK
Length: 154325028 (147M) [application/octet-stream]
Saving to: ‘base.txz’

2018-12-17 15:32:42 (38.6 MB/s) — ‘base.txz’ saved [154325028/154325028]

Заметка о –no-check-certificate

Если вы не можете установить пакет ca_root_nss, передайте опцию —no-check-certificate команде wget.

Это означает, что wget не будет сравнивать сертификат сервера с доступными центрами сертификации.

Также wget не требует, чтобы имя хоста URL совпадало с общим именем, представленным сертификатом:

Rate this post

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *