问题描述
CentOS 7系统默认的防火墙是 Firewall,替代了之前的 iptables,Firewall有图形界面管理和命令行管理两种方式。本文主要介绍如何通过命令行配置 Firewall。
配置过程
启动 Firewall
进入系统之后,可以发现 CentOS 7 默认已安装 Firewall,但是没有启动,所以需要先启动 Firewall,同时设置开机自启动。
- 登录 ECS 实例,执行如下命令,启动 Firewall。
systemctl start firewalld
- 执行如下命令,设置开机自启动。
systemctl enable firewalld.service
常用命令介绍
- 查看防火墙状态。
firewall-cmd --state
- 重新载入配置,例如添加、修改规则等,之后需执行该命令。
firewall-cmd --reload
- 列出支持的 zone。
firewall-cmd --get-zones
- 列出支持的服务,在列表中的服务是放行的。
firewall-cmd --get-services
- 查看 FTP 服务是否支持,返回 yes 表示支持,返回 no 表示不支持。
firewall-cmd --query-service ftp
- 临时开放 FTP 服务。
firewall-cmd --add-service=ftp
- 永久开放 FTP 服务。
firewall-cmd --add-service=ftp --permanent
- 永久移除 FTP 服务。
firewall-cmd --remove-service=ftp --permanent
- 永久添加 80 端口。
firewall-cmd --add-port=80/tcp --permanent
- 查看规则,此命令和 iptables 相同。
iptables -L -n
- 查看帮助手册。
man firewall-cmd
参考文档
[1] https://firewalld.org/documentation/man-pages/firewall-cmd.html 如果您有其他问题,欢迎您联系火山引擎技术支持服务