日常运维二 规则netfilter5表5链介绍 iptables filter表小案例 iptables nat表应用(上)  iptables规则备份和恢复  firewalld的9个zone firewalld关于zone的操作 firewalld关于service的操作

 日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

https://www.cnblogs.com/metoy/p/4320813.html

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——对数据包作路由选择后应用此链中的规则
(所有的数据包出来的时侯都先由这个链处理)

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

1.查看iptables规则

[root@bogon ~]# iptables -nvL
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
80697  196M ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
    0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
    1    52 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22
 105K   16M REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited
    0     0 DROP       tcp  --  *      *       192.168.1.1          192.168.1.2          tcp spt:123 dpt:80

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT 301 packets, 31573 bytes)
 pkts bytes target     prot opt in     out     source               destination         
[root@bogon ~]# 

2.重启iptables 

[root@bogon ~]# service iptables restart
Redirecting to /bin/systemctl restart  iptables.service
[root@bogon ~]# 

3.iptables保存的文件

[root@bogon ~]# cat /etc/sysconfig/iptables
# sample configuration for iptables service
# you can edit this manually or use system-config-firewall
# please do not ask us to add additional ports/services to this default configuration
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
[root@bogon ~]# 

4.清空规则(零时清空),需要真正的清空需要执行保存命令

[root@bogon ~]# iptables -F
[root@bogon ~]#

5.保存规则

[root@bogon ~]# service iptables save

6.重启服务将之前的规则加载回来

[root@bogon ~]# service iptables restart

7.默认操作的都是filter 表

[root@bogon ~]# iptables -t filter -nvL
Chain INPUT (policy ACCEPT 554 packets, 62984 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 105 packets, 10485 bytes)
 pkts bytes target     prot opt in     out     source               destination         
[root@bogon ~]# 

8.查看nat表的规则

[root@bogon ~]# iptables -t nat -nvL    
Chain PREROUTING (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain POSTROUTING (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

9.iptables -Z 清空

[root@bogon ~]# iptables -Z

10.iptables -A INPUT -s 192.168.1.1 -p tcp --sport 123 -d 192.168.1.2 --dport 80 -j DROP 或 REJECT

[root@bogon ~]# iptables -A INPUT -s 192.168.1.1 -p tcp --sport 123 -d 192.168.1.2 --dport 80 -j DROP
[root@bogon ~]# iptables -nvL
Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
   69  4988 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
    0     0 ACCEPT     icmp --  *      *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0           
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22
  564 59695 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited
    0     0 DROP       tcp  --  *      *       192.168.1.1          192.168.1.2          tcp spt:123 dpt:80

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         
    0     0 REJECT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT 4 packets, 592 bytes)
 pkts bytes target     prot opt in     out     source               destination         
[root@bogon ~]# 

11.iptables -A添加  -I 插入 删除-D

12.显示规则行号

[root@bogon ~]# iptables -nvL --line-number

13.删除规则

[root@bogon ~]# iptables -D INPUT 7

14.-P设置默认策略

iptables filter表小案例

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

15.创建shell脚步

#!/bin/bash
ipt="/usr/sbin/iptables"
$ipt -F
$ipt -P INPUT DROP
$ipt -P OUTPUT ACCEPT
$ipt -P FORWARD ACCEPT
$ipt -A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
$ipt -A INPUT -s 10.21.95.0/24 -p tcp --dport 22 -j ACCEPT
$ipt -A INPUT -p tcp --dport 22 -j ACCEPT
$ipt -A INPUT -p tcp --dport 22 -j ACCEPT

[root@bogon ~]# sh /usr/local/sbin/iptables.sh 
[root@bogon ~]# iptables -nvL
Chain INPUT (policy DROP 29 packets, 3013 bytes)
 pkts bytes target     prot opt in     out     source               destination         
   28  2056 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0            state RELATED,ESTABLISHED
    0     0 ACCEPT     tcp  --  *      *       10.21.95.0/24        0.0.0.0/0            tcp dpt:22
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:22
    0     0 ACCEPT     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0            tcp dpt:22

Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination         

Chain OUTPUT (policy ACCEPT 19 packets, 1780 bytes)
 pkts bytes target     prot opt in     out     source               destination         
[root@bogon ~]# 

16.当前主机可以ping通外部机器,外部机器拼不通当前机器

[root@bogon ~]# iptables -A INPUT -p icmp --icmp-type 8 -j DROP
[root@bogon ~]# 

  

[root@bogon ~]# ping 10.21.95.218
PING 10.21.95.218 (10.21.95.218) 56(84) bytes of data.
64 bytes from 10.21.95.218: icmp_seq=1 ttl=64 time=0.402 ms
64 bytes from 10.21.95.218: icmp_seq=2 ttl=64 time=0.332 ms
^C
--- 10.21.95.218 ping statistics ---
2 packets transmitted, 2 received, 0% packet loss, time 1000ms
rtt min/avg/max/mdev = 0.332/0.367/0.402/0.035 ms
[root@bogon ~]# 
C:Usersdell>ping 10.21.95.122

正在 Ping 10.21.95.122 具有 32 字节的数据:
请求超时。
请求超时。
请求超时。

  

[root@bogon ~]# iptables -D INPUT -p icmp --icmp-type 8 -j DROP 
[root@bogon ~]# 

iptables nat表应用(上)

 日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

1.准备两台机器,01和02

第一步,给01机器添加一块儿网卡

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

第二步添加一个区段叫自定义名字

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

第三步选中自定义名字

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

01的设置结果

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

02机器进去统一选择自定义名字,同样Lan区段

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

第四步启动两台机器

第五步给01的新网卡设置IP(零时),如果永久生效需要更改ens37的配置文件。

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

第六步把02机器的ens33网卡ifdown掉

执行ifdown ens33命令,只保留ens37内网网卡

第七步同样给02的ens37设置ip

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

第八步打开01机器的内网转发

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

第九步01上增加一条规则让100.0网段能够上网。

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

第10步设置02的网关

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

再次ping133.1发现能ping通了

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

设置dns让它可以访问网络

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

我们用windows  ping100.100还是不能连通

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

 iptables规则备份和恢复

 日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

 firewalld的9个zone

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

1.关闭iptables开启firewalled

[root@centos-01 ~]# systemctl disable iptables 
[root@centos-01 ~]# systemctl stop iptables   
[root@centos-01 ~]# systemctl enable firewalld
Created symlink from /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service to /usr/lib/systemd/system/firewalld.service.
Created symlink from /etc/systemd/system/basic.target.wants/firewalld.service to /usr/lib/systemd/system/firewalld.service.
[root@centos-01 ~]# 
[root@centos-01 ~]# systemctl start firewalld
[root@centos-01 ~]# 

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

firewalld关于zone的操作

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作

firewalld关于service的操作

日常运维二
规则netfilter5表5链介绍
iptables filter表小案例
iptables nat表应用(上)
 iptables规则备份和恢复
 firewalld的9个zone
firewalld关于zone的操作
firewalld关于service的操作