SSH反向隧道转发配置方法:
声明:在没有备案的情况下,内网穿透技术只能作为个人用途,请勿将其用于违法途径。
0.主体描述:
a.内网服务器:安装有Nvidia显卡的主机,但是只有内网IP,并且内网中有内网隔离,无法被直接访问。
b.跳板服务器:任意一个有root权限,并且有公网IP的服务器。
1.准备跳板服务器:
a.跳板服务器应该$nfw allow 6666端口,并且确保ssh服务已经启动:
$ps -e | grep sshd
b.并且在/etc/ssh/config_sshd文件中打开allowtcpforwarding以及Gatewayports配置,修改完成后重启服务
$sudo service ssh restart
c.执行:
$netstat -anp| grep :6666
以及
$lsof -i:6666
确保6666端口未被使用(空结果)
2.在内网服务器上开启反向ssh代理:
a.配置内网服务器ssh链接有效时间:在~/.ssh文件夹下创建config文件,并写入ServerAliveInterval 60
b.用管理员权限启动执行
$ssh -CqTfnN -R :6666:localhost:22 root@跳板服务器IP
c.在跳板服务器上用上述1.c指令确定6666端口已经被监听(但不一定被占用lsof,如果建立了ssh链接则lsof会出现结果)
3.现在可以直接连接了:
a.用任意公网终端执行
$ssh -p 6666 user@内网服务器IP
即可连接至内网服务器
ps.如果需要脚本后台运行,可以将命令
$ssh -CqTfnN -R :6666:localhost:22 root@跳板服务器IP
写入到cmd文件中,并执行
$start /b cmd文件名
实现后台运行。
其他后台方式,打包成exe之后注册为服务运行:
$sc create 自定义服务名 binpath=可执行文件完整路径 type= own start= auto displayname= 自定义服务名
或直接
$start /b 可执行文件完整路径
如果是linux系统则更为简单,直接$nohup或者$screen即可