0
  • 聊天消息
  • 系统消息
  • 评论与回复
登录后你可以
  • 下载海量资料
  • 学习在线课程
  • 观看技术视频
  • 写文章/发帖/加入社区
会员中心
创作中心

完善资料让更多小伙伴认识你,还能领取20积分哦,立即完善>

3天内不再提示

Linux端口转发的常用方法,来绕过网络访问限制触及目标系统

如意 来源:Bypass 作者:Bypass 2020-09-14 15:07 次阅读

在一些实际的场景里,我们需要通过利用一些端口转发工具,比如系统自带的命令行工具或第三方小软件,来绕过网络访问限制触及目标系统。

本文总结了Linux端口转发的一些常用方法,欢迎补充和指正。

01、SSH 端口转发

SSH 提供了一个非常有意思的功能,就是端口转发,它能够将其他 TCP 端口的网络数据通过 SSH 链接来转发,并且自动提供了相应的加密及解密服务。

(1)本地端口转发

ssh -fgN -L 2222:localhost:22 localhost

(2)远程端口转发

ssh -fgN -R 2222:host1:22 localhost

(3)动态转发

ssh -fgN -D 12345 root@host1

2、iptables 端口转发

CentOS 7.0 以下使用的是iptables,可以通过iptables实现数据包的转发。

(1)开启数据转发功能

vi /etc/sysctl.conf

#增加一行 net.ipv4.ip_forward=1

//使数据转发功能生效

sysctl -p

(2)将本地的端口转发到本机端口

iptables -t nat -A PREROUTING -p tcp --dport 2222 -j REDIRECT --to-port 22

(3)将本机的端口转发到其他机器

iptables -t nat -A PREROUTING -d 192.168.172.130 -p tcp --dport 8000 -j DNAT --to-destination 192.168.172.131:80

iptables -t nat -A POSTROUTING -d 192.168.172.131 -p tcp --dport 80 -j SNAT --to 192.168.172.130#清空nat表的所有链iptables -t nat -F PREROUTING

03、firewall 端口转发

CentOS 7.0以上使用的是firewall,通过命令行配置实现端口转发。

(1)开启伪装IP

firewall-cmd --permanent --add-masquerade

(2)配置端口转发,将到达本机的12345端口的访问转发到另一台服务器的22端口。

firewall-cmd --permanent --add-forward-port=port=12345:proto=tcp:toaddr=192.168.172.131:toport=22

(3)重新载入,使其失效。

firewall-cmd --reload

04、rinetd 端口转发

rinetd是一个轻量级TCP转发工具,简单配置就可以实现端口映射/转发/重定向。

(1)源码下载

wget https://li.nux.ro/download/nux/misc/el7/x86_64/rinetd-0.62-9.el7.nux.x86_64.rpm

(2)安装rinetd

rpm -ivh rinetd-0.62-9.el7.nux.x86_64.rpm

(3)编辑配置文件

vi rinetd.conf

0.0.0.0 1234 127.0.0.1 22

(4)启动转发

rinetd -c /etc/rinetd.conf

05、ncat 端口转发

netcat(简称nc)被誉为网络安全界的”瑞士军刀“,一个简单而有用的工具,这里介绍一种使用netcat实现端口转发的方法。

(1)安装ncat

yum install nmap-ncat -y

(2)监听本机 9876 端口,将数据转发到 192.168.172.131的 80 端口

ncat --sh-exec “ncat 192.168.172.131 80” -l 9876 --keep-open

06、socat 端口转发

socat是一个多功能的网络工具,使用socat进行端口转发。

(1)socat安装

yum install -y socat

(2)在本地监听12345端口,并将请求转发至192.168.172.131的22端口。

socat TCP4-LISTEN:12345,reuseaddr,fork TCP4:192.168.172.131:22

07、 portmap 端口转发

Linux 版的lcx,内网端口转发工具。

(1)下载地址:

http://www.vuln.cn/wp-content/uploads/2016/06/lcx_vuln.cn_.zip

(2)监听本地1234端口,转发给192.168.172.131的22端口

。/portmap -m 1 -p1 1234 -h2 192.168.172.131 -p2 22

08、portfwd端口转发

portfwd是meterpreter中内置的功能,也提供了单机版,用于TCP/UDP端口转发服务

Github 项目地址:

https://github.com/rssnsj/portfwd

(1)下载编译

git clone https://github.com/rssnsj/portfwd.git

cd portfwd/src

make

(2)将本地的12345端口转发到192.168.172.131:22

。/tcpfwd 0.0.0.0:12345 192.168.172.131:22

09、NATBypass端口转发

一款lcx(htran)在golang下的实现

Gihub项目地址:

https://github.com/cw1997/NATBypass

(1)内网主机主动连接外网主机打通隧道

Linux端口转发的常用方法,来绕过网络访问限制触及目标系统


责编AJX

