穿透学院服务器及jupyterlab

注autossh穿

autossh -v -M 9002 -NR 7280:10.11.6.13:18877 root@47.101.151.73 -p 22

ssh穿

内网:10.11.x.x

外网:47.101.x.x

内网端口ssh 22 外网7280端口先穿22

ssh -o ServerAliveInterval=60 -f -N -R 7280:10.11.x.x:22 root@47.101.x.x

#让公网机的9090端口能够监听到内网机的22端口,这样我们就能通过访问公网机的9090端口直接登录内网机器。 ServerAliveInterval=60 防止连接不稳定,这里设置每60秒发送一次数据包 这样我们就能连接通过外网机登录内网机器了

公网机上输入 curl http://127.0.0.1:7280, 看到下面这串回复说明ssh已经通了

SSH-2.0-OpenSSH_7.4
Protocol mismatch.
12

但是这里还有个问题就是ssh只能连接到外网机的本机回路地址127.0.0.1上,我们还无法通过外网ip 47.101.x.x来连接内网机。所以这里还要做如下配置:

外网机输入iptables -t nat -A PREROUTING -p tcp --dport 7280 -j DNAT --to-destination 127.0.0.1:7280

这句代码的意思是访问7280端口的请求都转发到回路地址`127.0.0.1:7280`这个地址上。
1

Linux系统出于安全考虑,是不允许将请求转发至127.0.0.1这个回环地址上的,所以我们还需要修改内核参数。

sysctl -w net.ipv4.conf.eth0.route_localnet=1
1

到此我们所有配置完成

输入: curl http://47.101.x.x:7280

SSH-2.0-OpenSSH_7.4
Protocol mismatch.
12

看到以下回复说明我们外网9090端口和内网22端口已经连通,这里我们在做最终的测试

任意选择一台机器(ssh 正常使用)

命令行输入: ssh root@47.101.x.x -p 7280

通过ssh转到jupyterlab端口

我的jupyterlab端口8889,用mobaxterm的turnel

image-20210503215316297

设置完点击运行,然后本地通过访问127.0.0.1:12345就能访问远程jupyter

jupyeterlab桌面版

新建快捷方式,目标改为

“C:\Program Files (x86)\Google\Chrome\Application\chrome.exe” --app=http://127.0.0.1:12345

参考

https://blog.csdn.net/qq_42929944/article/details/105251752

https://blog.mobatek.net/post/ssh-tunnels-and-port-forwarding/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值