命令简介

UFW 是 Ubuntu 系统默认的防火墙管理工具,提供了一种简单且易于使用的方式来管理防火墙规则。它旨在通过一组默认的拒绝策略来增强系统安全性,同时允许用户有选择地打开所需的端口。UFW 命令可以用于启用、禁用防火墙,以及添加、删除和列出防火墙规则。

ubuntu 官方提供的文档:https://help.ubuntu.com/community/UFW

命令格式

1
ufw [options] [command] [rule syntax]

参数说明

参数 说明 备注
–version 显示 UFW 的版本信息 查看版本
–help 显示帮助信息 查看帮助
–force 强制执行命令,忽略错误 强制执行
–dry-run 模拟执行命令,但不实际应用 模拟执行
–disable 禁用防火墙 禁用防火墙
–enable 启用防火墙 启用防火墙
–default 设置默认入站/出站策略 设置默认策略
–verbose 显示详细输出 详细输出
allow 打开指定端口或服务 允许访问
deny 关闭指定端口或服务 拒绝访问
reject 拒绝指定端口或服务的连接请求 拒绝连接
limit 限制指定端口或服务的连接速率 限制连接速率
status 显示防火墙的当前状态 查看状态
reset 重置所有规则到初始状态 重置规则
show 显示防火墙规则详情 显示规则详情

演示实例

启用/禁用 UFW

1
2
3
4
5
# 启用 UFW
sudo ufw enable

# 禁用 UFW
sudo ufw disable

设置默认策略

1
2
3
4
5
# 设置默认入站策略为拒绝
sudo ufw default deny incoming

# 设置默认出站策略为允许
sudo ufw default allow outgoing

允许/拒绝端口

1
2
3
4
5
# 允许 HTTP 端口
sudo ufw allow 80/tcp

# 拒绝 SSH 端口
sudo ufw deny 22/tcp

允许/拒绝服务

1
2
3
4
5
# 允许 HTTPS 服务
sudo ufw allow 'https'

# 拒绝 FTP 服务
sudo ufw deny 'ftp'

限制连接速率

1
2
# 限制 SSH 连接速率
sudo ufw limit ssh/tcp

查看状态和规则详情

1
2
3
4
5
# 查看 UFW 状态
sudo ufw status

# 显示规则详情
sudo ufw show added

重置规则

1
2
# 重置所有规则
sudo ufw reset

扩展使用方法

除了上述基本用法外,UFW 命令还支持一些高级功能,例如:

指定 IP 地址范围

1
2
3
4
5
# 允许特定 IP 地址访问 HTTP 端口
sudo ufw allow from 192.168.1.0/24 to any port 80

# 拒绝特定 IP 地址范围访问 SSH 端口
sudo ufw deny from 10.0.0.0/8 to any port 22

指定网络接口

1
2
3
4
5
# 允许所有流量通过 eth0 网卡
sudo ufw allow in on eth0

# 拒绝所有流量通过 wlan0 网卡
sudo ufw deny out on wlan0

使用 IPv6 地址

1
2
3
4
5
# 允许特定 IPv6 地址访问 HTTP 端口
sudo ufw allow from 2001:db8::/32 to any port 80

# 拒绝所有 IPv6 流量
sudo ufw deny proto ipv6

使用日志功能

1
2
3
4
5
# 启用日志功能
sudo ufw logging on

# 查看日志
sudo tail /var/log/ufw.log

通过灵活运用这些高级功能,可以更好地满足各种网络安全和访问控制需求。