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
相关推荐
会周易的程序员3 分钟前
openplc runtimev4 Docker 部署
运维·c++·物联网·docker·容器·软件工程·iot
WJ.Polar4 分钟前
FTP、Telnet、PPP、SNMP协议
服务器·网络
不爱缺氧i6 分钟前
ubuntu离线安装mariadb
linux·ubuntu·mariadb
疯狂敲代码的老刘17 分钟前
JDK 1.6到25 全版本网盘合集 (Windows + Mac + Linux)
java·linux·windows·macos·jdk
爆米花byh21 分钟前
在RockyLinux9环境的Storm2.8.3单机版安装
linux·中间件·storm
纤纡.22 分钟前
Linux 下 MySQL 数据类型与约束:第三章核心表格归纳与实战应用
linux·mysql
REDcker24 分钟前
gRPC完整文档
服务器·网络·c++·网络协议·grpc
Highcharts.js28 分钟前
如何设置自定义Highcharts导出服务器?
服务器·highcharts·自定义导出·导出服务器·导出模块·渲染功能
陈桴浮海31 分钟前
【Linux&Ansible】学习笔记合集三
linux·运维·云原生·ansible
小Pawn爷32 分钟前
1.Docker基础
运维·docker·容器