【Ubuntu】如何轻松设置80和443端口的防火墙

说到 UFW(也就是 Uncomplicated Firewall),这可是基于 Ubuntu 的 Linux 系统里自带的安全小能手。通常情况下它是被禁用的,但在服务器系统上它可能会处于激活并运行的状态。这就有可能阻止我们访问像 Apache 和 Nginx 这样的服务器应用程序,它们分别在 80 和 443 端口上运行。

既然防火墙对系统安全来说至关重要,建议你保持启用状态,并允许必要的端口进行外部访问。如果你是 Linux 新手,不知道怎么操作,别担心,这篇文章会一步一步教你。

检查 UFW 中 80 和 443 端口的状态

UFW 是根据设定的规则来工作的,但刚安装时这些规则通常是空的。不过,在一个预先配置好的系统中,特别是为某个特定应用设置的系统,UFW 可能已经启用了,并且带有拒绝访问 80 和 443 端口的规则。

要检查这些端口是否被 UFW 阻止,你可以运行以下命令:

复制代码
$ sudo ufw status

如你所见,除了显示为"活跃"外,没有任何规则的迹象,这意味着我们可以自由访问所需的端口。但如果存在限制,UFW 的输出结果会看起来像这样:

Apache Full 及其副本(v6)是为 IPv4 和 IPv6 设计的配置文件,包括了 80 和 443 端口的规则。Apache Full 配置文件名出现的原因是因为规则是使用这个名称添加的。

这可能会让人有点迷糊,所以你可以在执行命令时加上 verbose 选项,这样可以列出配置文件名以及端口号。

最后,我们清楚地看到 80 和 443 端口被 UFW 防火墙通过 Apache Full 配置文件阻止了。接下来,让我们学习如何允许这些端口。

在 UFW 中允许 80 和 443 端口

最简单快捷的方法就是使用以下命令移除对 80 和 443 端口的限制,无论这些规则是如何添加的:

复制代码
$ sudo ufw allow 80/tcp
$ sudo ufw allow 443/tcp

为了确认这两个端口是否已经被允许通信,我们可以重新检查 UFW 的状态。

如你所见,我们已经允许了 80 和 443 端口。需要注意的是,尽管 Apache Full 规则仍然设置为 DENY ,但针对 80 和 443 端口的特定 ALLOW 规则覆盖了它们,不会影响我们的访问。

现在,你可以不受限制地从网络内外访问这些端口了。

在 UFW 中禁止 80 和 443 端口

如果出于某种原因你需要重新应用限制,可以删除之前添加的规则。

复制代码
$ sudo ufw delete allow 80/tcp
$ sudo ufw delete allow 443/tcp

虽然不推荐这样做,但如果你发现自己需要永久性地阻止这些端口,也可以添加明确的 DENY 规则(当然,以后也可以再删掉)。

复制代码
$ sudo ufw deny 80/tcp
$ sudo ufw deny 443/tcp

此外,如果你想限制某个特定 IP 地址或范围的访问,可以运行:

复制代码
$ sudo ufw allow from <IP_ADDRESS> to any port 80
$ sudo ufw allow from <IP_ADDRESS> to any port 443

做完更改后,记得要重新加载防火墙哦。

复制代码
$ sudo ufw reload

搞定!

总结

在这篇文章里,我们学会了如何查看 UFW 防火墙的状态以确认 80 和 443 端口的规则是否存在,理解了防火墙状态中的配置文件名和端口号之间的区别,最后成功移除了对这些端口的限制。希望你能轻松掌握这些技能,让自己的服务器更加安全!

相关推荐
重生之我来学Python5 分钟前
Docker套装的简介、安装、超级详细教程
linux·docker·容器·eureka·github
和裕18 分钟前
光伏储能定制加强型瓦楞纸箱:降低组件运输隐裂率与售后损耗的核心价值
大数据·运维·网络·人工智能·算法
智购科技无人售货机工厂店22 分钟前
2026自动售货机大屏交互设计原则:从信息层级到视觉动线的工程实践~YH
运维·python·单片机·嵌入式硬件·自动化·交互
Ruiery35 分钟前
Linux 6.6内核 PCIe 深度解析(十):PCIe Port Driver(portdrv)— 一个物理 Port,拆出五个逻辑服务
linux·运维·服务器
运维行者_2 小时前
ISP 企业级带宽计费怎么做?网络流量计费的 6 大核心能力
运维·服务器·网络·数据库·支持向量机·接口隔离原则
数安旭说2 小时前
企业终端行为审计建设:本地审计 + 网络审计构建完整溯源取证体系
运维·数据安全·软件需求·溯源·审计·网络审计
码农小韩2 小时前
Linux应用开发(二)——Linux的文件IO
linux·嵌入式软件·嵌入式操作系统·linux应用
Elastic 中国社区官方博客3 小时前
在 Elasticsearch 中回填时间序列数据:通过批量 API 加载数月的历史指标数据
大数据·运维·数据库·人工智能·elasticsearch·搜索引擎·全文检索
Horn Still Sounds3 小时前
Linux网络并发服务器模型与SQLite数据库学习笔记
linux·服务器·数据库
10mAh3 小时前
【Linux】CPU 100% 怎么排查?——top、pidstat、jstack 到线程定位实战
linux·运维·服务器