CentOS7 - Firewalld 简单上手

Posted TricSuMer

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了CentOS7 - Firewalld 简单上手相关的知识,希望对你有一定的参考价值。

FirewallD 是 CentOS 7 服务器上默认可用的防火墙管理工具。基本上,它是 iptables 的封装,有图形配置工具firewall-config和命令行工具firewall-cmd。使用 iptables 服务,每次改动都要求刷新旧规则,并且从/etc/sysconfig/iptables读取新规则,然而 firewalld 只应用改动了的不同部分。

  • 安装

    # CentOS 7 默认已安装
    [[email protected] ~]# yum install firewalld
    # 查看是否已安装了firewalld
    [[email protected] ~]# yum list | grep firewall
  • 启动

    # 启动防火墙服务
    [[email protected] ~]# service firewalld start
    # 停止防火墙服务
    [[email protected] ~]# service firewalld stop
    # 重启防火墙服务
    [[email protected] ~]# service firewalld restart
    # 确定防火墙服务是否已经启动了
    [[email protected] ~]# ps -ef | grep firewall
  • 检查状态
    [[email protected] ~]# service firewalld status
  • 关闭或禁用防火墙
    [[email protected] ~]# service firewalld stop/disbale
  • FirewallD 相关操作
    • FirewallD 使用 服务(service)区域(zone) 来代替 iptables 的规则(rule)和链(chain)。
      • 默认情况下,有以下的区域(zone)可用:
        • drop -- 丢弃所有传入的网络数据包并且无回应,只有传出网络连接可用。
        • block -- 拒绝所有传入网络数据包并回应一条主机禁止的 ICMP 消息,只有传出网络连接可用。
        • public -- 只接受被选择的传入网络连接,用于公共区域。
        • external -- 用于启用了地址伪装的外部网络,只接受选定的传入网络连接。
        • dmz -- DMZ 隔离区,外部受限地访问内部网络,只接受选定的传入网络连接。
        • work -- 对于处在你工作区域内的计算机,只接受被选择的传入网络连接。
        • home -- 对于处在你家庭区域内的计算机,只接受被选择的传入网络连接。
        • internal -- 对于处在你内部网络的计算机,只接受被选择的传入网络连接。
        • trusted -- 所有网络连接都接受。
# 查看版本信息
[[email protected] ~]# firewall-cmd --version
0.4.4.4
# 查看帮助信息
[[email protected] ~]# firewall-cmd --help
# 查看运行状态
[[email protected] ~]# firewall-cmd --state
running
# 列出所有可用的区域
[[email protected] ~]# firewall-cmd --get-zones
work drop internal external trusted home dmz public block
# 列出所有区域的配置信息
[[email protected] ~]# firewall-cmd --list-all-zone
# 列出默认的区域 :
[[email protected] ~]# firewall-cmd --get-default-zone
public
# 查看默认区域的端口
[[email protected] ~]# firewall-cmd --list-ports
# 改变默认的区域 :
[[email protected] ~]# firewall-cmd --set-default-zone=dmz
[[email protected] ~]# firewall-cmd --get-default-zone
dmz
# 查看默认区域ssh服务是否允许,默认允许
[[email protected] ~]# firewall-cmd --query-service=ssh
yes
# 关闭服务,则无法再通过ssh连接服务器
[[email protected] ~]# firewall-cmd --remove-service=ssh
success
# 添加服务
[[email protected] ~]# firewall-cmd --add-service=ssh
success
# 查看都有哪些服务
[[email protected] ~]# firewall-cmd --list-service
dhcpv6-client ssh
# 也可以通过端口来实现 ssh通过tcp 22端口
[[email protected] ~]# firewall-cmd --query-port=22/tcp
no
# 添加端口,就可以通过ssh连接服务器了.端口和服务不冲突
[[email protected] ~]# firewall-cmd --add-port=22/tcp
success
# 移除端口
[[email protected] ~]# firewall-cmd --remove-port=22/tcp
success 

以上是关于CentOS7 - Firewalld 简单上手的主要内容,如果未能解决你的问题,请参考以下文章

CentOS7REHL7的firewalld防火墙使用简单说明

centos7搭建虚拟化云环境(简单)

Centos7 Firewalld使用

centos7 firewalld

CentOS7防火墙服务(Firewalld)关闭实战

centos7版本firewalld防火墙的基本命令配置管理