express转发添加ssh

express转发添加ssh,第1张

要在Express应用程序中添加SSH转发,需要使用ssh2模块。以下是添加SSH转发的步骤:

1. 安装ssh2模块

在终端中运行以下命令:

```

npm install ssh2

```

2. 导入ssh2模块

在Express应用程序中导入ssh2模块:

```javascript

const ssh2 = require('ssh2')

```

3. 创建SSH连接

使用ssh2模块创建SSH连接,并设置远程主机和端口:

```javascript

const conn = new ssh2.Client()

conn.on('ready', function() {

console.log('SSH连接已建立')

// 在此处添加转发代码

}).connect({

host: '远程主机',

port: 22,

username: '用户名',

password: '密码'

})

```

4. 添加转发

在SSH连接成功后,使用conn.forwardOut()方法添加转发:

```javascript

conn.forwardOut('本地主机', 0, '远程主机', 远程端口, function(err, stream) {

if (err) throw err

// 在此处处理流

})

```

其中,本地主机和本地端口可以是任意值,远程主机和远程端口是需要转发的目标主机和端口。

5. 处理流

在添加转发后,可以使用stream对象处理数据流。例如,将流传递给Express应用程序:

```javascript

app.get('/ssh', function(req, res) {

conn.forwardOut('localhost', 0, '远程主机', 远程端口, function(err, stream) {

if (err) throw err

stream.pipe(res)

})

})

```

这将创建一个路由,将来自SSH转发的流传递给Express应用程序的响应。

由于本地Git仓库和GitHub仓库之间的传输是通过SSH加密的,所以必须要让github仓库认证你SSH key,在此之前,必须要生成SSH key。

第1步:创建SSH Key。在windows下查看[c盘->用户->自己的用户名->.ssh下是否有id_rsa、id_rsa.pub文件,如果没有需要手动生成。

在开始菜单中打开git下的git bash(当然,在其他目录下打开git bash也是一样的):

然后执行:

cd ~/.ssh

如果能进入到.ssh文件目录下 ,则证明,之前生成过.ssh秘钥,可以直接使用里面的秘钥。

如果不能进入到.ssh文件目录下,则:

检测下自己之前有没有配置:git config user.name和git config user.email(直接分别输入这两个命令)

一、如果之前没有配置过

1.配置

git config –global user.name ‘xxxxx’

git config –global user.email ‘ xxx@xx.xxx ’

2.生成密钥

ssh-keygen -t rsa -C ‘上面的邮箱’

接着按3个回车 则:

Generating public/private rsa key pair.

Enter file in which to save the key (/c/Users/Mr.Yang/.ssh/id_rsa):

Enter passphrase (empty for no passphrase):

Enter same passphrase again:

Your identification has been saved in /c/Users/Mr.Yang/.ssh/id_rsa.

Your public key has been saved in /c/Users/Mr.Yang/.ssh/id_rsa.pub.

The key fingerprint is:

SHA256:zA6wNJrFB6NcqS6eBog/AHlzQuvFjYpG759Yhh1lWGI xxxxxx@xxxxx.xxx (上面自己的邮箱)

The key's randomart image is:

+---[RSA 2048]----+

|+E . |

| ..+oo+ |

| oo+ +.o |

|o. ===+o |

|==+*... S|

|B.+.o .o |

|++o. + .|

| +o.+ . |

|. o.o |

+----[SHA256]-----+

最后在.ssh目录下得到了两个文件:id_rsa(私有秘钥)和id_rsa.pub(公有密钥)

如果想登陆远端,则需要将rsa.pub里的秘钥添加到远端,打开setting->SSH keys,点击右上角 New SSH key,把生成好的公钥id_rsa.pub放进 key输入框中,再为当前的key起一个title来区分每个key,title名称随便命名。

SSH密钥生成结束后,你可以在SSH目录下看到私钥id_rsa和公钥id_rsa.pub这两个文件,不要把私钥文件id_rsa的信息透露给任何人。我们可以通过文本编辑器或cat命令来查看id_rsa.pub公钥信息。


欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/bake/11385133.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-05-15
下一篇2023-05-15

发表评论

登录后才能评论

评论列表(0条)

    保存