iptables

简介:

########iptables####

三表五链:

1.filter表——三个链:INPUT、FORWARD、OUTPUT
作用:过滤数据包  内核模块:iptables_filter.
2.Nat表——三个链:PREROUTING、POSTROUTING、OUTPUT
作用:用于网络地址转换(IP、端口) 内核模块:iptable_nat
3.Mangle表——五个链:PREROUTING、POSTROUTING、INPUT、OUTPUT、FORWARD
作用:修改数据包的服务类型、TTL、并且可以配置路由实现QOS内核模块:iptable_mangle(别看这个表这么麻烦,咱们设置策略时几乎都不会用到它)
4.Raw表——两个链:OUTPUT、PREROUTING
作用:决定数据包是否被状态跟踪机制处理  内核模块:iptable_raw
(这个是REHL4没有的,用的不多)


1.INPUT——进来的数据包应用此规则链中的策略
2.OUTPUT——外出的数据包应用此规则链中的策略
3.FORWARD——转发数据包时应用此规则链中的策略
4.PREROUTING——对数据包作路由选择前应用此链中的规则
(记住!所有的数据包进来的时侯都先由这个链处理)
5.POSTROUTING——对数据包作路由选择后应用此链中的规则
(所有的数据包出来的时侯都先由这个链处理)

重置desktop虚拟机,配置网络,配置yum源,关闭火墙,开启iptables服务。具体操作及效果如图:

wKioL1ku-E_wwwqSAAH9K42Yv3g020.png-wh_50

wKiom1ku-E7TthDBAAIujtMptWQ814.png-wh_50


iptables命令:


iptables
           -t ##指定表名称
           -n ###不做解析
           -L ###列出指定表中的策略
           -A ###增加策略
           --dport ##端口
           -s ###数据来源
           -j ##动作
           ACCEPT ###允许
           REJECT ###拒绝
           -N ###增加链
           -E ###修改链名称
          -X ###删除链
           -D ###删除指定策略
           -I ##插入
           -R ###修改策略
           -P ###修改默认策略
一:
    2 iptables -t filter -L  ###查看filter表中的策略

wKioL1ku-E_SI0MdAACylYakrhw154.png-wh_50

    3 iptables -t filter -nL  ###查看filter表中的策略(不做解析)

wKiom1ku-E_CE7NqAACpF92Ctr4817.png-wh_50

    4 iptables -F    ###刷掉filter表中的所有策略,当没有用-t指定表名称时默认filter表
    5 iptables -nL  #######查看filter表中的策略(不做解析)

wKiom1ku-FCh8EXXAABlQ7Z7TsI962.png-wh_50

二:

    7 iptables -A INPUT -i lo -j ACCEPT ##允许lo
    8 iptables -A INPUT -p tcp --dport 22 -j ACCEPT ###允许访问22端口
    9 iptables -A INPUT -s 172.25.254.44 -j ACCEPT ###允许250主机访问本机所有端口
   10 iptables -A INPUT -j REJECT ###拒绝所有主机的数据来源
   13 iptables -nL ##查看filter表中的策略

wKioL1ku-HWg3ydnAADIOMN3Zm0316.png-wh_50

三:
   30 iptables -N redhat ###增加链redhat 
   31  iptables -nL
   32 iptables -E redhat westos  ###修改链名称
   33  iptables -nL
   34 iptables -X westos  ###删除westos 链
   35  iptables -nL

wKiom1ku-HagM_oLAAD5qvHbxSE741.png-wh_50

wKiom1ku-HawJRccAABjBCqJLB4228.png-wh_50

四:
   38 iptables -A INPUT -j ACCEPT ###允许所有主机的数据来源
   39 iptables -A INPUT -p tcp --dport 80 -j REJECT
        ###拒绝访问80端口
   40  iptables -nL
   41 iptables -D INPUT 2 ###删除INPUT链中的第二条策略
   42  iptables -nL

wKioL1ku-Hfxb2RSAAD3onqBWO8185.png-wh_50

