Centos7配置iptables规则

 iptables,是Linux下自带的一款免费的基于包过滤的防火墙工具,可以对流入、流出、流经服务的数据包进行精细的控制,而在centos7中将iptables给取消掉了,我们需要自行安装,下面介绍iptables的安装及使用。

  

  一、安装iptables

    1、查看iptables是否安装

      命令:systemctl status iptables

      

 

 

 

    2、安装iptables

      命令:yum -y install iptables-services

      

 

 

       查看安装是否成功

      

 

 

     

   3、关闭selinux与firewalld

  关闭selinux,不关闭时,iptables不读取配置文件   

  centos7中默认的防火墙是firewalld,使用iptables需要先关闭firewalld防火墙

    关闭selinux

#查看selinux
[root@serverD ~]# getenforce
Permissive
#临时关闭selinux
[root@serverD ~]# setenforce 0

    命令:vim /etc/selinux/config   修改完成后需要重启才能生效

    

 

    

 

     关闭firewalld并关闭开机自启

 

#关闭防火墙

systemctl stop firewalld

#关闭开机自启

systemctl disable firewalld

#查看防火墙状态

systemctl status firewalld

    

  二、命令

    1、iptables的命令  

      systemctl start iptables    #启动

      systemctl status iptables  #查看状态

      systemctl enable iptables  #设置开机自启

    2、iptables常用命令

      iptables -h  #查询帮助

      iptables -L -n  #

      iptables -F  #清除所有规则

 

  三、语法

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

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

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

    -A:追加到规则的最后一条

    -D:删除记录

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

    -p:规定通信协议,常用协议:tcp、udp、icmp、all

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

 

  四、案例

    1、ip过滤

      禁止192.168.200.113 IP地址的所有类型数据接入

      iptables -A INPUT ! -s 192.168.200.113 -j DROP

    2、开发端口

      iptables -A INPUT -P TCP --dport 80 -j ACCEPT  #开发80端口

    

    3、开发端口范围

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

 

    4、不允许80端口流出

      iptables -I OUTPUT -p tcp --dport 80 -j DROP

    

    5、配置配置文件

       vim /etc/sysconfig/iptables

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

      修改配置文件并重启

posted @ 2020-03-10 11:07  风之老凌  阅读(24865)  评论(0编辑  收藏  举报