NuGet на Linux: ошибка получения потока ответов


Я пытаюсь запустить NuGet на Linux (Ubuntu 12). У меня есть моно 3.0.6 (скомпилированный из источника).

$ mono --runtime=v4.0.30319 .nuget/NuGet.exe update -self
Checking for updates from https://nuget.org/api/v2/.
Error getting response stream (Write: The authentication or decryption has failed.): SendFailure

ошибка связана с некоторым сертификатом (the nuget.org один скорее всего) не доверяют, я так понимаю. Это блоге есть более подробная информация.

поэтому я побежал:

$ mozroots --import --sync
$ certmgr -ssl https://go.microsoft.com
$ certmgr -ssl https://nugetgallery.blob.core.windows.net
$ certmgr -ssl https://nuget.org

... но безрезультатно.

версия NuGet-2.3.0.0 (хотя я начал с некоторой более старой версии, которая также не работала).

Как я могу исправить эту ошибку?

1 52

1 ответ:

я смог получить эту работу, импортировав сертификаты в машинное хранилище, а не в хранилище пользователей, которое по умолчанию:

$ sudo mozroots --import --machine --sync
$ sudo certmgr -ssl -m https://go.microsoft.com
$ sudo certmgr -ssl -m https://nugetgallery.blob.core.windows.net
$ sudo certmgr -ssl -m https://nuget.org

Я проверил это до того, как сделал это - даже после выполнения исходных пользовательских команд на основе хранилища -tlstest.инструмент exe не удалось, и после импорта в машинное хранилище это удалось.

и, самое главное для меня, конечно, nuget начал работать тогда тоже. :)