NodeJS SSH连接

时间:2019-01-22 09:55:33

标签: node.js ssh

我正在寻找一种使用NodeJS以编程方式SSH到我们的远程服务器之一的方法。但是,无论何时通过SSH到服务器,我们都需要输入1-Time Code作为额外的安全功能。我当前正在使用simple-ssh。请帮我。谢谢。

1 个答案:

答案 0 :(得分:0)

您可以使用node-ssh进行操作,以下是一个简单的示例,该示例使用环境变量SSH到主机名服务器(基于IP或DNS)并运行redis-cli命令来ping。另外,我们通过STDOUT和STDERR读取输出:

const node_ssh = require('node-ssh');
const ssh = new node_ssh();

require('dotenv').config();

ssh
  .connect({
    host: process.env.SSH_host,
    username: process.env.SSH_user,
    privateKey: process.env.SSH_privatekey,
    passphrase: process.env.SSH_passphrase
  })
  .then(() => {
    ssh.execCommand('redis-cli ping', { cwd: '/var/www' }).then((result) => {
      console.log('STDOUT: ' + result.stdout);
      console.log('STDERR: ' + result.stderr);
    });
  });

Click here以获取详细的示例。