Linux端口转发的几种常用方法

1 背景

  端口转发是一个常用的功能,不管是在服务器运维还是在渗透领域,都需要用到。在近期遇到一个问题就是一个服务的端口不能进行配置,但是由于出口硬件防火墙的原因,为了不修改硬件防火墙的策略,所以只能在本地做端口转发。因此尝试和寻找了以下的几种方法。

2 iptables和firewall

  • iptables

  iptables是我第一个想到的方法,但却是最后一个尝试的,因为我对iptables并不熟悉。

1、打开IP转发功能。

  linux的IP转发功能是默认关闭的,而且根据很多安全加固策略以及安全基线的要求,IP转发功能必须关闭,所以需要先打开IP转发。需要长期使用的话则写入到sysctl的配置文件中。

echo 1 >/proc/sys/net/ipv4/ip_forward
sysctl -w /etc/sysctl.conf

2、配置iptables,在PERROUTING链中做DNAT。需要长期使用的话需要注意保存配置。

iptables -t nat -A PEROUTING -p tcp -i eth0 --dport 22222 -j DNAT --to x.x.x.x:22
service iptables save

  远程端口转发的还可以参考这里:

http://www.jb51.net/LINUXjishu/401922.html

  • firewall

  firewall是CentOS 7上替代iptables的服务。使用起来比iptables要稍微简单一点,直接使用firewall的端口转发就能实现。firewall我也不熟悉,参考了http://www.centoscn.com/CentOS/Intermediate/2015/0313/4879.html

1、打开端口转发功能

firewall-cmd --zone=public --add-forward-port=port=22222:proto=tcp:toport=22

  在不增加toaddr的情况下,默认就是转发到自己的IP上。

  如果需要长期使用则增加--permanent加入到永久规则即可。

3 rinetd端口映射转发工具

1、下载并解压rinetd

wget

2、安装rinetd

make
make install

  安装过程可能遇到man目录不存在的问题,手动创建即可完成安装。

3、创建/etc/rinetd.conf并写入转发规则

  配置文件中的规则格式为:

[Source Address] [Source Port] [Destination Address] [Destination Port]

源地址  源端口   目的地址  目的端口

  使用iptables的命令要更直接一些。但写入规则的时候需要注意源端口不能被其他服务占用,并且也需要在iptables上打开。

4、运行rinetd

  运行后即可发现,rinetd已经绑定了指定的端口。

  如果需要长期使用,把命令写入开机启动即可。

  更多rinetd的参考:Payday Loans | Bad Credit Accepted | Boutell.co.uk和http://blog.csdn.net/paulluo0739/article/details/7023711 

4 lcx端口转发

  lcx是渗透中经常用的工具,使用简单。但一般用于Windows,由于没有shell版本的lcx,编译、安装等环节较为麻烦,因此比较少见。因此,lcx虽然是我第一个想到的实现方法,但却是实现的最麻烦的。

1、网上找到代码见附件

  来源和参考:http://www.oldrss.com/article/hacker-00205.html

2、gcc编译

gcc lcx.c -o lcx

  CentOS6.X & CentOS 7.0测试可以编译成功。

3、运行lcx

  使用方式较为简单,根据提示运行即可。

lcx -m 1 -h1 0.0.0.0 -p1 22222 -h2 127.0.0.1 -p2 22 -log /tmp/lcx.log

  如果服务连接较多,建议不要记录日志,因为日志中会记录传输的所有数据,这样将会占用大量的空间,并且也可能会影响传输。

  如果需要长期使用,设置开机启动并置入后台即可。

5 总结

 整体上来看,iptables和firewall是最简单的方案,不需要安装任何的程序和服务,系统自带。rinetd和lcx也都受到iptables和firewall的限制,必须要其打开端口。

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大柳树伯爵

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值