xiaoz 之前常常应用的服务器操作系统是 Redhat 系列的 CentOS。然而,自从 CentOS Stream 变成了 RHEL 的滚动更新预览版后,xiaoz 开始逐步转向 Debian。尽管一开始有些不习惯,但应用了一段时间之后,xiaoz 发现 Debian 依然十分易用。
就拿防火墙治理这一块来说,我在 CentOS 下应用 firewalld
,转用 Debian 后,我发现ufw
更加简略易用。本文将分享 ufw
的疾速上手办法。
对于 ufw
ufw(Uncomplicated Firewall)是一个简化的、易于应用的 Linux 防火墙工具,旨在不便用户治理 iptables 防火墙规定。它为用户提供了一个直观且易于了解的命令行界面,使得配置防火墙规定变得更加简略。
ufw 的一些次要特点和性能:
- 简化的防火墙治理:ufw 提供了一个简洁的命令行界面,让您可能轻松地增加、删除和批改防火墙规定。
- 基于 iptables:ufw 是基于 iptables 的,因而它与 Linux 内核中现有的防火墙技术兼容。它实际上是 iptables 的一个敌对的前端。
- 容许和回绝规定:您能够应用 ufw 创立容许和回绝规定,以管制入站和出站流量。这让您能够准确地管制容许哪些连贯进入或来到您的零碎。
- 放行特定端口、协定和 IP:ufw 容许您放行特定端口、协定(TCP 或 UDP)以及特定起源或指标 IP 地址的连贯。
- 限度特定 IP 拜访:您能够应用 ufw 限度特定 IP 地址拜访您的零碎上的特定端口。
- 日志记录:ufw 能够记录防火墙流动,这对于监督您的系统安全和解决网络问题十分有用。
- 易于启用和禁用:ufw 能够轻松启用和禁用,让您在须要时能够迅速启用防火墙,或在进行系统维护时临时敞开防火墙。
装置 ufw
在 Debian、Ubuntu 或其衍生版本上,关上终端并执行以下命令装置:
# 装置 ufw
sudo apt-get update
sudo apt-get install ufw
而后启动ufw
:
# 启动 ufw
sudo ufw enable
# 设置为开机自启
sudo systemctl enable ufw
执行 sudo ufw status
查看以后状态,通常有 3 种状态:
- Status: inactive(未启用):示意 UFW 没有启用,防火墙处于敞开状态。
- Status: active(已启用):示意 UFW 曾经启用,并且防火墙规定正在利用于零碎。
- Status: inactive (dead)(未启用且未运行):示意 UFW 已被禁用,并且防火墙未在零碎中运行。
ufw 放行端口
ufw
的命令比 firewalld
简洁许多,比方你想放行单个端口,只须要执行:
# 将 <port> 替换为你要放行的具体端口号。例如,要放行 TCP 端口 80,能够执行 sudo ufw allow 80。sudo ufw allow <port>
如果须要放行特定协定的端口,咱们须要加上协定:
# 将 <port> 替换为端口号,<protocol> 替换为协定类型(如 tcp、udp)。例如,要放行 UDP 端口 53,能够执行 sudo ufw allow 53/udp。sudo ufw allow <port>/<protocol>
放行一个端口范畴:
sudo ufw allow <start-port>:<end-port>/<protocol>
将 <start-port>
替换为起始端口号,<end-port>
替换为完结端口号,<protocol>
为协定。例如,要放行 TCP 端口范畴 8000 到 9000,能够执行sudo ufw allow 8000:9000/tcp
ufw 删除曾经放行的规定或端口
要在 ufw(Uncomplicated Firewall)中删除已增加的规定,您能够通过规定号或者具体的放行条件来删除。以下是两种办法:
办法 1:通过规定号删除
首先,运行以下命令以查看以后 ufw 的状态和现有规定:
sudo ufw status numbered
这将显示带有编号的规定列表。
确定您要删除的规定的编号,而后应用以下命令删除它,将 [rule_number]
替换为理论的规定编号:
sudo ufw delete [rule_number]
例如,要删除编号为 1 的规定,运行:
sudo ufw delete 1
办法 2:通过放行条件删除
您还能够通过指定放行条件(例如端口和协定)来删除规定。例如,要删除容许 TCP 端口 80 的规定,您能够运行:
sudo ufw delete allow 80/tcp
或者,如果要删除容许 UDP 端口 5000 的规定,您能够运行:
sudo ufw delete allow 5000/udp
删除规定后,再次运行 sudo ufw status
以确认所选规定已从 ufw 中删除。
阻止某个特定的 IP
应用以下命令阻止来自特定 IP(例如 123.57.22.204)的连贯:
sudo ufw deny from 123.57.22.204
容许特定 IP 拜访特定端口
应用以下命令容许特定 IP 拜访特定端口。将 [ip_address]
替换为要容许的理论 IP 地址,将 [port_number]
替换为要容许拜访的理论端口号,将 [protocol]
替换为 tcp
或udp
,具体取决于您要放行的协定:
sudo ufw allow from [ip_address] to any port [port_number]/[protocol]
例如,要容许 IP 地址 192.168.1.10
拜访 TCP 端口22
,您能够运行:
sudo ufw allow from 192.168.1.10 to any port 22/tcp
结语
ufw 是一个易于应用且功能强大的防火墙管理工具,它使得在 Linux 零碎上配置防火墙规定变得更加简略。无论您是 Linux 老手还是有教训的管理员,ufw 都是一个值得尝试的工具。
此文章首发于我的独立博客:https://blog.xiaoz.org/archives/18666