首先要建立内网目标机与公网跳板机之间的SSH连接,在内网目标机中使用下述命令生成一组密钥对。
1
ssh-keygen -t rsa
使用下述命令将生成的密钥添加到公网跳板机的
authorized_keys
中,如此,即可建立两者之间的SSH连接。1
ssh-copy-id [Board Machine Username]@[Board Machine IP Address]
修改跳板机的配置文件
/etc/ssh/sshd_config
,将其中#GatewayPorts no
一行的注释取消,并将其配置值修改为yes
。使用下述命令重启跳板机的
sshd
服务,使配置修改生效。1
sudo service sshd restart
在目标机中使用命令
sudo apt install autossh
安装AutoSSH
,并执行以下命令创建反向代理。1
autossh -M [Any Available Port] -NfR 0.0.0.0:[Board Machine Binding Port]:localhost:22 [Board Machine Username]@[Board Machine IP Address]
若目标机有安全组策略,需要在入站规则中放行上述命令中使用的端口。
至此,SSH隧道建立完毕,此时在跳板机所绑定端口上的访问均会被转发至目标机22端口,由此,便可以借助跳板机连接内网服务器,执行作业。使用方式为:
1
ssh [Target Machine Username]@[Board Machine IP Address] -p [Board Machine Binding Port]
原文作者:李英平
原文链接:http://bye-lemon.github.io/post/6c49/
发表日期:August 12th 2021, 9:57:15 pm
更新日期:August 12th 2021, 10:23:46 pm
版权声明:本文采用知识共享署名-非商业性使用 4.0 国际许可协议进行许可
-
Next Post当我们落魄到需要去借别人的算力跑实验的时候
-
Previous PostWindows 10系统下使用SMB实现媒体文件共享