node.js - 节点 SSH2 双 ssh 连接
问题描述
我正在尝试通过带有节点的 ssh 进行 2 次跳转,最终目标是连接到数据库。这个想法是:
local ->ssh-> bastion1 ->ssh-> bastion2
我不太明白这一点,我在第二个 ssh 说时不断收到错误消息error ECONNREFUSED x.x.x.xxx:22
。
我当前的代码如下所示:
const Client = require('ssh2').Client;
doubleBastion (sshConfig, dbConfig, debug = false) {
dbConfig = this.addDefaults(dbConfig);
return new Promise((resolve, reject) => {
connOne = new Client();
connOne.on('ready', () => {
console.log('SSH 1 CONNECTED!');
connTwo = new Client();
connTwo.on('ready', () => {
console.log('SSH 2 CONNECTED!');
// establish db connection
}).connect({
passphrase: 'thepassword',
host: 'x.x.x.x',
user: 'ubuntu',
privateKey: sshConfig.key
});
}).connect(sshConfig);
});
}
关于如何使这项工作的任何想法?
解决方案
推荐阅读
- javascript - 如何在 EXT JS 中的分段按钮上应用样式
- java - 如何在 MacOS 上使用 Java 进行 Touch ID 身份验证
- php - 在引导卡中获取信息
- angular - 如何使用 Angular 获取 Azure 服务主体的不记名令牌?
- git - 检查 git 存储库是否在 master HEAD 后面
- mysql - 连接 mysql 中的连接
- elasticsearch - 使用 ElasticSearch 索引电子邮件 - 映射问题
- spring - Azure 服务总线 - Spring Boot 禁用自动启动 (com.microsoft.azure : azure-servicebus-spring-boot-starter)
- ruby - `*': 否定参数 (ArgumentError) Ruby
- javascript - “未捕获的错误:找不到模块'react'”不断显示