博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
iptables之forward
阅读量:6320 次
发布时间:2019-06-22

本文共 1782 字,大约阅读时间需要 5 分钟。

1. forward链的作用

2. 实现


1. forward链的作用

  根据数据报文的流向,若数据报文是由本机转发的则会经由以下几个链prerouting --> forward --> postrouting。

  forward实现的是数据转发的功能,当数据报文经过本机时,网卡接收数据报文至缓冲区,内核读取报文ip首部,发现报文不是送到本机时(目的ip不是本机),由内核直接送到forward链做匹配,匹配之后若符合forward的规则,再经由postrouting送往下一跳或目的主机。


2. 实现

2.1 试验环境:

iptables之forward

  试验环境如上图
  防火墙网卡1与客户端在一个物理网络,ftp服务器与http服务器与防火墙网卡2在同一物理网络。
  四台主机防火墙规则都清空,默认规则都为ACCEPT,仅充当防火墙的主机FORWARD链默认规则为DROP。且SELinux与firewalld服务关闭。

~]# systemctl stop firewalld#关闭firewalld~]# systemctl disable firewalld #禁止firewalld服务开机启动~]# iptables -P FORWARD DROP#FORWARD默认规则置为DROP~]# setenforce 0#关闭selinux

2.2 试验步骤

  1. 防火墙开启核心转发
      ~]# echo 1 > /proc/sys/net/ipv4/ip_forward
  2. 实现1.1.1.0网络与192.168.1.0网络的通信
      客户端添加路由规则:
    ~]# route add -net 192.168.1.0/24 gw 1.1.1.1

      http服务器与ftp服务器分别添加规则

    ~]# route add -net 1.1.1.0/24 gw 192.168.104
  3. 开放1.1.1.0网络对192.168.1.0网络的回显请求

    ~]# iptables -A FORWARD -s 1.1.1.0/24 -d 0/0 -p icmp --icmp-type 8 -j ACCEPT#放行1.1.1.0网络的主机对任意主机的回显请求(ping请求)~]# iptables -A FORWARD -s 0/0 -d 1.1.1.0/24 -p icmp --icmp-type 0 -j ACCEPT#开启任意主机至1.1.1.0网络主机的ping回显响应(ping响应)

    完成操作后如下图:

    iptables之forward
    iptables之forward
    iptables之forward
      若基于状态追踪机制实现以上功能则方法如下:

    ~]# iptables -A FORWARD -m state --state ESTABLISHED -j ACCEPT#对状态是ESTABLISHED状态的相关请求放行~]# iptables -A FORWARD -s 1.1.1.0/24 -p icmp --icmp-type 8 -m state --state NEW -j ACCEPT#放行来自1.1.1.0网络,状态是NEW的icmp回显请求(ping请求)

    完成后效果同上图(需事先清空防火墙)

  4. 基于状态追踪机制实现1.1.1.0网络对192.168.1.0网络80、21端口的请求(需服务器支持状态追踪机制)
    ~]# iptables -R FORWARD 1 -m state --state ESTABLISHED,RELATED -j ACCEPT#把第3步forward链第一条规则修改为放行已经连接状态地址的连接和相关联的连接~]# modprobe nf_conntrack_ftp#ftp服务器加载nf_conntrack_ftp模块~]# lsmod | grep ^nf_conntrack_ftp#查看已加载模块中是否有nf_conntrack_ftpnf_conntrack_ftp       12049  0~]# iptables -A FORWARD -s 1.1.1.0/24 -d 0/0 -p tcp -m multiport --dport 21,80 -m state --state NEW -j ACCEPT

    iptables之forward

转载于:https://blog.51cto.com/11975865/2093587

你可能感兴趣的文章
中级篇第九期:相册与拍照初使用
查看>>
我的友情链接
查看>>
lvs 一个网卡单个管理ip,多个跨网段VIP解决办法
查看>>
自定义圆角button
查看>>
超长正整数相加
查看>>
Centos 6 编译内核支持LVS-SNAT模式
查看>>
JAVA数据类型
查看>>
TCP segment of a reassembled PDU
查看>>
hdu 5195 DZY Loves Topological Sorting BestCoder Round #35 1002 [ 拓扑排序 + 优先队列 || 线段树 ]...
查看>>
【Oracle】oracle中快速判断某一日期是闰年或平年
查看>>
datatable 转 json 格式
查看>>
vs2010生成Dll文件并引用dll(C#)
查看>>
藏在兰州拉面里精益管理秘诀
查看>>
How to blog on Github
查看>>
百思不得姐 one day
查看>>
19.04.16--指针笔记-参数传递
查看>>
面向对象
查看>>
POJ1860 Currency Exchange
查看>>
关于ST-Link的internal command error问题的解决方法
查看>>
[IDE]VC2012 项目之间依赖关系取消自动Link导致的LNK2019
查看>>