Centos7的Firewalld防火墙基础命令详解

1. 前言

CentOS 7是Linux操作系统的一种发行版本,它默认使用Firewalld作为防火墙,而Firewalld有其自身独特的命令和操作方式。在本文中,我将为大家详细介绍CentOS 7中Firewalld的基础命令。

2. Firewalld防火墙介绍

Firewalld是CentOS 7的默认防火墙,它是一个动态的防火墙管理工具,可以管理防火墙规则和状态。Firewalld采用D-Bus消息机制进行通信,可以动态地在运行时添加、删除或更改防火墙规则。

2.1 防火墙状态

Firewalld的状态分为4种,其中3种是基本状态,另外1种是高级状态。它们分别是:

running:表示防火墙正在运行

stopped:表示防火墙已停止运行

enabled:表示防火墙在启动时将启动

disabled:表示防火墙在启动时不会启动

可以通过以下命令查看防火墙的状态:

systemctl status firewalld

如果防火墙正在运行,输出结果会类似于这样:

● firewalld.service - firewalld - dynamic firewall daemon

Loaded: loaded (/usr/lib/systemd/system/firewalld.service; enabled; vendor preset: enabled)

Active: active (running) since Mon 2020-10-26 23:41:45 CST; 2h 7min ago

Docs: man:firewalld(1)

Main PID: 2274 (firewalld)

CGroup: /system.slice/firewalld.service

└─2274 /usr/bin/python -Es /usr/sbin/firewalld --nofork --nopid

Oct 26 23:41:44 localhost.localdomain systemd[1]: Starting firewalld - dynamic firewall daemon...

Oct 26 23:41:45 localhost.localdomain systemd[1]: Started firewalld - dynamic firewall daemon.

3. Firewalld基础命令

3.1 查看Firewalld状态命令

可以使用以下命令查看防火墙状态:

systemctl status firewalld

3.2 启动和停止Firewalld命令

可以使用以下命令启动和停止防火墙:

systemctl start firewalld

systemctl stop firewalld

3.3 重新加载和重启Firewalld命令

可以使用以下命令重新加载和重启防火墙:

firewall-cmd --reload

systemctl restart firewalld

3.4 查看Firewalld版本号命令

可以使用以下命令查看防火墙的版本号:

firewall-cmd --version

3.5 查看Firewalld服务是否支持

可以使用以下命令查看指定服务是否被防火墙支持:

firewall-cmd --query-service service-name

3.6 开放端口命令

可以使用以下命令开放指定端口:

firewall-cmd --zone=public --add-port=80/tcp --permanent

上述命令将HTTP端口添加到名称为public的防火墙区域,并且是永久性的。--add-port=80/tcp具体指定了打开的端口和端口协议。

3.7 查看已开放的端口命令

可以使用以下命令查看当前防火墙中已经开放的端口:

firewall-cmd --zone=public --list-ports

3.8 关闭端口命令

可以使用以下命令关闭指定端口:

firewall-cmd --zone=public --remove-port=80/tcp --permanent

3.9 添加服务命令

可以使用以下命令在防火墙中添加特定的服务:

firewall-cmd --zone=public --add-service=http --permanent

上述命令将HTTP服务添加到名称为public的防火墙区域,并且是永久性的。--add-service=http具体指定了添加的服务。

3.10 查看已添加的服务命令

可以使用以下命令查看当前防火墙中已经添加的服务:

firewall-cmd --zone=public --list-services

3.11 移除服务命令

可以使用以下命令从防火墙中移除特定的服务:

firewall-cmd --zone=public --remove-service=http --permanent

上述命令将HTTP服务从名称为public的防火墙区域中移除,并且是永久性的。--remove-service=http具体指定了移除的服务。

3.12 查看防火墙区域命令

可以使用以下命令查看防火墙中的区域:

firewall-cmd --get-zones

3.13 将接口添加到区域命令

可以使用以下命令将接口添加到指定的区域:

firewall-cmd --zone=public --add-interface=eth0

上述命令将名称为eth0的接口添加到名称为public的防火墙区域中。

3.14 移除接口命令

可以使用以下命令将接口从指定的区域中移除:

firewall-cmd --zone=public --remove-interface=eth0

上述命令将名称为eth0的接口从名称为public的防火墙区域中移除。

4. 结论

在本文中,我们介绍了CentOS 7中Firewalld防火墙的基础命令。您可以使用这些命令轻松地管理防火墙规则和状态,以确保服务器的安全性。

操作系统标签