手把手教你玩转SSH端口转发

什么是SSH端口转发

SSH隧道或SSH端口转发是一种在客户端和服务器机器之间创建加密SSH连接的方法。通过设置转发使得两台不相干的主机建立联系。使其两者能够互通。

手把手教你玩转SSH端口转发
ssh端口转发示意

前期准备

  • 阿里云服务器一台 (222.7.45.22
  • 本地Kali Linux192.167.123.74
  • Xshell7

应用场景

场景一

大表哥在公司上班,突然想起一份很重要的文件在家中的电脑里。为了不被炒鱿鱼。大表哥驱车行驶了100公里回家后拿到了文件。手把手教你玩转SSH端口转发

​场景二

公司服务器IP记不住。为了方便,我只需访问kali的本地IP地址,就能实现对远程服务器的访问。

SSH端口转发的类型

总体而言,ssh端口转发的类型主要有以下三个方面。

  • 本地端口转发:  将本地主机端口转发到 SSH 服务器主机。(场景二)
  • 远程端口转发:  将服务器主机转发到本地主机。(场景一)
  • 动态端口转发:  创建 SOCKS 代理服务器,逃逸防火墙。

详解

🕸本地端口转发

连接从客户端主机转发到SSH服务器主机,然后转发到目标主机端口。

语法:

ssh -g -N -L  [本地端口]:[远程IP]:[远程端口] [ssh帐号]@[ssh服务IP] -p [ssh服务端口]

如以下列子我们在本地的kali中执行下面命令

ssh -g -N -L  8888:222.7.45:22:80 root@www.kali.com -p 22

命令说明:当我们访问http://kaliIP:9999 可以直接访问到远程机器的 http://222.7.45:22:80所在的web服务。

参数说明:

  • -g:开启网关,使同一个局域网内的设备都可以访问。不然只有kali的IP才能访问。
  • -N:仅实现端口转发功能,不登录ssh。
  • -L:表示local,本地端口转发;
手把手教你玩转SSH端口转发
手把手教你玩转SSH端口转发

⚽️远程端口转发

将端口从服务器转发到本地主机。命令如下:

ssh -g -N -R 465:192.168.123.74:22 root@222.7.45.22 -p 22

即通过访问222.7.45:22:465等价与192.168.123.74:22

参数说明:-R:表示remote,远程端口转发。手把手教你玩转SSH端口转发

🚣🏻注意事项

  • 以上两条命令均在本地的kali中运行。
  • 需要在防火墙和安全组中开启对应的端口。

🎨SOCKS代理

无论是本地端口还是远程端口转发。他们都是一对一的关系。ssh还有另外一种端口转发策略,叫做dynamic port forwarding,使用这种策略,我们可以非常容易的搭建一个socks代理服务器,从而实现快乐上网。

语法如下:

ssh -g -N -D [本地监听端口] [ssh帐号]@[ssh服务IP] -p [ssh服务端口]

如:

ssh -C -N -D localhost:8888 root@222.7.45.22

然后在火狐浏览器网络设置如下:

手把手教你玩转SSH端口转发

访问效果如下

手把手教你玩转SSH端口转发上面的命令是在前台运行的,只是为了方便测试,如果想要它在后台一直运行着,可以加个 -f参数。

总结

相对于其他的工具,ssh更简单。如你的路由器开启了ssh功能。我们可以利用此命令直接实现映射,不需要frp花生壳等工具。快去试试吧!

更多精彩文章 欢迎关注我们

原文始发于微信公众号(kali黑客笔记):手把手教你玩转SSH端口转发

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

文章由极客之音整理,本文链接:https://www.bmabk.com/index.php/post/152408.html

(1)
小半的头像小半

相关推荐

发表回复

登录后才能评论
极客之音——专业性很强的中文编程技术网站,欢迎收藏到浏览器,订阅我们!