美文网首页
centos7之iptables@2020-01-09

centos7之iptables@2020-01-09

作者: dataHunter | 来源:发表于2020-01-09 09:49 被阅读0次

    iptables也叫netfilter,是Linux下自带的一款免费且优秀的基于包过滤的防火墙工具,他的功能十分强大,使用也非常灵活,可以对流入、流出、流经服务器的数据包进行精细的控制。但是iptables在CentOS7的版本上已经被阉割掉了,我们需要自行安装,以下是在CentOS7下安装iptables和使用方式。

    一、安装iptables
    1.1、查看是否安装成功
    命令:systemctl status iptables

    输出结果表示没有iptables的相关服务,我们需要安装

    1.2、安装iptables
    命令:yum install iptables-services

    1.3、检查是否安装成功
    命令:systemctl status iptables

    输出结果表示已经安装了iptables但是还没有启动

    1.4、启动iptables
    命令:systemctl start iptables.service

    再次查看状态,输出结果表示已经成功启动iptables

    1.5、关闭SELINUX
    这里需要关闭SELINUX,因为当SELINUX不关闭时,iptables不读取配置文件,关于如何关闭SELINUX建议大家浏览我的原创博文Linux:CentOS7下关闭SELINUX

    二、命令
    2.1、系统命令
    systemctl start iptables #启动

    systemctl status iptables #查看运行状态

    systemctl restart iptables.service #重启

    systemctl stop iptables.service #停止

    systemctl enable iptables.service #设置开机启动

    systemctl disable iptables.service #禁止开机启动

    2.2、常用命令
    iptables -h #查询帮助

    iptables -L -n #列出(filter表)所有规则

    iptables -L -n --line-number #列出(filter表)所有规则,带编号

    iptables -L -n -t nat #列出(nat表)所有规则

    iptables -F #清除(filter表)中所有规则

    iptables -F -t nat #清除(nat表)中所有规则

    service iptables save #保存配置(保存配置后必须重启iptables)

    systemctl restart iptables.service #重启

    三、语法
    3.1、filter表解析
    filter表是iptables默认使用的表,负责对流入、流出本机的数据包进行过滤,该表中定义了3个链,分别是:INPUT、OUTPUT、FORWARD

    INPUT:过滤进入主机的数据包

    OUTPUT:处理从本机出去的数据包

    FORWARD:负责转发流经本机但不进入本机的数据包,起到转发作用

    3.2、iptables常用语法
    -A:追加到规则的最后一条

    -D:删除记录

    -I:添加到规则的第一条

    -p:(proto)规定通信协议,常见的协议有:tcp、udp、icmp、all

    -j:(jump)指定要跳转的目标,常见的目标有:ACCEPT(接收数据包)、DROP(丢弃数据包)、REJECT(重定向)三种,但是一般不适用重定向,会带来安全隐患

    四、常见案例
    4.1、IP过滤
    4.1.1、禁止192.168.1.3 IP地址的所有类型数据接入
    iptables -A INPUT ! -s 192.168.1.3 -j DROP

    4.2、开放端口
    4.2.1、开放端口
    iptables -A INPUT -p tcp --dport 80 -j ACCEPT #开放80端口

    4.2.2、开放端口范围
    iptables -I INPUT -p tcp --dport 22:80 -j ACCEPT #开发22-80范围的端口

    4.2.3、不允许80端口流出
    iptables -I OUTPUT -p tcp --dport 80 -j DROP
    ————————————————
    版权声明:本文为CSDN博主「???_12138」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/qzc70919700/article/details/79784566

    相关文章

      网友评论

          本文标题:centos7之iptables@2020-01-09

          本文链接:https://www.haomeiwen.com/subject/jgtyactx.html