5154

Good Luck To You!

如何在CentOS防火墙中正确开启443端口实现HTTPS?

在现代服务器管理中,为网站启用 HTTPS(超文本传输安全协议)已成为标准操作,HTTPS 默认使用 443 端口进行通信,在 CentOS 服务器上正确开启此端口是部署安全网站的第一步,本文将详细介绍如何在主流的 CentOS 7 及以上版本中,通过其默认的防火墙管理工具 firewalld 来开启 443 端口。

如何在CentOS防火墙中正确开启443端口实现HTTPS?

检查防火墙状态

在进行任何端口操作之前,首先需要确认 firewalld 防火墙服务正在运行,您可以使用以下命令进行检查:

sudo firewall-cmd --state

如果返回 running,则表示防火墙正在运行,如果没有运行,您需要启动并设置它开机自启:

sudo systemctl start firewalld
sudo systemctl enable firewalld

使用 firewalld 开启 443 端口

firewalld 提供了两种主要的方式来允许流量通过:直接添加端口号或通过预定义的服务,推荐使用服务的方式,因为它更具可读性且易于管理。

通过服务(推荐)

firewalld 内置了 https 服务,该服务默认就指向了 443 端口,这是最简洁、最规范的方法。

  1. 永久添加 https 服务规则--permanent 参数确保此规则在防火墙重启后依然生效。

    sudo firewall-cmd --permanent --add-service=https
  2. 重新加载防火墙配置:为了让永久生效的规则立即应用,需要重新加载 firewalld

    sudo firewall-cmd --reload

通过端口号

如果您不想使用服务,或者需要为非标准应用开启特定端口,可以直接指定端口号和协议(TCP/UDP)。

如何在CentOS防火墙中正确开启443端口实现HTTPS?

  1. 永久添加 443/TCP 端口规则

    sudo firewall-cmd --permanent --add-port=443/tcp
  2. 重新加载防火墙配置

    sudo firewall-cmd --reload

验证端口是否已开启

完成上述操作后,应当验证 443 端口是否已成功开放,您可以通过以下命令查看当前生效的规则:

sudo firewall-cmd --list-all

在输出的信息中,您应该能在 services:ports: 字段中看到 https443/tcp,这表示规则已成功添加。

您还可以使用 ssnetstat 命令检查是否有应用程序(如 Nginx 或 Apache)正在监听 443 端口:

sudo ss -tulpn | grep :443

如果看到类似 nginx: masterhttpd 的进程信息,说明您的 Web 服务器已准备就绪,并且防火墙也已允许流量进入。

为了方便查阅,以下是核心命令的小编总结:

如何在CentOS防火墙中正确开启443端口实现HTTPS?

操作目标 命令 说明
通过服务开启(推荐) sudo firewall-cmd --permanent --add-service=https 永久添加 HTTPS 服务
通过端口开启 sudo firewall-cmd --permanent --add-port=443/tcp 永久添加 443/TCP 端口
应用配置 sudo firewall-cmd --reload 重新加载防火墙使永久规则生效
验证开放的服务 sudo firewall-cmd --list-services 列出所有允许的服务

相关问答 FAQs

问题 1:我已经按照教程开启了防火墙端口,为什么从外部还是无法访问我的网站?

解答: 这通常涉及两个层面的原因,请确认您的云服务提供商(如阿里云、腾讯云、AWS 等)的安全组规则中是否同样放行了 443 端口的入站流量,云服务器的安全组是另一层防火墙,必须与系统防火墙同时配置,检查服务器上的 Web 服务器软件(如 Nginx、Apache)是否已正确配置 SSL 证书并绑定监听在 443 端口上,可以使用 sudo ss -tulpn | grep :443 命令来确认是否有进程在监听该端口。

问题 2:firewalldiptables 有什么区别?我应该使用哪个?

解答: firewalld 是 CentOS 7 及更新版本中默认的动态防火墙管理工具,它引入了“区域”和“服务”的概念,使得配置更加灵活和易于理解。iptables 是更传统的静态防火墙工具,在 CentOS 6 及更早版本中使用,对于现代的 CentOS 系统,强烈推荐使用 firewalld,因为它提供了更友好的管理接口并且能动态应用规则,无需像 iptables 那样在每次更改后都需刷新所有规则,除非您有特殊需求或正在维护旧系统,否则应坚持使用 firewalld

发表评论:

◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。

«    2025年11月    »
12
3456789
10111213141516
17181920212223
24252627282930
控制面板
您好,欢迎到访网站!
  查看权限
网站分类
搜索
最新留言
    文章归档
    网站收藏
    友情链接

    Powered By Z-BlogPHP 1.7.3

    Copyright Your WebSite.Some Rights Reserved.