iptables

防火墙相关概念

防火墙分类

逻辑上讲,防火墙分为主机防火墙和网络防火墙:

  • 主机防火墙:针对单个主机进行防护
  • 网络防火墙:一般位于网络的边缘,对区域内的主机进行防护

主机防火墙和网络防火墙并不冲突,一个主内,一个主外

物理上讲,防火墙分为硬件防火墙和软件防火墙:

  • 硬件防火墙:通过硬件实现防火墙的功能。
    • 优点:性能高
    • 缺点:价格贵
  • 软件防火墙:通过软件处理逻辑实现防火墙的功能。
    • 优点:价格低
    • 缺点:性能低

规则:匹配条件+动作

  • 匹配条件:基本匹配条件和扩展匹配条件

    • 基本匹配条件:
    • 源目IP
    • 扩展匹配条件:除了基本匹配条件还有扩展匹配条件,它也是netfilter中的一部分,只是以模块的形式存在。如果需要使用这些扩展条件,则需要依赖对应的扩展模块。
    • 源目端口
  • 动作:处理动作在iptables中被称为target,动作也分为基本动作和扩展动作,下面仅列出常用的动作:

    • ACCEPT
    • DROP
    • REJECT
    • SNAT
    • MASQUERADE
    • DNAT
    • REDIRECT
    • LOG
    • 1550285271788

查看规则命令

iptables -L

iptables -t filter -L

iptables -t filter -L INPUT

iptables -L INPUT

iptables -vL INPUT

iptables -nvL INPUT

iptables --line-number -nvL INPUT
默认规则在如何查看

配置规则:CRUD

添加规则

注意:添加规则时,规则的顺序很重要

  • 在指定表的指定链的尾部添加

    语法:iptables -t 表名 -A 链名 匹配动作 -j 动作

iptables -t filter -A INPUT -s 172.16.126.13 -j DROP
  • 在指定表的指定链的首部添加

    语法:iptables -t 表名 -I 链名 匹配动作 -j 动作

iptables -t filter -I INPUT -s 172.16.126.13 -j DROP
  • 在指定表的指定链的任意位置添加

    语法:iptables -t 表名 -I 链名 规则序号 匹配动作 -j 动作

iptables -t filter -I INPUT -s 172.16.126.13 -j DROP
  • 设置指定表的指定链的默认动作

    语法:iptables -t 表名 -P 链名 动作

    iptables -t filter -P FORWARD DROP
删除规则

注意如果没有保存规则,删除规则慎重使用

  • 根据规则序号删除规则

    语法:iptables -t filter -D 链名 规则序号

    iptables -t filter -D INPUT 1

    表示删除filter表中INPUT链中序号为1的规则

  • 根据规则的匹配条件与处理动作进行删除规则

    语法:iptables -t filter -D INPUT 匹配条件 -j 处理动作

    iptables -t filter -D INPUT -s 172.16.126.13 -j DROP

    表示删除filter表中INPUT链中源地址为172.16.126.13并且处理动作为DROP的规则

  • 删除指定表的指定链的所有规则

    语法 :iptables -t 表名 -F 链名

    iptables -t filter -F INPUT

    表示删除filter表中的INPUT链中的所有规则

  • 删除指定表中的所有规则

    语法:iptables -t 表名 -F

    iptables -t filter -F

    表示删除filter表中所有链中的所有规则

修改规则

主要有2种方式:

  • -R选项只能修改动作,而且使用-R时需要同时指定规则中的链和及规则对应的序号,且规则中原匹配条件不能省略。否则修改后规则的匹配条件可能会变成0.0.0.0/0.

    语法:iptables -t 表名 -R 链名 规则序号 匹配条件 -j 动作

    iptables -t filter -R INPUT 3 -s 172.16.126.13 -j DROP

    表示:修改filter表中INPUT链的第3条规则,将动作修改为DROP,修改动作时,-s 172.16.126.13这条原匹配规则不能省略。

  • 先通过序号删除指定规则,再在原序号处添加指定规则

注意如果要修改规则

保存规则

将iptables规则保存到/etc/sysconfig/iptables文件中:

service iptables save

1550307976429

#配置好yum源以后安装iptables-service
yum install -y iptables-services
#停止firewalld
systemctl stop firewalld
#禁止firewalld自动启动
systemctl disable firewalld
#启动iptables
systemctl start iptables
#将iptables设置为开机自动启动,以后即可通过iptables-service控制iptables服务
systemctl enable iptables

1550308011123





posted @ 2019-02-18 11:30  whatislinux  阅读(107)  评论(0编辑  收藏  举报