前往小程序,Get更优阅读体验!
立即前往
发布
社区首页 >专栏 >Linux SSH 端口转发

Linux SSH 端口转发

原创
作者头像
大大刺猬
修改2020-03-13 18:13:26
修改2020-03-13 18:13:26
10.3K00
代码可运行
举报
文章被收录于专栏:大大刺猬大大刺猬
运行总次数:0
代码可运行

很多场景下服务器网络不能直接通信,或V**,或堡垒机,或网络(路由),或者其他安全策略。

特殊说明:本实验均采用root用户操作,故省去用户名,读者可自行选择用户。实验的IP请替换为自己环境的IP即可

案例1:

A :公网IP(129.28.X.X)

B: 私网IP (192.168.X.X)

如果不考虑防火墙等原因的话,B 可以SSH远程到 A,但是A无法SSH到B(因为B是私网IP)。

由于某种原因,现要求A能访问B,(可以先猜猜该怎么做,V**行不行呢?我也不知道.....)

说明:只要其他人能访问A(公网IP),也就能通过A访问B了

操作如下:

代码语言:javascript
代码运行次数:0
复制
  #主机B执行(然后输入A的密码):
ssh -R 6121:127.0.0.1:22 129.28.X.X  -Nf

参数说明:

-R 转发

6121 A服务器所要开启的端口

127.0.0.1 转发目标(本次测试是B主机,也可以换成B能访问到的其他主机,这样A就能通过B访问其它主机了)

:22 转发目标的端口

-Nf 后台启用,不打开shell

测试:在A服务器上连接本地端口6121即可

代码语言:javascript
代码运行次数:0
复制
  #主机A执行(然后输入B的密码):
      ssh localhost -p 6121

场景:甲自己电脑上有个虚拟机,乙电脑上也有个虚拟机,但是他们不在同一个网段,通过上诉方法,只要他们能访问到同一台服务器(往往在公网上),那他们就能通信。感兴趣的可以自己整整。

Note: ssh的时候如果报错 Permission denied (publickey,gssapi-keyex,gssapi-with-mic) 的话,在 /etc/ssh/sshd_config 文件添加一行 PasswordAuthentication yes

案例2:

有空了再说....

提示:

代码语言:javascript
代码运行次数:0
复制
 ssh -L lp:r:rp sshserver -Nf
 ssh        协议
 -L         [bind_address:]port:host:hostport
 lp         本地端口
 r          远程地址
 rp         远程端口
 sshserver  用来做ssh转发的主机。简称工具机。
 -N         不打开远程shell,处于等待状态
 -f         后台启用
 -Nf        后台启用,不打开shell

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 很多场景下服务器网络不能直接通信,或V**,或堡垒机,或网络(路由),或者其他安全策略。
    • 特殊说明:本实验均采用root用户操作,故省去用户名,读者可自行选择用户。实验的IP请替换为自己环境的IP即可
  • 案例1:
    • 操作如下:
      • 测试:在A服务器上连接本地端口6121即可
      • 场景:甲自己电脑上有个虚拟机,乙电脑上也有个虚拟机,但是他们不在同一个网段,通过上诉方法,只要他们能访问到同一台服务器(往往在公网上),那他们就能通信。感兴趣的可以自己整整。
  • 案例2:
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档