firewall 实现端口请求转发功能

**

需求:

**
在这里插入图片描述
如上图所示,公司需要把请求给目标服务器,但是中间需要加一个中转的服务器
**

实现方式:

**
一、iptables 手敲
二、本文重点 ,通过 firewall 实现
由于不能上传附件,请将下面的命令编辑为 .sh 格式的脚本

#!/bin/bash
cp -p /usr/lib/firewalld/zones/drop.xml /etc/firewalld/zones/
systemctl start firewalld

firewall-cmd --add-masquerade --permanent
#注意这里开放的端口 是所有开放了. 要注意结合自己的情况哦
firewall-cmd --zone=public --add-port=0-65535/tcp --permanent
firewall-cmd --zone=public --add-port=0-65535/udp --permanent
firewall-cmd --reload
#firewall-cmd --permanent --zone=public --add-masquerade
firewall-cmd --add-masquerade
**firewall-cmd --add-forward-port=port=7005:proto=tcp:toaddr=221.130.33.92:toport=7890 --permanent**
**firewall-cmd --reload**

如下图:
在这里插入图片描述

最重要的命令:
firewall-cmd --add-forward-port=port=7005:proto=tcp:toaddr=221.130.33.92:toport=7890 --permanent
firewall-cmd --reload

说明:
7005: 是中转服务器的端口
221.130.33.92 : 目标服务器的IP
7890 : 目标服务器的端口
tips: 根据自己的业务改变相关的IP和端口即可

启动脚本 sh duankou.sh
出现 success 就成功了.

启动过程中可能会报错:
在这里插入图片描述
执行 红色框内的命令即可

如何新增规则:

方式一
iptables -t nat -A PREROUTING -p tcp --dport 7006-j DNAT --to-destination 221.130.33.92:7890  
service iptables save     
service iptables restart
方式二
firewall-cmd --add-forward-port=port=7005:proto=tcp:toaddr=221.130.33.92:toport=7890 --permanent
firewall-cmd --reload

如何测试是否生效

telnet ip port 即可

如何查看已生效的规则

iptables -t nat -nL --line-number 

在这里插入图片描述

如何删除规则

方式一
iptables -t nat -D PRE_public_allow 3000 
service iptables save     
service iptables restart
*说明 3000 数字表示序号. 在上图中的num ,比如要删除上图中的1 ,则改为1即可*

方式二
firewall-cmd --remove-forward-port=port=7005:proto=tcp:toaddr=221.130.33.92:toport=7890 --permanent
firewall-cmd --reload

如何查看规则的本地文件:
vim /etc/sysconfig/iptables
这个文件很重要, service iptables restart 他加载的就是这个文件


本文的功能实现已结束,但是本人知其然不知其所以然, 所以后面会更新为什么这样做


补充firewall 命令
查看

firewall-cmd --list-all

在这里插入图片描述
删除 ports

firewall-cmd --zone=public --remove-port=0-65535/tcp --permanent

在这里插入图片描述
新增 ports

firewall-cmd --zone=public --add-port=7011/tcp --permanent

在这里插入图片描述
单独查看 ports

 firewall-cmd --list-ports

以上命令都需要reload才能生效*

firewall-cmd --reload

点击查看 firewall 操作命令

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

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值