server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none

Ошибка сертификата.

Система Debian 8.

Отголоски закончившегося 30го сентября 2021го корневого сертификата DST Root CA X3 ( с пояснениями наверное лучше всего тут https://habr.com/ru/post/580092/). Фактически вроде все решения проблемы появились сразу и работали, но вот для TeamCity сразу другое решение выходит в поисковиках, хотя помогает стандартное (популярное). Итак, ошибка вида:

stderr: fatal: unable to access 'https://domainname.com/company/project.git/': server certificate verification failed. CAfile: /etc/ssl/certs/ca-certificates.crt CRLfile: none

Проблема гуглится аж с 2014го года, т.е. встречается давно и основное решение такое. Получить передаваемый сертификат:

openssl s_client -showcerts -servername domainname.com -connect domainname.com:443 </dev/null 2>/dev/null | sed -n -e '/BEGIN\ CERTIFICATE/,/END\ CERTIFICATE/ p' > domainname.com

И добавить его в список, с которым сверяется программа:

cat domainname.com | tee -a /etc/ssl/certs/ca-certificates.crt

Ещё вот такой вариант:

git config --global http.sslCAinfo /etc/ssl/certs/ca-certificates.crt
git config --global http."https://domainname.com".sslCAInfo domainname.com

И по итогу выполнить:

update-ca-certificates

Хотя ещё перед этим в некоторых случаях делают так:

apt-get install apt-transport-https ca-certificates -y

Но на деле оказалось, что хватает в данном случае вот таких действий, который к данной ошибке пока нигде не фигурируют.

В файле /etc/ca-certificates.conf нужно найти строчку mozilla/DST_Root_CA_X3.crt и поставить перед ней "!". По итогу выполнить update-ca-certificates.
*это из статье на хабре, что по ссылке выше.

И всё заработало.

Ну и конечно фигурировал вариант отказаться от использования проверки сертификата. Варианты команд:

export GIT_SSL_NO_VERIFY=1
git config --global http.sslverify false
export GIT_SSL_NO_VERIFY=true

Но это по хорошему использовать как временный костыль, если очень надо и ничего не помогает. Эти варианты я не проверял.


Использованный материал.

https://fabianlee.org/2019/01/28/git-client-error-server-certificate-verification-failed/

https://habr.com/ru/post/580092/

 

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