声明:本文内容及配图由入驻作者撰写或者入驻合作网站授权转载。文章观点仅代表作者本人,不代表电子发烧友网立场。文章及其配图仅供工程师学习之用,如有内容侵权或者其他违规问题,请联系本站处理。 举报投诉
  • Linux
    +关注

    关注

    87

    文章

    11030

    浏览量

    207256
  • 操作系统
    +关注

    关注

    37

    文章

    6404

    浏览量

    122309
  • 端口
    +关注

    关注

    4

    文章

    857

    浏览量

    31733
收藏 人收藏

    评论

    相关推荐

    Linux中检查端口方法

    无论你的服务器是用的Linux还是桌面系统,了解系统开放的端口,和正在使用的端口,在各种情况下都会有所帮助。
    发表于 11-25 15:32 4201次阅读
    <b class='flag-5'>Linux</b>中检查<b class='flag-5'>端口</b>的<b class='flag-5'>方法</b>

    公网访问ARM嵌入式Linux系统方法

    公网访问ARM嵌入式Linux系统实验室里的ARM嵌入式Linux系统,只能在局域网内访问,怎样
    发表于 12-16 07:07

    Holer外网访问ARM嵌入式Linux系统方法

    公网访问ARM嵌入式Linux系统实验室里的ARM嵌入式Linux系统,只能在局域网内访问,怎样
    发表于 12-16 07:18

    IDE如何检测新的网络端口

    无法访问串行端口,所以我想到也许我可以将草图上传到网络端口。不幸的是,当我在 Linux 容器中运行 IDE 时,它无法识别
    发表于 02-23 06:18

    Linux常用网络命令

    Linux常用网络命令 Linux常用网络命令  计算机
    发表于 01-18 12:47 1133次阅读

    端口映射和端口转发的区别?

    端口转发,有时被叫做隧道,是安全壳为网络安全通信使用的一种方法端口转发
    发表于 12-04 17:31 3.7w次阅读
    <b class='flag-5'>端口</b>映射和<b class='flag-5'>端口</b><b class='flag-5'>转发</b>的区别?

    Linux教程之网络配置文件与配置方法常用网络操作命令

    本文档的主要内容详细介绍的是Linux教程之网络配置文件与配置方法常用网络操作命令详细资料免费下载主要
    发表于 11-07 11:49 9次下载
    <b class='flag-5'>Linux</b>教程之<b class='flag-5'>网络</b>配置文件与配置<b class='flag-5'>方法</b>及<b class='flag-5'>常用</b><b class='flag-5'>网络</b>操作命令

    Linux开放端口和关闭端口方法

    Linux开放端口和关闭端口方法如下
    发表于 05-18 09:14 1w次阅读
    <b class='flag-5'>Linux</b>开放<b class='flag-5'>端口</b>和关闭<b class='flag-5'>端口</b>的<b class='flag-5'>方法</b>

    如何验证Linux系统网络端口通不通

    我们在 linux 系统网络调试中经常会遇到需要测试验证对应的端口是否正常的场景, 接下来讲解一下常用
    的头像 发表于 05-12 10:28 1552次阅读
    如何验证<b class='flag-5'>Linux</b><b class='flag-5'>系统</b>中<b class='flag-5'>网络</b><b class='flag-5'>端口</b>通不通

    Linux常用的6种SSH身份验证方法

    SSH(Secure Shell)是一种网络协议,用于在不安全的网络上安全地运行网络服务。在 Linux 中,SSH 是一种常用的远程
    的头像 发表于 05-12 14:42 2697次阅读

    探索物联网HMI的端口转发和NAT功能

    端口转发和NAT功能常用于内网穿透,实现内部网络和外部网络之间的数据传输。本文以内网IP摄像头为例,介绍如何通过虹科物联网HMI的
    的头像 发表于 07-20 10:00 456次阅读
    探索物联网HMI的<b class='flag-5'>端口</b><b class='flag-5'>转发</b>和NAT功能

    探索物联网HMI的端口转发和NAT功能

    点击蓝字关注我们前言端口转发和NAT功能常用于内网穿透,实现内部网络和外部网络之间的数据传输,工作人员通过外部
    的头像 发表于 07-31 22:20 570次阅读
    探索物联网HMI的<b class='flag-5'>端口</b><b class='flag-5'>转发</b>和NAT功能

    端口转发端口映射的区别 端口映射和端口转发的各自意义?

    转发是一种网络中继技术,通过在网络中的一台设备上配置端口转发规则,将进来的流量转发到指定的
    的头像 发表于 11-22 17:41 4454次阅读

    什么是网络端口常用网络端口及其作用

    什么是网络端口常用网络端口及其作用  网络端口是用
    的头像 发表于 12-07 09:53 1544次阅读

    宏集干货丨探索物联网HMI的端口转发和NAT功能

    端口转发和NAT功能常用于内网穿透,实现内部网络和外部网络之间的数据传输,工作人员通过外部网络便
    的头像 发表于 01-17 11:01 290次阅读
    宏集干货丨探索物联网HMI的<b class='flag-5'>端口</b><b class='flag-5'>转发</b>和NAT功能