zoukankan      html  css  js  c++  java
  • Linux之iptables(五、firewall命令及配置)

    firewalld服务

    • firewalld是CentOS 7.0新推出的管理netfilter的工具
    • firewalld是配置和监控防火墙规则的系统守护进程。可以实现iptables,ip6tables,ebtables的功能
    • firewalld服务由firewalld包提供
    • firewalld支持划分区域zone,每个zone可以设置独立的防火墙规则
    • 归入zone顺序:
    • 先根据数据包中源地址,将其纳为某个zone
    • 纳为网络接口所属zone
    • 纳入默认zone,默认为public zone,管理员可以改为其它zone
    • 网卡默认属于public zone,lo网络接口属于trusted zone

    firewalld zone分类

    预定义服务

    firewalld配置

    • firewall-cmd --get-services 查看预定义服务列表
    • /usr/lib/firewalld/services/*.xml预定义服务的配置
    • 三种配置方法
    • firewall-config (firewall-config包)图形工具
    • firewall-cmd (firewalld包)命令行工具
    • /etc/firewalld 配置文件,一般不建议

    firewall-cmd 命令选项

    • --get-zones 列出所有可用区域
    • --get-default-zone 查询默认区域
    • --set-default-zone=<ZONE> 设置默认区域
    • --get-active-zones 列出当前正使用的区域
    • --add-source=<CIDR>[--zone=<ZONE>]添加源地址的流量到指定区域果无--zone= 选项,使用默认区域
    • --remove-source=<CIDR> [--zone=<ZONE>] 从指定区域中删除源地址的流量,如无--zone= 选项,使用默认区域
    • --add-interface=<INTERFACE>[--zone=<ZONE>] 添加来自于指定接口的流量到特定区域,如果无--zone= 选项,使用默认区域
    • --change-interface=<INTERFACE>[--zone=<ZONE>] 改变指定接口至新的区域,如果无--zone= 选项,使用默认区域
    • --add-service=<SERVICE> [--zone=<ZONE>] 允许服务的流量通过,如果无--zone= 选项,使用默认区域
    • --add-port=<PORT/PROTOCOL>[--zone=<ZONE>] 允许指定端口和协议的流量,如果无--zone= 选项,使用默认区域
    • --remove-service=<SERVICE> [--zone=<ZONE>] 从区域中删除指定服务,禁止该服务流量,如果无--zone= 选项,使用默认区域
    • --remove-port=<PORT/PROTOCOL>[--zone=<ZONE>] 从区域中删除指定端口和协议,禁止该端口的流量,如果无--zone= 选项,使用默认区域--reload 删除当前运行时配置,应用加载永久配置
    • --list-services 查看开放的服务
    • --list-ports 查看开放的端口
    • --list-all [--zone=<ZONE>] 列出指定区域的所有配置信息,包括接口,源地址,端口,服务等,如果无--zone= 选项,使用默认区域

    firewall-cmd 命令示例

    • 查看默认zone

    firewall-cmd --get-default-zone

    • 默认zone设为dmz

    firewall-cmd --set-default-zone=dmz

    • 在internal zone中增加源地址192.168.0.0/24的永久规则

      firewall-cmd --permanent --zone=internal --add-source=192.168.0.0/24

    • 在internal zone中增加协议mysql的永久规则

      firewall-cmd --permanent –zone=internal --add-service=mysql

    • 加载新规则以生效

      firewall-cmd --reload

    实验:配置firewalld

    systemctl mask iptables
    systemctl mask ip6tables
    systemctl status firewalld
    systemctl enable firewalld
    systemctl start firewalld
    firewall-cmd --get-default-zone
    firewall-cmd --set-default-zone=public
    firewall-cmd --permanent --zone=public --list-all
    firewall-cmd --permanent --zone=public --add-port 8080/tcp
    firewall-cmd ---reload

  • 相关阅读:
    为什么说 LINQ 要胜过 SQL
    统一日志系统 Log4Net/ExceptionLess
    使用Advanced Installer制作IIS安装包(二:配置安装包依赖项和自定义dll)
    使用Advanced Installer制作IIS安装包(一:配置IIS和Web.config)
    安全的API接口解决方案
    任务调度及远端管理(基于Quartz.net)
    关于.NET参数传递方式的思考
    C# Parsing 类实现的 PDF 文件分析器
    .NET的弹性及瞬间错误处理库Polly
    Mybatis官方网站
  • 原文地址:https://www.cnblogs.com/duanxin1/p/9855667.html
Copyright © 2011-2022 走看看