CentOS防火墙常用命令

CentOS防火墙常用命令

  • 安装防火墙

    yum install -y firewalld
    
  • 查看防火墙状态(也可用此命令检查防火墙软件是否安装)

    systemctl status firewalld
    
  • 启动防火墙

    systemctl start firewalld
    
  • 关闭防火墙

    systemctl stop firewalld
    
  • 重载防火墙配置

    systemctl reload firewalld
    
  • 开机自启动/不启动防火墙

    # 启动
    systemctl enabled firewalld
    # 不启动
    systemctl disable firewalld
    

防火墙常用命令

  • 查看防火墙支持放行服务

    firewall-cmd --get-service
    
  • 查看防火墙状态

    firewall-cmd --list-all
    
  • 添加放行的服务

    # 添加http服务放行(暂时性,reload后失效)
    firewall-cmd --add-service=http
    # 添加http服务放行(永久性,reload后生效)
    firewall-cmd --add-service=http --permanent
    
  • 移除放行的服务

    # 移除已经放行的http服务
    firewall-cmd --remove-service=http
    
  • 添加放行的端口

    # 放行tcp协议的8080端口(暂时性,立即生效,reload后失效)
    firewall-cmd --add-port=8080/tcp
    # 放行tcp协议的8080端口(永久性,reload后生效)
    firewall-cmd --add-port=8080/tcp --per
    firewall-cmd --reload
    
  • 移除放行的端口

    # 移除tcp协议的8080端口(暂时性,立即生效,reload后失效)
    firewall-cmd --remove-port=8080/tcp
    # 移除已经放行的tcp协议的8080端口(永久性,reload后生效)
    firewall-cmd --remove-port=8080/tcp --per
    firewall-cmd --reload
    
  • 重载配置 reload

    firewall-cmd --reload
    

防火墙富规则 rich-rule

严格限制仅允许指定IP端口被指定主机访问,可通过防火墙配置rich-rule实现

添加 rich-rule

命令 --add-rich-rule

# 后端服务开启了8088端口,且仅允许192.168.1.100机器访问这个端口
firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="8088" accept' --permanent
# 后端服务开启了8088端口,且仅允许192.168.1.0/24这个网段的机器访问这个端口
firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="8088" accept' --permanent
# 别忘了最后重载配置
firewall-cmd --reload
  • rule:声明规则
  • family="ipv4":指定规则适用于IPv4地址
  • source address="192.168.1.10":指定源IP地址为192.168.1.100(源IP地址:发送数据包的设备IP)
  • port protocol="tcp" port="8088":指定目标端口为 TCP 协议的 8088 端口
  • accept/reject:匹配该规则的数据包将被接受/拒绝
  • permanent/timeout:规则永久生效,超时失效(只在设定的时间范围内生效)
    # 24h内拒绝192.168.1.0/24网段下的访问本机8088端口的请求
    firewall-cmd --add-rich-rule='rule family="ipv4" source address="192.168.1.0/24" port protocol="tcp" port="8088" reject' --timeout=86400
    

移除 rich-rule

命令:--remove-rich-rule

firewall-cmd --permanent --remove-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="8088" accept'

firewall-cmd --reload

[!NOTE]

建议熟悉熟悉计算机网络的应用层协议默认的端口号 和 协议类型 和 属性以及应用场景

posted @   勤匠  阅读(14)  评论(0编辑  收藏  举报
编辑推荐:
· AI与.NET技术实操系列:基于图像分类模型对图像进行分类
· go语言实现终端里的倒计时
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
阅读排行:
· 分享一个免费、快速、无限量使用的满血 DeepSeek R1 模型,支持深度思考和联网搜索!
· 基于 Docker 搭建 FRP 内网穿透开源项目(很简单哒)
· ollama系列01:轻松3步本地部署deepseek,普通电脑可用
· 25岁的心里话
· 按钮权限的设计及实现
点击右上角即可分享
微信分享提示