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

SSH 端口转发小结

作者头像
beginor
发布2020-08-10 15:20:02
1.5K0
发布2020-08-10 15:20:02
举报

SSH 端口转发小结

Linux 的 SSH 服务不仅仅能够远程登录和管理,还可以在本地计算机和服务器之间建立 TCP 通道, 实现代理、内网穿透、暴露内网服务等功能,简单可靠。

动态端口转发

将向本地指定端口发送的请求通过 SSH 服务器向外转发。 比如将 SSH 服务器作为一个代理服务器。

代码语言:javascript
复制
#!/bin/bash -e
ssh -C -T -N -D 127.0.0.1:8088 ubuntu@192.168.6.67

127.0.0.1:8088 作为一个 SOCKS4/5 的代理, 比如 curl --proxy socks5://127.0.0.1:8088 https://www.google.com

参数说明:

  • C 请求压缩所有数据;
  • T 禁用模拟终端;
  • N 不执行远程指令, 常用于仅做端口转发;
  • D [local_ip:]port 动态端口转发, 实现代理服务器, 支持 SOCKS4 和 SOCKS5 协议;

本地端口转发

将远程服务器的指定端口通过 SSH 服务器转发到本地计算机端口。 比如将内网服务器的远程桌面 (192.168.6.71:3389) 经过 SSH 服务器 (192.168.6.67) 转发到本地计算机的 3390 端口 (127.0.0.1:3390) 。

代码语言:javascript
复制
#!/bin/bash -e
ssh -C -T -N -L 127.0.0.1:3390:192.168.6.71:3389 ubuntu@192.168.6.67

访问 127.0.0.1:3390 就等于访问 192.168.6.71:3389

参数说明:

  • C 压缩所有数据;
  • T 禁用模拟终端;
  • N 不执行远程指令, 常用于仅做端口转发;
  • L [local_ip:]local_port:remote_ip:remote_port 本地端口和远程服务器IP端口的 TCP 隧道;

远程端口转发

将本地计算机的指定端口经过 SSH 服务器转发到远程服务器的指定端口。 比如将本地局域网计算机的服务 (IIS、NGINX、DB) 等经过 SSH 服务器暴露出去。

代码语言:javascript
复制
#!/bin/bash -e
ssh -T -N -R 192.168.6.67:9090:127.0.0.1:9090 ubuntu@192.168.6.67

访问 192.168.6.67:9090 就等于访问 127.0.0.1:9090

参数说明:

  • C 压缩所有数据;
  • T 禁用模拟终端;
  • N 不执行远程指令, 常用于仅做端口转发;
  • R [ssh_server_ip:]ssh_server_port:local_ip:local_port SSH 服务器到本地/局域网计算机的的 TCP 隧道;

如果不成功, SSH 服务可能默认没有启用远程端口转发, 需要编辑 SSH 服务器上的 /etc/ssh/sshd_confif 文件, 添加或者编辑 GatewayPorts yes 选项, 并重启 sshd 服务。

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

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

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

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

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • SSH 端口转发小结
    • 动态端口转发
      • 本地端口转发
        • 远程端口转发
        相关产品与服务
        文件存储
        文件存储(Cloud File Storage,CFS)为您提供安全可靠、可扩展的共享文件存储服务。文件存储可与腾讯云服务器、容器服务、批量计算等服务搭配使用,为多个计算节点提供容量和性能可弹性扩展的高性能共享存储。腾讯云文件存储的管理界面简单、易使用,可实现对现有应用的无缝集成;按实际用量付费,为您节约成本,简化 IT 运维工作。
        领券
        问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档