node.js cordova npm ubuntu-13.10

node.js - Error: UNABLE_TO_VERIFY_LEAF_SIGNATURE instalación de Phonegap



cordova npm (4)

Esto puede solucionarse sin deshabilitar SSL estricto, sin embargo no es trivial.

Encuentre los certificados que realmente se utilizan, es probable que esté detrás de un proxy de interceptación SSL corporativo . Es posible que pueda usar un navegador, alguna herramienta CLI, etc. Terminé ejecutando certmgr.msc en Windows, ya que los certificados se distribuyen a través de la política de grupo y se exportan como archivos p7b.

Convierta los certificados si es necesario, utilicé la herramienta openssl para convertir de p7b a PEM (también conocido como .crt)

openssl pkcs7 -print_certs -inform DER -in /mnt/adam/certs/my-company-root.p7b -outform PEM -out my-company-root.crt

Combina , si hay más de un certificado, en un único archivo PEM, teniendo cuidado de ordenar de hoja en raíz.

cat my-company-leaf.crt my-company-intermediate.crt my-company-root.crt > my-company-single.crt

Configurar npm en el archivo de certificado

npm config set cafile my-company-single.crt

(o globalmente)

sudo npm config set -g cafile my-company-single.crt

Estoy tratando de instalar Phonegap en Ubuntu. La instalación de NodeJS fue exitosa, sin embargo, no puedo instalar Phonegap. Aquí está la salida de error de la terminal:

test@test-VirtualBox:~$ sudo npm install -g phonegap npm http GET https://registry.npmjs.org/phonegap npm http GET https://registry.npmjs.org/phonegap npm http GET https://registry.npmjs.org/phonegap npm ERR! Error: UNABLE_TO_VERIFY_LEAF_SIGNATURE npm ERR! at SecurePair.<anonymous> (tls.js:1350:32) npm ERR! at SecurePair.EventEmitter.emit (events.js:92:17) npm ERR! at SecurePair.maybeInitFinished (tls.js:963:10) npm ERR! at CleartextStream.read [as _read] (tls.js:463:15) npm ERR! at CleartextStream.Readable.read (_stream_readable.js:320:10) npm ERR! at EncryptedStream.write [as _write] (tls.js:366:25) npm ERR! at doWrite (_stream_writable.js:219:10) npm ERR! at writeOrBuffer (_stream_writable.js:209:5) npm ERR! at EncryptedStream.Writable.write (_stream_writable.js:180:11) npm ERR! at write (_stream_readable.js:573:24) npm ERR! If you need help, you may report this log at: npm ERR! <http://bugs.debian.org/npm> npm ERR! or use npm ERR! reportbug --attach /home/test/npm-debug.log npm npm ERR! System Linux 3.11.0-14-generic npm ERR! command "/usr/bin/nodejs" "/usr/bin/npm" "install" "-g" "phonegap" npm ERR! cwd /home/test npm ERR! node -v v0.10.15 npm ERR! npm -v 1.2.18 npm ERR! npm ERR! Additional logging details can be found in: npm ERR! /home/test/npm-debug.log npm ERR! not ok code 0

Cualquier ayuda sería apreciada.


Obtuve el mismo error, dado que estaba detrás de un firewall / proxy corporativo y mi conexión pasó el certificado del proxy.

En tu línea de comando ejecuta:

npm config set strict-ssl false

NOTA: esta no es la mejor práctica para aceptar ciegamente certificados SSL no confiables o no válidos, que es lo que hace el comando (desactivar la verificación de certificados). Tu puedes correr

npm config set strict-ssl true

para volver a encenderlo

ref: https://thomashunter.name/blog/npm-ssl-errors/


corriendo

npm config set strict-ssl false

resolvió mi problema

Estoy usando Vagrant (Linux precise32 Ubuntu) y Windows 7 como host.

Gracias


corriendo

npm config set strict-ssl false

trabajó para mi. Resolvió mi problema ...