首页 > 代码库 > 外网主机A连接内网主机B

外网主机A连接内网主机B

实现通过外网的主机A连接内网的主机B

设置内网主机B免密登陆外网主机A

在主机B中输入下面的命令,并且一直回车:

ssh-keygen

然后会在/root/.ssh/下生成2个文件:id_rsa和id_rsa.pub。

可以用下面的命令查看:

ls /root/.ssh/

在外网主机A中建立自己的文件夹,用来存id_rsa.pub文件。
把内网主机B中的id_rsa.pub发到外网主机A的文件夹中:

scp ~/.ssh/id_rsa.pub root@123.206.183.17:/文件夹路径

进入你存放id_rsa.pub的文件夹路径,在外网主机A上把id_rsa.pub加入到/root/.ssh/authorized_keys里去:

cat id_rsa.pub >> /root/.ssh/authorized_keys
接下来就可以使用autossh:
/usr/local/bin/autossh -M 5678 -fNR 2205:localhost:22 root@123.206.183.17 -p22

负责通过5678端口监视连接状态。

 

映射内网端口到本地

 ssh -NL  localhost:2302:localhost:8888 root@123.206.183.17 -p 2205

localhost:2302:localhost:8888中的localhost:8888,是我们想要得到的内网端口(也就是映射于公网2200端口的机器的端口);
localhost:2302是映射的本地目标端口,即通过这个端口访问,可选择。
在本地浏览器打开localhost:2302

外网主机A连接内网主机B