前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >SSH正向代理

SSH正向代理

作者头像
Aidol
发布2020-12-03 14:53:06
1.6K0
发布2020-12-03 14:53:06
举报
文章被收录于专栏:苦旅

实验室里有一台服务器C,我在实验室里有一台和服务器在同一局域网的电脑B,我自己的笔记本A在寝室。我想在A电脑上直接访问C的网站,那么该如何实现呢? ssh-正向与反向代理 - tanoak - 博客园 (cnblogs.com)

示意图.png

使B能访问在C上运行的Jupyter notebook

我直接在C上打开了Jupyter notebook(可以百度一下jupyter 远程访问),但是C并没有开放8888端口(jupyter默认是8888端口),只开放了常用的端口,如22端口等。那么首先需要解决的是使B能访问到C端的jupyter网页,这时只需要在B上配置ssh,使用ssh的端口转发的功能来访问C的8888端口

代码语言:javascript
复制
ssh -L 4000:localhost:8888 username@192.168.1.66 -p port

这样就能直接在B的电脑上输入localhost:4000来访问C服务器上jupyter通过8888端口开放的服务

使A能通过B来访问C开放的jupyter服务

这时只需要在B上做如下配置:

代码语言:javascript
复制
ssh -CfNg -R 4000:localhost:4000 usrname@123.123.999.xxx

这样就能直接在A电脑上输入localhost:4000来直接访问C中开启的服务了

SSH常用参数
代码语言:javascript
复制
-N 告诉SSH客户端,这个连接不需要执行任何命令。仅仅做端口转发
-C 表示压缩数据传输
-f 告诉SSH客户端在后台运行
-q Quiet mode. 安静模式,忽略一切对话和错误提示
-g:允许远程主机连接主机的转发端口
-L port:host:hostport 做本地映射端口(正向隧道,监听本地port)
需要使用的本地端口号
需要访问的目标机器IP地址(IP: 234.234.234.234)
需要访问的目标机器端口(端口: 21)
-R。port:host:hostport 该参数的三个部分的含义分别(反向隧道,监听远程port)
远程机器使用的端口(2222)
需要映射的内部机器的IP地址(127.0.0.1)
需要映射的内部机器的端口(22)
栗子 -R X:Y:Z 就是把我们内部的Y机器的Z端口映射到远程机器的X端口上
-D port 指定一个本地机器 ``动态的 应用程序端口转发
备注

上图中A和B电脑都是win10系统,win10系统开启要手动开启OpenSSH服务才能使用ssh登录,开启的方法是先在设置中打开应用->可选服务然后添加OpnenSSH服务,之后再在开始菜单中搜索服务,在服务中打开与OpenSSH相关的两个服务就行。

image.png

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 使B能访问在C上运行的Jupyter notebook
    • 使A能通过B来访问C开放的jupyter服务
    • SSH常用参数
    • 备注
    领券
    问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档