本地端口转发链接服务器jupyter

步骤:

1. 现在服务器下用virtualenv配置python虚拟环境,并安装自己需要的包(比如 numpy,pandas等基础包,tensorflow, pytorch等框架包),安装 jupyter notebook包 

2. 先参考下面链接配置jupyter的远程访问和端口,密码设置:

Jupyter Notebook简介和配置说明

3. 服务器虚拟环境 env-py 下到对应目录下运行jupyter,通过ssh转发本地链接服务器端口8898(根据自己配置的jupyter 端口相应修改)

ssh -N -f -L 127.0.0.1:8898:127.0.0.1:8898 username@***.***.***.***


本地端口转发

所谓本地端口转发,就是将发送到本地端口的请求,转发到目标端口

这样,就可以通过访问本地端口,来访问目标端口的服务。使用-L属性,就可以指定需要转发的端口

语法:ssh -L 本地网卡地址:本地端口:目标地址:目标端口

1. # 在本地主机A1登陆远程云主机B1(103.59.22.17),并进行本地端口转发

ssh -L localhost:2000:localhost:3000 root@103.59.22.17

  -L选项中的目标地址也可以是其他主机的地址。

2. # 在本地主机A1登陆远程云主机B1,并进行本地端口转发。请求被转发到远程云主机B2(192.168.59.100)上

ssh -L 2000:192.168.59.100:3000 root@103.59.22.17


远程端口转发

为啥需要远程端口转发呢?

--->通常,本地主机是没有独立的公网IP的,它与同一网络中的主机共享一个IP。没有公网IP,云主机是无法访问本地主机上的服务的。

所谓远程端口转发,就是将发送到远程端口的请求,转发到目标端口。这样,就可以通过访问远程端口,来访问目标端口的服务。

语法:ssh -R 远程网卡地址:远程端口:目标地址:目标端口

1 .# 在本地主机A1登陆远程云主机B1,并进行远程端口转发,将发送到远程云主机B1端口2000的请求,转发到本地主机A1端口3000。

ssh -R localhost:2000:localhost:3000 root@103.59.22.17


链式端口转发

本地端口转发远程端口转发结合起来使用,实现链式转发

假设A主机在公司,B主机在家,C主机为远程云主机。A主机上运行了前文的Node.js服务,需要在B主机上访问该服务。由于A和B不在同一个网络,且A主机没有独立公共IP地址,所以无法直接访问服务。

方法:通过本地端口转发,将发送到B主机3000端口的请求,转发到远程云主机C的2000端口。

1. # 在B主机登陆远程云主机C,并进行本地端口转发

ssh -L localhost:3000:localhost:2000 root@103.59.22.17

通过远程端口转发,将发送到远程云主机C端口2000的请求,转发到A主机的3000端口。

2. # 在A主机登陆远程云主机C,并进行远程端口转发

ssh -R localhost:2000:localhost:3000 root@103.59.22.17

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • Spring Cloud为开发人员提供了快速构建分布式系统中一些常见模式的工具(例如配置管理,服务发现,断路器,智...
    卡卡罗2017阅读 135,259评论 19 139
  • 我的应用场景是:在vps(root@159.89.206.20)上面跑了个只能在服务器本地访问的网页:127.0....
    ThomasYoungK阅读 1,258评论 0 0
  • 今天的军训真的是出乎我的意料,本以为今天应该是最艰苦的,并不然,今天竟然是最轻松、愉快的一天。 早上老师说等会儿要...
    初一十二班潘泽同阅读 271评论 0 0
  • 其实今天看了会书,但就是特别不想打卡,有种小孩跟妈妈倔的那种不想。刚才在群聊里打了“缺卡+1”,就在发送的前一秒,...
    新月饭店大小姐阅读 304评论 0 0