zoukankan      html  css  js  c++  java
  • CentOS7下iptables配置过程

    在红帽RHEL7系统中firewalld服务取代了iptables服务,但依然可以使用iptables命令来管理内核的netfilter。

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

    1. ACCEPT:允许通过.
    2. LOG:记录日志信息,然后传给下一条规则继续匹配.
    3. REJECT:拒绝通过,必要时会给出提示
    4. 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 
  • 相关阅读:
    getJson
    mongodb在java中的查询
    Fragment
    android权限
    json输出
    Android Service
    javascript
    android
    Myeclipse启动报错: Invalid 'log4jConfigLocation' parameter
    Android-Activity生命周期
  • 原文地址:https://www.cnblogs.com/fungitive/p/9136129.html
Copyright © 2011-2022 走看看