Klient SSH dla węzła.js [zamknięte]

Czy istnieje klient SSH dla node.js mogę użyć do komunikacji z serwerem?

Author: Van Coding, 2011-03-03

4 answers

Moduł klienta SSH2 napisany w czystym JavaScript dla node.js

Https://github.com/mscdex/ssh2

Również sprawdź to opakowanie dla niego

Https://github.com/mikeal/sequest

 36
Author: Epeli,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2014-11-19 20:39:07

Węzeł.procesy potomne js nie sprawdzą się, jeśli musisz użyć hasła do logowania, ponieważ klient OpenSSH nie odczytuje hasła ze standardowego wejścia, ale z pseudo terminala.

Możesz obejść to za pomocą pty.js :

var pty = require("pty.js");
var term = pty.spawn("ssh", ["username@localhost", "whoami"]);

term.on("data", function(data) {
  console.log("Incoming: " + data.toString());
});

// Wait a sec before sending the password. For proper implementation 
// you should wait for the password prompt.
setTimeout(function(){
  term.write("mypassword\n");
}, 1000);

Biorąc to pod uwagę, należy zawsze używać do tego par kluczy SSH, jeśli to możliwe.

 15
Author: Epeli,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-06-25 18:46:45

Oto dwie inne opcje:

Klient jest dość solidny i podstawowy do ogólnego użytku. Node-control jest bardziej odpowiedni do równoległej, asynchronicznej kontroli nad wieloma maszynami(np. praca sys-admin).

 12
Author: Van Nguyen,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2012-03-20 13:58:54

Podobnie jak w przypadku sftp w Twoim wcześniejszym pytaniu, możesz użyć klienta ssh poprzez proces potomny .

 2
Author: Greg,
Warning: date(): Invalid date.timezone value 'Europe/Kyiv', we selected the timezone 'UTC' for now. in /var/www/agent_stack/data/www/doraprojects.net/template/agent.layouts/content.php on line 54
2017-05-23 12:02:29