node.js - ssh2 timed out while waiting for handshake -
i trying use node.js issue command line in linux servers via ssh. found https://github.com/mscdex/ssh2 , tried test out. here code , ready
event never fired:
var client = require('ssh2').client; console.log('start ssh2...'); var conn = new client(); conn.on('ready', function() { console.log('client :: ready'); conn.shell(function(err, stream) { if (err) throw err; stream.on('close', function() { console.log('stream :: close'); conn.end(); }).on('data', function(data) { console.log('stdout: ' + data); }).stderr.on('data', function(data) { console.log('stderr: ' + data); }); stream.end('ls -l\nexit\n'); }); }).connect({ host: '12.12.12.12', port: 22, trykeyboard: true, debug: console.log, readytimeout: 99999, username: 'root', password: 'password' });
i did set long readytimeout
, trykeyboard
true.
here log:
debug: local ident: 'ssh-2.0-ssh2js0.0.14' debug: client: trying 123.123.123.123 on port 22 ... debug: client: connected debug: parser: in_init debug: parser: in_greeting debug: parser: in_header debug: remote ident: 'ssh-2.0-openssh_6.2' debug: outgoing: writing kexinit debug: parser: in_packetbefore (expecting 8) debug: parser: in_packet debug: parser: pktlen:1540,padlen:7,remainlen:1536 debug: parser: in_packetdata debug: parser: in_packetdataafter, packet: kexinit debug: comparing kexinits ... debug: (local) kex algorithms: diffie-hellman-group-exchange-sha256,diffie-hellm an-group-exchange-sha1,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 debug: (remote) kex algorithms: ecdh-sha2-nistp256,ecdh-sha2-nistp384,ecdh-sha2- nistp521,diffie-hellman-group-exchange-sha256,diffie-hellman-group-exchange-sha1 ,diffie-hellman-group14-sha1,diffie-hellman-group1-sha1 debug: kex algorithm: diffie-hellman-group-exchange-sha256 debug: (local) host key formats: ssh-rsa,ssh-dss debug: (remote) host key formats: ssh-rsa,ssh-dss,ecdsa-sha2-nistp256 debug: host key format: ssh-rsa debug: (local) client->server ciphers: aes256-ctr,aes192-ctr,aes128-ctr,aes128-g cm,aes128-gcm@openssh.com,aes256-gcm,aes256-gcm@openssh.com,aes256-cbc,aes192-cb c,aes128-cbc,blowfish-cbc,3des-cbc,arcfour256,arcfour128,cast128-cbc,arcfour debug: (remote) client->server ciphers: aes128-ctr,aes192-ctr,aes256-ctr,arcfour 256,arcfour128,aes128-gcm@openssh.com,aes256-gcm@openssh.com,aes128-cbc,3des-cbc ,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu .se debug: client->server cipher: aes256-ctr debug: (local) server->client ciphers: aes256-ctr,aes192-ctr,aes128-ctr,aes128-g cm,aes128-gcm@openssh.com,aes256-gcm,aes256-gcm@openssh.com,aes256-cbc,aes192-cb c,aes128-cbc,blowfish-cbc,3des-cbc,arcfour256,arcfour128,cast128-cbc,arcfour debug: (remote) server->client ciphers: aes128-ctr,aes192-ctr,aes256-ctr,arcfour 256,arcfour128,aes128-gcm@openssh.com,aes256-gcm@openssh.com,aes128-cbc,3des-cbc ,blowfish-cbc,cast128-cbc,aes192-cbc,aes256-cbc,arcfour,rijndael-cbc@lysator.liu .se debug: server->client cipher: aes256-ctr debug: (local) client->server hmac algorithms: hmac-md5,hmac-sha1,hmac-sha2-256, hmac-sha2-256-96,hmac-sha2-512,hmac-sha2-512-96,hmac-ripemd160,hmac-sha1-96,hmac -md5-96 debug: (remote) client->server hmac algorithms: hmac-md5-etm@openssh.com,hmac-sh a1-etm@openssh.com,umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-25 6-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-ripemd160-etm@openssh.com,h mac-sha1-96-etm@openssh.com,hmac-md5-96-etm@openssh.com,hmac-md5,hmac-sha1,umac- 64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,h mac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96 debug: client->server hmac algorithm: hmac-md5 debug: (local) server->client hmac algorithms: hmac-md5,hmac-sha1,hmac-sha2-256, hmac-sha2-256-96,hmac-sha2-512,hmac-sha2-512-96,hmac-ripemd160,hmac-sha1-96,hmac -md5-96 debug: (remote) server->client hmac algorithms: hmac-md5-etm@openssh.com,hmac-sh a1-etm@openssh.com,umac-64-etm@openssh.com,umac-128-etm@openssh.com,hmac-sha2-25 6-etm@openssh.com,hmac-sha2-512-etm@openssh.com,hmac-ripemd160-etm@openssh.com,h mac-sha1-96-etm@openssh.com,hmac-md5-96-etm@openssh.com,hmac-md5,hmac-sha1,umac- 64@openssh.com,umac-128@openssh.com,hmac-sha2-256,hmac-sha2-512,hmac-ripemd160,h mac-ripemd160@openssh.com,hmac-sha1-96,hmac-md5-96 debug: server->client hmac algorithm: hmac-md5 debug: (local) client->server compression algorithms: none debug: (remote) client->server compression algorithms: none,zlib@openssh.com debug: client->server compression algorithm: none debug: (local) server->client compression algorithms: none debug: (remote) server->client compression algorithms: none,zlib@openssh.com debug: server->client compression algorithm: none debug: outgoing: writing kexdh_gex_request debug: parser: in_packetbefore (expecting 8) debug: parser: in_packet debug: parser: pktlen:404,padlen:8,remainlen:400 debug: parser: in_packetdata debug: parser: in_packetdataafter, packet: kexdh_gex_group debug: outgoing: writing kexdh_gex_init debug: parser: in_packetbefore (expecting 8) debug: parser: in_packet debug: parser: pktlen:956,padlen:7,remainlen:952 debug: parser: in_packetdata debug: parser: in_packetdataafter, packet: kexdh_gex_reply debug: checking host key format debug: checking signature format debug: verifying host fingerprint debug: host accepted default (no verification) debug: verifying signature debug: outgoing: writing newkeys debug: parser: in_packetbefore (expecting 8) debug: parser: in_packet debug: parser: pktlen:12,padlen:10,remainlen:8 debug: parser: in_packetdata debug: parser: in_packetdataafter, packet: newkeys debug: outgoing: writing service_request (ssh-userauth) debug: parser: in_packetbefore (expecting 16) debug: parser: in_packet debug: parser: decrypting debug: parser: pktlen:28,padlen:10,remainlen:16 debug: parser: in_packetdata debug: parser: decrypting debug: parser: hmac size:16 debug: parser: in_packetdataverify debug: parser: verifying mac debug: parser: in_packetdataverify (valid hmac) debug: parser: in_packetdataafter, packet: service_accept debug: outgoing: writing userauth_request (password) debug: parser: in_packetbefore (expecting 16) debug: parser: in_packet debug: parser: decrypting debug: parser: pktlen:44,padlen:7,remainlen:32 debug: parser: in_packetdata debug: parser: decrypting debug: parser: hmac size:16 debug: parser: in_packetdataverify debug: parser: verifying mac debug: parser: in_packetdataverify (valid hmac) debug: parser: in_packetdataafter, packet: userauth_failure debug: client: password auth failed debug: outgoing: writing userauth_request (keyboard-interactive) debug: parser: in_packetbefore (expecting 16) debug: parser: in_packet debug: parser: decrypting debug: parser: pktlen:44,padlen:11,remainlen:32 debug: parser: in_packetdata debug: parser: decrypting debug: parser: hmac size:16 debug: parser: in_packetdataverify debug: parser: verifying mac debug: parser: in_packetdataverify (valid hmac) debug: parser: in_packetdataafter, packet: userauth_info_request debug: parser: in_packetbefore (expecting 16) events.js:85 throw er; // unhandled 'error' event ^ error: timed out while waiting handshake @ null._ontimeout (\node_modules\ssh2\lib\client.js:138:17) @ timer.listontimeout (timers.js:110:15)
however, if change ssh server configuration have private key in node.js server, authenticate. question why username/password authentication doesn't work , how fix (either code or change server configs somehow)?
Comments
Post a Comment