У нас есть новый сервер TFS 2017, созданный на месте. Мой системный администратор настроил https и создал самозаверяющий сертификат. Все отлично работает с встроенными инструментами git от Visual Studio. Когда я пытаюсь сделать что-нибудь с CLI, я получаю следующее сообщение об ошибке: SSL certificate problem: unable to get local issuer certificate
Git перестала работать через SSL на Windows
То, что я пытался:
установлен сертификат в хранилище доверенных корневых центров сертификации на клиентской машине (это также установлен на сервере). Чтобы установить его, я просто дважды щелкнул файл .pfx, предоставленный мне, ввел пароль и выбрал хранилище Trusted Root.
После некоторого поиска неисправностей, я экспортировал локальный сертификат как Base-64 кодировке X.509 файл (.CER), и приложил его к
ca-bundle.crt
Дважды проверил мой мерзавец конфигурации для обеспечения http.sslcainfo указывается на правильный файл ca-bundle.crt.
Используется openssl для подключения к моему серверу. Это дает мне два сообщения об ошибках:
verify error:num=20:unable to get local issuer certificate verify return:1 depth=0 OU = Created by Team Foundation Server, CN = my.company.com verify error:num=21:unable to verify the first certificate verify return:1 Certificate chain 0 s:/OU=Created by Team Foundation Server/CN=my.company.com i:/OU=Created by Team Foundation Server/CN=my.company.com
Пробовал использовать CLI с других компьютеров для подключения по https с теми же результатами.
Update
Еще не повезло получать эту работу, но было интересно, если тот факт, что само-подписанный сертификат подписывается с помощью закрытого ключа будет иметь ничего общего с нашими вопросами.
Возможный дубликат [Невозможно решить «не удалось получить локальный сертификат выдавшей» с помощью git на Windows с самозаверяющим сертификатом] (http://stackoverflow.com/questions/23885449/unable-to-resolve-unable-to-get-local-issuer-certificate-using-git-on-windows) –
Был наконец, смог убедить моего системного администратора попробовать предложение в связанной проблеме (использовать makecert для создания сертификатов), и это решило мою проблему. –