SourceTree и Stash: невозможно получить сертификат местного эмитента

У нас установлен Atlassian Stash на сервере Windows 2008R2, и по большей части все работает нормально. У нас есть сертификат SSL, выпущенный нашим локальным центром сертификации, и настроена запись DNS, поэтому мы можем перейти к https://stash/, и он работает довольно хорошо, за исключением Firefox, где выдается предупреждение (связанное с этим?).

При использовании Sourcetree Atlassian мы можем перемещаться и выбирать репозиторий, но когда мы пытаемся клонировать его, мы получаем следующую ошибку:

фатальный: невозможно получить доступ https://user@url/scm/etc/etc.git: проблема с сертификатом SSL: невозможно получить сертификат местного эмитента

Я получаю ту же ошибку, если попробую, если и из git bash. Основываясь на этой ошибке, я попробовал следуя инструкциям по добавлению SSL-сертификата в Git как также можно найти на их веб-сайте, включая то, что есть в комментариях, но безрезультатно. Я экспортировал сертификат через Firefox и через оснастку сертификата MMC, получил те же результаты и поместил его в отдельный файл в сочетании с файлом curl, и независимо от того, что продолжает получать эту ошибку. Мне еще предстоит попытаться заставить его работать с ключами SSH, так как я надеялся упростить эту задачу для своей команды.

Я также пробовал использовать ssh myserver и принял соединение, я ввел свой пароль и перезапустился; все та же ошибка.

Я также не хочу просто игнорировать проверку сертификата, поскольку это кажется немного бессмысленным.

Как я могу заставить это работать с нашим сертификатом, выданным CA?


person squid808    schedule 21.07.2014    source источник


Ответы (3)


Я просто отключил проверку сертификатов SSL (это нормально для внутренних репозиториев):

Tools > Options > Git > Disable SSL certificate validation (ticked)
person Bohemian♦    schedule 27.08.2015
comment
Это сводит на нет цель SSL и подвергает вас атаке человека в середине. - person Stoyan Dimov; 31.03.2017
comment
@Stoyan, как я уже сказал, для внутреннего трафика это нормально. Если у вас есть внутренний человек в средней атаке, у вас гораздо более серьезные проблемы, чем кто-то, вынюхивающий ваш код, совершает. Если вы вносите свой вклад удаленно, тогда есть риск, который может не иметь большого значения, например, если это все равно открытый исходный код - что самое худшее, что может случиться? Они помещают в ваш коммит какой-то мусор, чей более поздний запрос на вытягивание отклоняется. Мех. - person Bohemian♦; 28.11.2019

После работы с партнером, который отсутствовал до сегодняшнего дня, я обнаружил, что я использовал ТОЛЬКО сертификат для самого сервера. Мое [ошибочное] понимание всех статей заключалось в том, что, как и при обработке самозаверяющих сертификатов, вы просто указываете Git доверять этому сертификату. Для нас это не так.

Вместо этого я должен был экспортировать сертификат корневого центра сертификации из нашего домена и сказать Git, что ему следует доверять. Клянусь, я пробовал это в начале прошлой недели, когда все это только началось, но, к моему стыду, этого не произошло.

Пусть это будет предупреждением для всех, кто окажется в моем положении!

person squid808    schedule 22.07.2014
comment
может кто-нибудь указать мне ссылку, показывающую, как это сделать? Я безуспешно пытался следовать приведенным здесь инструкциям: blogs.msdn.microsoft.com/phkelley/2014/01/20/ - person jessieloo; 27.12.2017

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

person Liu Jisper    schedule 25.09.2018