On Thu, Dec 18, 2014, at 05:16 PM, Kossowski Zbigniew wrote:
> May be I AM wrong thinking about libssl
> 
> Error: 683439360:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown 
> protocol:/usr/src/lib/libssl/ssl/../../libssl/src/ssl/s23_clnt.c:550:
> 
> error command: npm install -g grunt-cli
> 
> 
> --
> Zbigniew Kossowski
> Kierownik Projektów
> Departament Systemów Informatycznych

Hi,

The issue you are hitting has 40 hits on the npm issue tracker[0],
granted most of them are old but the maintainers generally boiled down
to recommending:

> this error is almost inevitably a consequence of running either a very old 
> npm / node or having some kind of proxy in between you and the registry.

Most notable occurrence of this error in the npm tracker is [1] which is
also a failed grunt installation where the developer replied:

> If so, I have two suggestions to try with troubleshooting this.
>
>   Are you behind a proxy (e.g., in a corporate environment) and do you need 
> to tell npm how to log in to your
>  proxy? (npm config set https-proxy http://proxy-host.name:port)
>
>  Can you try updating your node and npm? The latest stable node is 0.10.33 
> and contains some improvements 
> to the SSL code. The latest npm is 2.1.9

You are using npm 1.4.28 & node 0.10.32.
Sorry but I'm not an npm/node user and it doesn't seem to be available
on i386 so I can't test that out for you.

On my i386 OpenBSD snapshot from Dec 10 I can connect to
https://registry.npmjs.org/grunt-cli both with the openssl (LibreSSL)
command line client & curl.

$ openssl s_client -connect registry.npmjs.org:443
CONNECTED(00000003)
....

$ curl -v -k "https://registry.npmjs.org/grunt-cli";       
* Hostname was NOT found in DNS cache
*   Trying 185.31.17.162...
* Connected to registry.npmjs.org (185.31.17.162) port 443 (#0)
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/cert.pem
  CApath: none
* SSLv3, TLS handshake, Client hello (1):
* SSLv3, TLS handshake, Server hello (2):
* SSLv3, TLS handshake, CERT (11):
* SSLv3, TLS handshake, Server key exchange (12):
* SSLv3, TLS handshake, Server finished (14):
* SSLv3, TLS handshake, Client key exchange (16):
* SSLv3, TLS change cipher, Client hello (1):
* SSLv3, TLS handshake, Finished (20):
* SSLv3, TLS change cipher, Client hello (1):
* SSLv3, TLS handshake, Finished (20):
* SSL connection using TLSv1.2 / ECDHE-RSA-AES128-GCM-SHA256
...

Note that the error you are seeing may be because npm tries to connect
to the server on a weird port:

$ curl -v -k "https://registry.npmjs.org:80/grunt-cli";   
* Hostname was NOT found in DNS cache
*   Trying 185.31.17.162...
* Connected to registry.npmjs.org (185.31.17.162) port 80 (#0)
* successfully set certificate verify locations:
*   CAfile: /etc/ssl/cert.pem
  CApath: none
* SSLv3, TLS handshake, Client hello (1):
* Unknown SSL protocol error in connection to registry.npmjs.org:80 
* Closing connection 0
curl: (35) Unknown SSL protocol error in connection to
registry.npmjs.org:80 

[0] - https://github.com/npm/npm/search?q=SSL+routines&type=Issues
[1] - https://github.com/npm/npm/issues/5247
--
Adam Wolk
[email protected]

Reply via email to