Linux之SSH端口转发及相关实验

本文详细介绍了SSH端口转发的四大类型:本地转发、远程转发、动态端口转发和X协议转发,以及相关实验,包括模拟SSH本地端口转发以访问内网Telnet服务器,远程端口转发和动态端口转发的实现。通过实验展示了如何利用SSH端口转发突破网络限制,安全访问受限服务。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

一、SSH端口转发相关概念

通过上一节的学习我们知道,SSH会自动加密和解密所有SSH客户端与服务端之间的网络数据。但是,SSH还能够将其他TCP端口的网络数据通SSH链接来转发,并且自动提供了相应的加密及解密服务。这一过程也被叫做”隧道”(tunneling),这是因为SSH为其他TCP链接提供了一个安全的通道来进行传输而得名。例如,Telnet ,SMTP ,LDAP这些TCP应用均能够从中得益,避免了用户名,密码以及隐私信息的明文传输。而与此同时,如果工作环境许中的防火墙限制了一些网络端口的使用,但是允许SSH的连接,也能够将通过将TCP用端口转发来使用SSH进行通讯。

1.1 SSH端口转发的两大功能

  • 加密SSH Client端至SSH Server端之间的通讯数据。
  • 突破防火墙的简直完成一些之前无法建立的TCP连接。

1.2 SSH端口转发提供的类型有:

  • 本地转发
  • 远程转发
  • 动态转发
  • X协议转发

本地转发

  当外网用户想要临时访问公司内部的不安全TCP协议服务器时,由于防火墙限制无法直接访问,

  但可利用先SSH连接至公司内网的SSH服务器在转发至不安全的TCP协议服务器。

  由于作为转发的SSH服务器与要访问的不安全TCP协议服务器在同一网络环境内,
  
  故这种连接就叫本地转发。

格式:
  • ssh -L localprot:remotehost:remotehostport sshserver

    localprot:指定本机端口
    
    remotehost:指定远程不安全协议的服务器地址
    
    remotehostport:远程不安全协议的服务器地址端口
    
    sshserver:SSH服务器地址
    
  • options:

    -f 后台启用

    -N 不打开远程shell,处于等待状态

    -g 启用网关功能

示例:
    ssh -L 9527:telnetsrv:23  -N sshsrv

    telnet 127.0.0.1 9527

    当访问本机的9527端口时,被加密后转发到sshsrv的ssh服务,再解密被转发到telnetsrv:23
大致流程:

 Data <–> localhost:9527 <–>localhost:xxxxx <–> sshsrv:22

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值