У нас есть общедоступный сервер разработки, которому для определенной функции требуется SSL.
Но ВСЕ, что использует SSL в любой форме, возвращает
curl: (60) Peer's certificate issuer has been marked as not trusted by the user.
Это не проблема «Ну, просто используйте ssl-verify = false в yum или --insecure для запросов curl.
Я понимаю, что могу сделать это с обоими, чтобы отвечать на мои звонки. Но в конечном итоге - я ДОЛЖЕН иметь возможность использовать SSL, потому что разработка, для которой мы используем эти серверы, требует этого.
Похоже, что CA устарел. Я пробовал следующее https://access.redhat.com/solutions/1549003
Я сам пробовал импортировать файл cacert.pem (хотя я признаю, что мне здесь не хватает знаний, поэтому, возможно, я сделал это неправильно)
Я проверил дату и время на сервере, чтобы убедиться, что проблема не в этом.
Я не могу заставить «сетевого администратора» (термин используется вольно, поскольку он первым признает, что абсолютно ничего не знает о Linux - в чистом виде Microsoft) даже переустанавливать Centos на эту машину, поэтому мне нужно найти решение этого.
Любая помощь будет оценена. Ниже приведены некоторые примеры того, что мы получаем, пытаясь выполнить такие действия, как yum, curl и запуск certbot --apache.
Вкуснятина
[root@localhost work]# yum reinstall mc
Loaded plugins: fastestmirror
Loading mirror speeds from cached hostfile
Could not get metalink https://mirrors.fedoraproject.org/metalink?repo=epel-
7&arch=x86_64 error was
14: curl#60 - "Peer's certificate issuer has been marked as not trusted by
the user."
* base: repos.dfw.quadranet.com
* epel: mirror.compevo.com
* extras: repos-tx.psychz.net
* updates: mirror.us.oneandone.net
* webtatic: repo.webtatic.com
https://us-east.repo.webtatic.com/yum/el7/x86_64/repodata/repomd.xml: [Errno
14] curl#60 - "Peer's certificate issuer has been marked as not trusted by
the user."
Trying other mirror.
It was impossible to connect to the CentOS servers.
This could mean a connectivity issue in your environment, such as the
requirement to configure a proxy,
or a transparent proxy that tampers with TLS security, or an incorrect
system clock.
You can try to solve this issue by using the instructions on
https://wiki.centos.org/yum-errors
If above article doesn't help to resolve this issue please use
https://bugs.centos.org/.
https://uk.repo.webtatic.com/yum/el7/x86_64/repodata/repomd.xml: [Errno 14]
curl#60 - "Peer's certificate issuer has been marked as not trusted by the
user."
Trying other mirror.
https://sp.repo.webtatic.com/yum/el7/x86_64/repodata/repomd.xml: [Errno 14]
curl#60 - "Peer's certificate issuer has been marked as not trusted by the
user."
Trying other mirror.
https://repo.webtatic.com/yum/el7/x86_64/repodata/repomd.xml: [Errno 14]
curl#60 - "Peer's certificate issuer has been marked as not trusted by the
user."
Trying other mirror.
CURL
[root@localhost work]# curl https://www.google.com
curl: (60) Peer's certificate issuer has been marked as not trusted by the
user.
More details here: http://curl.haxx.se/docs/sslcerts.html
curl performs SSL certificate verification by default, using a "bundle"
of Certificate Authority (CA) public keys (CA certs). If the default
bundle file isn't adequate, you can specify an alternate file
using the --cacert option.
If this HTTPS server uses a certificate signed by a CA represented in
the bundle, the certificate verification probably failed due to a
problem with the certificate (it might be expired, or the name might
not match the domain name in the URL).
If you'd like to turn off curl's verification of the certificate, use
the -k (or --insecure) option.
CERTBOT (ДЛЯ ЗАПРОСА LETSENCRYPT SSL CERT)
[root@localhost work]# sudo certbot --apache
Saving debug log to /var/log/letsencrypt/letsencrypt.log
Plugins selected: Authenticator apache, Installer apache
Enter email address (used for urgent renewal and security notices) (Enter
'c' to cancel): email@host.com
Starting new HTTPS connection (1): acme-v02.api.letsencrypt.org
An unexpected error occurred:
SSLError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed
(_ssl.c:579)
Please see the logfiles in /var/log/letsencrypt for more details.
мой здесь в CentOS7, запустите pyspider
показать ошибку:
Exception HTTP 599 Peer's certificate issuer has been marked as not trusted by the user
и используя следующие шаги, чтобы исправить это:
изменить недопустимый файл libcurl .so:
/usr/lib64/libcurl.so.4 -> libcurl.so.4.3.0_openssl
в действующий файл libcurl .so:
/usr/lib64/libcurl.so.4 -> libcurl.so.4.3.0
и переустановите pycurl:
pip3 uninstall pycurl
export PYCURL_SSL_LIBRARY=nss
export LDFLAGS=-L/usr/local/opt/openssl/lib;export CPPFLAGS=-I/usr/local/opt/openssl/include;pip install pycurl --compile --no-cache-dir
подробное описание см. еще один пост SO
Хотел ответить и закрыть это на будущее.
Оказывается, у нас был прокси-сервер, который что-то возился. На моей работе сложилась довольно интересная ситуация (3 компании, 2 из которых принадлежат одному владельцу моей компании отдельно от моей компании).
Оказывается, системный администратор компании B много лет назад включил прокси-сервер в петлю x и совершенно о нем забыл. Введите системного администратора моей компании, который берет на себя всю роль системного администратора для всех компаний. О прокси ему никто не говорит. Он работал годами без всякого ведома.