首页 > 程序开发 > 综合编程 > 其他综合 >

CentOS7--iptables的配置

2017-08-24

CentOS7--iptables的配置。在红帽RHEL7系统中firewalld服务取代了iptables服务,如果我们不想用或者不习惯使用firewalld服务。

CentOS7--iptables的配置。在红帽RHEL7系统firewalld服务取代了iptables服务,如果我们不想用或者不习惯使用firewalld服务,请看下面的操作:

iptables命令中则常见的控制类型有:

ACCEPT:允许通过.
  • LOG:记录日志信息,然后传给下一条规则继续匹配.REJECT:拒绝通过,必要时会给出提示DROP:直接丢弃,不给出任何回应.

    规则链则依据处理数据包的位置不同而进行分类:

      PREROUTING:在进行路由选择前处理数据包

      INPUT:处理入站的数据包

      OUTPUT:处理出站的数据包

      FORWARD:处理转发的数据包

      POSTROUTING:在进行路由选择后处理数据包

    Iptables中的规则表:

    \

          规则表的先后顺序:raw→mangle→nat→filter

    规则链的先后顺序:

    入站顺序:PREROUTING→INPUT

    出站顺序:OUTPUT→POSTROUTING

    转发顺序:PREROUTING→FORWARD→POSTROUTING

    iptables的基本参数:

    参数 作用
    -P 设置默认策略:iptables -P INPUT (DROP|ACCEPT)
    -F 清空规则链
    -L 查看规则链
    -A 在规则链的末尾加入新规则
    -I num 在规则链的头部加入新规则
    -D num 删除某一条规则
    -s 匹配来源地址IP/MASK,加叹号"!"表示除这个IP外。
    -d 匹配目标地址
    -i 网卡名称 匹配从这块网卡流入的数据
    -o 网卡名称 匹配从这块网卡流出的数据
    -p 匹配协议,如tcp,udp,icmp
    --dport num 匹配目标端口号
    --sport num 匹配来源端口号

    实例:iptables的filter的配置:

    --关闭firewall:

    [root@localhost ~]# systemctl stop firewalld.service #停止firewall
    [root@localhost ~]# systemctl disable firewalld.service #禁止firewall开机启动

    --安装安装iptables防火墙

    [root@localhost ~]# yum install iptables-services #安装

    --清空已有的规则

    iptables -F
    iptables -X
    iptables -Z

--配置允许SSH登陆端口进入

iptables -A INPUT -p tcp -s 192.168.0.0/24 -j ACCEPT

--允许所有的ping操作

iptables -A INPUT -p tcp -s 192.168.0.0/24 -j ACCEPT

--允许本机lo通信

iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT

--设置默认的访问规则

iptables -P INPUT DROP
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

--允许关联的状态包通过

iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

--开放特定的端口,以80为例

iptables -A INPUT -p tcp --dport 80 -j ACCEP

--保存配置

service iptables save

--重启

systemctl restart iptables.service

--设置开机自启动

 systemctl enable iptables.service 
相关文章
最新文章
热点推荐