五:
   50 iptables -A INPUT -j ACCEPT###允许所有主机的数据来源
   51  iptables -nL
   52 iptables -I INPUT -p tcp --dport 80 -j REJECT ###插入策略到INPUT的第一条
   53  iptables -nL
   54 iptables -R INPUT 1 -p tcp --dport 80 -j ACCEPT #######修改第一条策略  
   55  iptables -nL

wKioL1ku-YHidOvTAAFN5GUE66M632.png-wh_50

六:
   57 systemctl restart iptables ###重启服务
   59 iptables -t filter -nL ###查看filter表中的策略(不做解析)
   60 iptables -P INPUT DROP  ###把INPUT表中的默认策略改为 DROP 
   61 iptables -t filter -nL

wKioL1ku-YKyAUHRAAEc5jnO9Fg673.png-wh_50


七:

   65 iptables -nL
   66 iptables -A INPUT  -m state--state RELATED,ESTABLISHED -j ACCEPT

 ##允许RELATED,ESTABLISHED状态通过防火墙

   67 iptables -nL
   68 iptables -A INPUT -p tcp --dport 22 -m state --state NEW -j ACCEPT

##允许状态是NEW访问22端口 

  69 iptables -A INPUT -p tcp --dport 80 -m state --state NEW -j ACCEPT

##允许状态是NEW访问80端口

   70 iptables -A INPUT -p tcp --dport 443 -m state --state NEW -jACCEPT

##允许状态是NEW访问443端口

   71 iptables -A INPUT -p tcp --dport 53 -m state --state NEW -j ACCEPT

##允许状态是NEW访问53端口

   72 iptables -nL
   73 iptables -A INPUT -j REJECT ##拒绝所有主机的数据来源  

    74 iptables -nL

wKiom1ku-YLz2v01AADQYenJClY567.png-wh_50

wKiom1ku-YOQJeX4AAEAMXi5NHg845.png-wh_50

wKioL1ku-YORO3CUAADRFlIvy8M797.png-wh_50



八:存储
 1 service iptables save  ####保存当前策略
 2 iptables-save
 3 iptables-save >/etc/sysconfig/iptables

wKiom1ku-gezy_ZXAACiqwtvkwo489.png-wh_50

wKioL1ku-gfi1v24AAAyn5sWI7w816.png-wh_50

九:

重置server虚拟机,配置网络

  sysctl -a | grep forward  ##查看forward状态

  vim /etc/sysctl.conf  ##打开net.ipv4.ip_forward

  sysctl -p   ##设置生效

wKioL1ku-gbxepitAAGpRBpDHpk793.png-wh_50

 iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source 172.25.254.144  ##出路由设置

测试

 连上172.25.254.144主机,显示的IP是172.25.44.11

  iptables -t nat -A PREROUTING -i eth1 -j DNAT --to-dest 172.25.44.11  ##进入路由

测试

 用172.25.44.11主机ssh连接172.25.254.144主机


 wKiom1ku-gai4w7JAAGVizKKlO8254.png-wh_50










本文转自 如何何如  51CTO博客,原文链接:http://blog.51cto.com/12778805/1931165,如需转载请自行联系原作者
目录
相关文章
|
7月前
|
网络协议 Linux 网络安全
iptables 的四表五链
iptables 是 Linux 系统上用于定义防火墙规则的工具,它通过四个表和五个链来进行配置。下面是这些表和链的详细说明: 四个表: 1. filter 表:filter 表是最常用的表,用于过滤数据包。它包含了 INPUT、OUTPUT 和 FORWARD 三个默认的链。 2. nat 表:nat 表用于网络地址转换 (NAT)。它包含了 PREROUTING、POSTROUTING 和 OUTPUT 三个默认的链。nat 表用于修改数据包的 IP 地址和端口。 3. mangle 表:mangle 表用于修改数据包的特定字段,如 TTL(生存时间)、TOS(服务类型)等。它包含了
158 1
|
8月前
|
网络协议 网络安全 网络性能优化
|
Kubernetes 网络协议 算法
Iptables 介绍与使用
Iptables 介绍与使用
334 0
Iptables 介绍与使用
|
网络协议 网络安全
|
网络协议 算法 网络安全
|
网络协议 网络安全