【命令操作】UFW:轻松掌控信创终端防火墙|统信|麒麟|方德
sinye56 2024-12-17 16:08 8 浏览 0 评论
原文链接:【命令操作】UFW:轻松掌控信创终端防火墙|统信|麒麟|方德
1. UFW概述
UFW是什么?
UFW 全称为 “Uncomplicated Firewall”,即“不复杂的防火墙”,是 Ubuntu 及许多基于 Debian 的发行版默认提供的防火墙管理工具。传统的 Linux 防火墙通常需要使用 iptables 命令或编写复杂的规则文件,这对新手或普通用户而言较为复杂。UFW 的设计目标是简化这一过程,为用户提供更直观、更易用的命令行界面,轻松实现端口、服务和协议级的访问控制。
UFW的特性:
简化的语法:通过简单直观的命令来启用、禁用以及配置规则,而无需直接书写繁琐的 iptables 规则。
易于启用或禁用:只需一行命令即可开启或关闭防火墙功能,并在启动后自动加载配置规则。
预定义服务配置:UFW 内置了许多常见服务的应用配置文件,如 OpenSSH、HTTP、HTTPS、SAMBA 等,用户无需记忆端口号即可快速配置防火墙访问权限。
日志与监控功能:可以轻松开启日志记录以监控防火墙的工作情况。
2. UFW 的安装与基础操作
大多数基于 Debian/Ubuntu 的发行版默认已安装 UFW。如果您的系统中未安装,可通过以下方式安装:
pdsyw@pdsyw-PC:~/Desktop$ sudo apt-get update
pdsyw@pdsyw-PC:~/Desktop$ sudo apt-get install ufw
查看 UFW 状态:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw status
在默认情况下,如果防火墙未启用,状态会显示为 inactive。
启用 UFW:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw enable
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw status
执行后,UFW 将启动并在系统重启时自动加载规则。
禁用 UFW:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw disable
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw status
此命令将停用 UFW 的所有防火墙规则。
3. 基本规则配置
UFW 的核心在于创建“允许(allow)”和“拒绝(deny)”规则。设置规则时,可以基于端口(port)、服务名称(service),以及指定协议(TCP/UDP)和来源IP地址等。
默认策略:
在设置单独的规则之前,通常建议先为入站和出站流量设置一个默认策略。例如,只允许必要的入站连接并拒绝其他所有输入:
# 将入站流量默认拒绝
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw default deny incoming
# 将出站流量默认允许
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw default allow outgoing
这些默认策略使得当您未指定规则时,入站流量会被拒绝,而出站连接则默认放行。
4. 基于服务和端口的规则配置
允许某服务的入站访问:
UFW 内置了常见服务的配置文件,您可以直接使用服务名称开启访问权限。例如,要允许 SSH(默认22端口)访问:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw allow ssh
此命令相当于 sudo ufw allow 22/tcp,但更为直观。当您想要允许 HTTP (80端口)、HTTPS (443端口) 时,可直接使用:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw allow http
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw allow https
允许特定端口:
如果要对特定端口开放访问(如 8080 端口),可以直接指定:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw allow 8080
如果需要指定协议,如只允许 TCP 协议:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw allow 8080/tcp
拒绝某服务或端口:
拒绝规则与允许规则类似。若要拒绝某个端口的访问,例如拒绝 25 端口的访问:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw deny 25
5. 指定来源IP和子网
您也可以对特定来源 IP 的访问进行限定。例如,只允许来自 192.168.1.10 的客户端通过 SSH 访问:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw allow from 192.168.1.10 to any port 22
如果您想允许某个子网,例如 192.168.1.0/24 网段访问内网 HTTP 服务:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw allow from 192.168.1.0/24 to any port 80
同理,可以针对来源进行拒绝规则。
6. IPv6 支持
UFW 支持 IPv6,只需在配置文件中启用即可。默认情况下,UFW 会同时处理 IPv4 和 IPv6。您可以在配置文件 /etc/default/ufw 中找到 IPV6=yes 设置项。当 IPv6 启用后,UFW 会对 IPv4 和 IPv6 流量同时应用规则。
pdsyw@pdsyw-PC:~/Desktop$ sudo vim /etc/default/ufw
pdsyw@pdsyw-PC:~/Desktop$ grep IPV6=yes /etc/default/ufw
IPV6=yes
7. 删除和管理规则
查看当前规则:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw status numbered
numbered 参数会显示规则的编号,从而方便您根据编号进行删除。
删除规则:
例如,您要删除第3条规则:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw delete 3
禁用或修改规则:
如果您添加错了一条规则,可以先删除再重新添加。
8. UFW 的日志记录与监控
开启日志:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw logging on
也可以设置日志级别(low、medium、high、full),默认为 low。更详细的日志有助于问题定位,但也会产生更多日志量:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw logging medium
UFW 的日志通常记录在 /var/log/ufw.log 中(有的系统会将日志写入系统日志中)。通过查看日志可以了解被阻断或通过的连接情况。
pdsyw@pdsyw-PC:~/Desktop$ sudo head /var/log/ufw.log
在 UFW 中,日志级别(ufw logging)可分为 off、low、medium、high、full 几种。其中每个级别代表日志输出的详细程度和范围,越往后级别越详细。大致含义如下:
off:关闭日志记录,不产生任何日志输出。
low:
低级别日志。
记录所有被阻止(deny/drop)的数据包(不匹配默认策略的阻挡信息),以及对于已允许的 TCP 连接会记录其新建连接情况。
简单来说,low 只关注关键的安全事件和基础连接建立的日志。
medium:
中等详细级别日志。
包含 low 级别的所有内容。
额外会记录已允许的 UDP 数据包。
相比 low,medium 提供了更多有关允许流量的细节。
high:
高级别日志。
包含 medium 级别的所有内容。
额外会记录已允许的 ICMP(如 ping 请求)数据包。
这样不仅能看到 TCP 和 UDP 的允许情况,还能追踪 ICMP 流量。
full:
最详细级别日志。
包含 high 级别的所有内容。
此级别会对更多类型的数据包进行日志记录,几乎记录所有经过防火墙的流量事件。
使用 full 会产生大量日志,对问题排查有帮助,但也会给系统日志带来较大负载。
9. 高级配置与应用配置文件
UFW 在 /etc/ufw 目录下有一些配置文件和应用描述文件(位于 /etc/ufw/applications.d)。应用描述文件定义了某些常用服务的端口和协议映射,方便您使用 sudo ufw allow <service-name> 来快速开放相应端口。
pdsyw@pdsyw-PC:~/Desktop$ ls /etc/ufw/applications.d/
列出已知的应用服务:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw app list
查看某个应用服务的具体配置:
pdsyw@pdsyw-PC:~/Desktop$ sudo ufw app info OpenSSH
此命令会显示 “OpenSSH” 应用服务使用的端口和协议详情。
10. 故障排除与注意事项
权限问题:UFW 的所有命令基本需要使用 sudo 或在 root 权限下执行。
已启用防火墙后远程访问问题:如果在一台远程服务器上启用 UFW,但未提前允许 SSH 端口,则可能导致无法远程连接,需要在启用前先 sudo ufw allow ssh。
防火墙策略顺序:UFW 是基于 iptables 的前端工具。当需要更高级的规则或自定义复杂策略时,可以通过编辑 /etc/ufw/*.rules 文件实现更深入的配置,但一般不推荐新手直接修改这些文件。
UFW 将复杂的 iptables 配置简化为直观的命令,让用户可以轻松管理 Linux 防火墙规则。通过理解 UFW 的默认策略、规则添加、删除方式,以及熟练使用内置的服务配置和日志监控功能,您可以快速构建安全、有效的防火墙策略。
在生产环境中使用 UFW 时,建议在启用前谨慎添加必要规则,确保远程管理不受阻,并通过日志与必要的测试来验证配置正确性。
相关推荐
- 一个不错的软件版本命名规范!
-
之前写了一篇如何自动生成版本号的文章,《让你的C程序,自动打印版本信息》初衷是让自己的程序在运行时自动打印与版本相关的信息,避免测试时因为版本信息不确定导致的一些功能对应不上去的问题,当时留了一个坑,...
- 国产操作系统迎来发展风口 公务领域更能培育起Linux生态
-
谷歌和微软在俄罗斯市场的一番套路猛如虎,就让我们深刻地意识到了,只有自己的东西才能靠得住。也由此,国内操作系统发展迎来了发展风口。我就看到有朋友就秀出了他们单位采购的纯国产的主机,一款华为的主机,纯国...
- 5个大有“前途”的Linux桌面发行版本
-
ZD至顶网CIO与应用频道08月27日专栏:Linux无处不在。你的服务器里,你的电话、汽车、手表、烤面包机、冰箱……和台式机里都有Linux的身影。虽然在桌面上见到Linux的用户比在自动调温...
- Linux 常用应用软件大全
-
编译自:https://www.fossmint.com/most-used-linux-applications/作者:MartinsD.Okoi译者:HankChow对于许多应用程序...
- Linux 4.1 系列的最大版本 4.1.18 LTS发布,带来大量修改
-
(LCTT译注:这是一则过期的消息,但是为了披露更新内容,还是发布出来给大家参考)著名的内核维护者GregKroah-Hartman貌似正在度假中,因为SashaLevin2016年2月16日的...
- Linux发行版需要杀软吗?卡巴斯基推出免费KVRT病毒扫描清理工具
-
IT之家6月4日消息,你认为使用Linux发行版,需要杀毒软件吗?或许很多用户认为Linux发行版偏小众,因此受到黑客攻击的风险也相对较小,不过卡巴斯基并不这么认为,近期推出了适用于...
- 适合开发人员的 5款 Linux 发行版
-
什么是Linux?Linux是基于Unix的操作系统。由LinusTorvalds开发于1991年首次发布其内核。因为Linux是开源软件,其发行版由不同组织发布,因此不同的发行版具有不同的风格...
- VMware Workstation 17.0 Pro 发布:新增 TPM 2.0 完美兼容Win11
-
IT之家11月18日消息,VMwareWorkstation17.0Pro现已发布,它带来了许多新特性,例如微软Windows11硬性要求:虚拟可信平台模块(TPM)2.0。...
- 你是否需要一个容器专用的Linux发行版本?
-
单单使用容器是不够的,提供商们认为你需要一个容器专用的Linux发行版本。我们可以让容器在不同的操作系统上运行,不同的操作系统都有自己的虚拟化服务,如:SolarisZones、BSDJails、...
- Tizen 3.0版本发布 采用Linux 4.1内核
-
2015-09-2111:31:39作者:马荣【中关村在线软件资讯】9月21日消息:尽管三星靠着Android系统设备在移动市场赚钱,但是仍然没有忘记自家的Tizen开发。现在Tizen3.0版...
- 欧拉操作系统演进:应用累计超130万套 支持鲲鹏、英特尔、飞腾等芯片
-
21世纪经济报道记者倪雨晴深圳报道4月15日,在欧拉开发者大会(openEulerDeveloperDay2022)的主论坛上,欧拉首个数字基础设施全场景长周期版openEuler22.03...
- Papyros:以Material Design为灵感的Linux发行版本
-
项目团队并不希望只是采用传统的桌面主题,而是致敬谷歌Android系统的MaterialDesign设计语言想要打造出某些不同以往足够吸引用户的Linux发行版本,自然该版本还在不断的更新和改进中,...
- 比特网早报:全国空间计量技术委员会成立,银河麒麟操作系统上架微信Linux4.0.0版本
-
2024年11月6日消息,昨夜今晨,科技圈都发生了哪些大事?行业大咖抛出了哪些新的观点?比特网为您带来值得关注的科技资讯:全国空间计量技术委员会在北京成立近日,经市场监管总局批准,全国空间计量技术委员...
- 2024年最稳定的5个Linux发行版,赶紧收藏!
-
Linux是最流行的免费开源平台之一。Linux已被广泛使用,因为它安全、可扩展和灵活。Linux发行版收集开源代码,对其进行编译,并将其组合成一个可以轻松启动和安装的操作系统。它们还提供不同的...
- 彰显Linux生态繁华,Ubuntu、Fedora等四发行版同时发布新版本
-
上周对于开源社区来说是忙碌的一周。EndeavourOS和TrueNASScale于周二(4月16日)发布,Fedora于周三(4月17日)发布,Ubuntu于周四(4月18日)发布。四个新版本中都...
你 发表评论:
欢迎- 一周热门
- 最近发表
- 标签列表
-
- oracle忘记用户名密码 (59)
- oracle11gr2安装教程 (55)
- mybatis调用oracle存储过程 (67)
- oracle spool的用法 (57)
- oracle asm 磁盘管理 (67)
- 前端 设计模式 (64)
- 前端面试vue (56)
- linux格式化 (55)
- linux图形界面 (62)
- linux文件压缩 (75)
- Linux设置权限 (53)
- linux服务器配置 (62)
- mysql安装linux (71)
- linux启动命令 (59)
- 查看linux磁盘 (72)
- linux用户组 (74)
- linux多线程 (70)
- linux设备驱动 (53)
- linux自启动 (59)
- linux网络命令 (55)
- linux传文件 (60)
- linux打包文件 (58)
- linux查看数据库 (61)
- linux获取ip (64)
- linux进程通信 (63)