web-dev-qa-db-fra.com

NuGet sous Linux: erreur lors de l'obtention du flux de réponse

J'essaie d'exécuter NuGet sur Linux (Ubuntu 12). J'ai Mono 3.0.6 (compilé à partir de la source).

$ 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

L'erreur est due à un certificat (le plus probable sur nuget.org) qui n'est pas fiable, je suppose. Ce le blog a plus de détails .

J'ai donc couru:

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

... en vain.

La version de NuGet est 2.3.0.0 (bien que j'ai commencé avec une version plus ancienne qui ne fonctionnait pas non plus).

Comment puis-je corriger cette erreur?

52
friism

J'ai pu faire fonctionner cela en important les certificats dans le magasin de machines et non dans le magasin d'utilisateurs, qui est la valeur par défaut:

$ 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

J'ai vérifié qu'avant cela - même après avoir exécuté les commandes d'origine basées sur le magasin de l'utilisateur - l'outil tlstest.exe a échoué, et après l'importation dans le magasin de machines, il a réussi.

Et, le plus important pour moi, bien sûr, nuget a commencé à travailler aussi. :)

111
Aaron Lerch