Linux ufw 命令详解

简介

UFW(Uncomplicated Firewall) 简单防火墙是一款基于 iptables 构建的、用于管理防火墙规则的用户友好型工具。它简化了在 Linux 系统上配置防火墙的过程。

安装

  • Ubuntu/Debian 上安装
shell 复制代码
sudo apt update
sudo apt install ufw
  • CentOS/Red Hat 上安装
shell 复制代码
sudo yum install epel-release
sudo yum install ufw

示例用法

查看当前 ufw 的状态
shell 复制代码
sudo ufw status
查看 ufw 的详细状态信息
shell 复制代码
sudo ufw status verbose
启用 ufw
shell 复制代码
sudo ufw enable
禁用 ufw
shell 复制代码
sudo ufw disable
允许指定的流量
shell 复制代码
sudo ufw allow <port/service>
允许 http 80端口
shell 复制代码
sudo ufw allow 80
允许 https 443端口
shell 复制代码
sudo ufw allow 443
允许 ssh 服务
shell 复制代码
sudo ufw allow ssh
拒绝流量
shell 复制代码
sudo ufw deny <port/service>
拒绝 FTP 21端口
shell 复制代码
sudo ufw deny 21
允许来自特定 IP 的流量
shell 复制代码
sudo ufw allow from <IP>

# 例如:
sudo ufw allow from 192.168.1.100
允许从特定 IP 到特定端口的流量
shell 复制代码
sudo ufw allow from <IP> to any port <port>

# 例如:
sudo ufw allow from 192.168.1.100 to any port 22
允许子网的流量
shell 复制代码
sudo ufw allow from <subnet>

# 例如:
sudo ufw allow from 192.168.1.0/24
移除指定的规则
shell 复制代码
sudo ufw delete allow <port/service>

# 例如:
sudo ufw delete allow 80
按编号删除规则

先用 sudo ufw status numbered 查看编号

再执行:

shell 复制代码
sudo ufw delete <rule_number>

# 例如:
sudo ufw delete 3
启用 ufw 日志

日志记录在 /var/log/ufw.log 文件

shell 复制代码
sudo ufw logging on
设置日志级别

可用的日志级别有:low, medium, high, full

shell 复制代码
sudo ufw logging medium
禁用 ufw 日志
shell 复制代码
sudo ufw logging off
限制 ssh 连接尝试次数
shell 复制代码
sudo ufw limit ssh
向发送者发送拒绝响应
shell 复制代码
sudo ufw reject <port/service>

# 例如:
sudo ufw reject 8081
启用 IPv6 支持

编辑 ufw 配置文件:/etc/ufw/ufw.conf,添加如下行:

ini 复制代码
IPV6=yes
重置 ufw 为默认设置

将禁用 ufw,删除所有规则并重置为默认配置。

shell 复制代码
sudo ufw reset
列出可用的应用程序配置文件
shell 复制代码
sudo ufw app list
允许一个应用的流量
shell 复制代码
sudo ufw allow <app_name>

# 例如:
sudo ufw allow nginx
显示应用流量配置详情
shell 复制代码
sudo ufw app info <app_name>

# 例如:
sudo ufw app info nginx
允许 MySql 3306端口
shell 复制代码
sudo ufw allow from 192.168.1.0/24 to any port 3306
允许范围端口
shell 复制代码
sudo ufw allow 6000:6007/tcp
sudo ufw allow 6000:6007/udp
相关推荐
BUG 劝退师5 小时前
进程间通讯(IPC)
运维·服务器·网络
冷冷清清中的风风火火5 小时前
linux 里的创建了一个tomcat用户 怎么禁止该用户使用crontab 功能
linux·tomcat·firefox
浪淘沙jkp5 小时前
大模型学习七:‌小米8闲置,直接安装ubuntu,并安装VNC远程连接手机,使劲造
服务器·学习·ubuntu·deepseek
无名之逆6 小时前
[特殊字符] Hyperlane:Rust 高性能 HTTP 服务器库,开启 Web 服务新纪元!
java·服务器·开发语言·前端·网络·http·rust
安迪小宝6 小时前
python基础语法10-异常处理
服务器·开发语言·python
桥边驿语人7 小时前
使用Docker Desktop进行本地打包和推送
运维·docker·容器·本地打包
ldq_sd7 小时前
Django 创建CSV文件
服务器·django
头发尚存的猿小二7 小时前
Linux--文件系统
linux·运维·服务器
易保山8 小时前
MIT6.S081 - Lab7 Multithreading(进程调度)
linux·操作系统·c
杨凯凡8 小时前
Linux入门指南:从零开始探索开源世界
linux