linux(centos7)常用命令 开启关闭防火墙

目录

什么是防火墙

在 CentOS 7 中,默认的防火墙服务是 firewalld,它取代了之前版本中的 iptablesfirewalld 使用了名为"firewall-cmd"的命令行工具来管理防火墙规则。

firewalld 的关键概念包括:

  • 区域 (Zones): 用于定义不同信任级别的网络连接。你可以为不同的网络接口或来源 IP 分配不同的区域,每个区域都有自己的规则集。
  • 服务 (Services): 预定义的规则集,用于允许流量对应于常见的服务和应用程序,如 HTTP、HTTPS、SSH 等。
  • 端口 (Ports): 可以开放或关闭特定的 TCP 或 UDP 端口来允许或阻止流量。
  • 临时和永久配置 (Runtime and Permanent Configuration) : firewalld 允许你进行临时(运行时)或永久更改。临时更改在服务或系统重启后不生效,而永久更改需要重新加载防火墙配置或重启服务。

开启/关闭防火墙

bash 复制代码
# 开启防火墙
sudo systemctl start firewalld

# 关闭防火墙
sudo systemctl stop firewalld

# 设置防火墙开机启动
sudo systemctl enable firewalld

# 设置防火墙开机不启动
sudo systemctl disable firewalld

# 重启防火墙服务
sudo systemctl restart firewalld

查看防火墙状态

bash 复制代码
sudo systemctl status firewalld

端口管理

bash 复制代码
# 添加一个永久的开放端口规则
sudo firewall-cmd --permanent --add-port=XXXX/tcp

# 移除一个永久的开放端口规则
sudo firewall-cmd --permanent --remove-port=XXXX/tcp

# 立即开放一个端口(直到下一次重新加载)
sudo firewall-cmd --add-port=XXXX/tcp

# 立即关闭一个端口(直到下一次重新加载)
sudo firewall-cmd --remove-port=XXXX/tcp

XXXX 替换为您希望开放或关闭的端口号。对于 UDP 端口,将 tcp 替换为 udp

重新加载防火墙规则

在更改了防火墙规则之后,您需要重新加载 firewalld 来应用这些更改:

bash 复制代码
sudo firewall-cmd --reload

这将应用所有永久规则,并保持当前活动的会话。

服务管理

与端口不同,服务是预先定义的端口和协议组合。您可以管理服务而不是单独的端口:

bash 复制代码
# 开放一个服务
sudo firewall-cmd --permanent --add-service=http

# 关闭一个服务
sudo firewall-cmd --permanent --remove-service=http

# 重新加载防火墙来应用更改
sudo firewall-cmd --reload

查看开放的端口和服务

要查看当前开放的端口和服务,可以使用以下命令:

bash 复制代码
# 查看当前活动区域的开放端口
sudo firewall-cmd --list-ports

# 查看当前活动区域的开放服务
sudo firewall-cmd --list-services

# 查看所有永久规则(需要重新加载后生效)
sudo firewall-cmd --list-all --permanent
相关推荐
C++忠实粉丝37 分钟前
Linux环境基础开发工具使用(2)
linux·运维·服务器
康熙38bdc1 小时前
Linux 环境变量
linux·运维·服务器
存储服务专家StorageExpert1 小时前
DELL SC compellent存储的四种访问方式
运维·服务器·存储维护·emc存储
hakesashou2 小时前
python如何比较字符串
linux·开发语言·python
Ljubim.te2 小时前
Linux基于CentOS学习【进程状态】【进程优先级】【调度与切换】【进程挂起】【进程饥饿】
linux·学习·centos
cooldream20092 小时前
Linux性能调优技巧
linux
大G哥2 小时前
记一次K8S 环境应用nginx stable-alpine 解析内部域名失败排查思路
运维·nginx·云原生·容器·kubernetes
长天一色2 小时前
【ECMAScript 从入门到进阶教程】第三部分:高级主题(高级函数与范式,元编程,正则表达式,性能优化)
服务器·开发语言·前端·javascript·性能优化·ecmascript
醉颜凉3 小时前
银河麒麟桌面操作系统修改默认Shell为Bash
运维·服务器·开发语言·bash·kylin·国产化·银河麒麟操作系统
QMCY_jason3 小时前
Ubuntu 安装RUST
linux·ubuntu·rust