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
相关推荐
sky丶Mamba25 分钟前
CMD,PowerShell、Linux/MAC设置环境变量
linux·运维·macos
运维开发王义杰43 分钟前
打破技术债困境:从“保持现状”到成为变革的推动者
运维·职场和发展
工藤新一¹1 小时前
Linux 开发工具
linux·运维·服务器
W111115_1 小时前
网络综合实验
linux·运维·服务器·网络
cui_win1 小时前
【网络】Linux 内核优化实战 - net.ipv4.tcp_sack
linux·网络·tcp/ip
x县豆瓣酱1 小时前
ubuntu server远程连接
linux·运维·ubuntu
0wioiw01 小时前
Ubuntu基础(Python虚拟环境和Vue)
linux·python·ubuntu
山川绿水1 小时前
Ubuntu22.04更新Openssh至9.9p2无法正常连接,报错解决
服务器·web安全·网络安全
史不了1 小时前
无 sudo 运行:让你的程序在 Ubuntu 低端口监听
linux·运维·ubuntu
YC运维1 小时前
OSPF实验以及核心原理全解
运维·网络·网络协议·智能路由器