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 
  • 相关阅读:
    ASP.NET 表单验证 Part.1(理解表单验证)
    Silverlight 简介 Part.3(设计 Siverlight 页面)
    ASP.NET 成员资格 Part.3(LoginStatus、LoginView、PasswordRecovery)
    ASP.NET 网站部署 Part.1(安装IIS、复制文件部署网站)
    ASP.NET Dynamic Data Part.1(创建动态数据应用程序)
    ASP.NET 安全模型 Part.2(SSL)
    ASP.NET MVC Part.2(扩展基本的 MVC 应用程序)
    ASP.NET 网站部署 Part.2(使用 Web 部署)
    开发高级 Web 部件
    创建 Web 部件(WebPart 类、简单的 Web 部件)
  • 原文地址:https://www.cnblogs.com/fungitive/p/9136129.html
Copyright © 2011-2022 走看看