您现在的位置是:探索 >>正文

centos7允许443和80端口防火墙

探索6487人已围观

简介CentOS 7 默认的 firewalld 策略把 80 和 443 挡在外面,哪怕 Nginx 或 Apache 已经跑起来,外网照样打不开。这不是服务的问题,是防火墙没放行。我见过不少人折腾半天 ...

CentOS 7 默认的允许 firewalld 策略把 80 和 443 挡在外面,哪怕 Nginx 或 Apache 已经跑起来,和端火墙外网照样打不开。口防这不是允许服务的问题,是和端火墙防火墙没放行。我见过不少人折腾半天配置文件,口防最后发现只是允许少了一条 firewall-cmd 命令。

先确认 firewalld 在跑。和端火墙终端敲:

systemctl status firewalld

看到绿色 active (running) 就对了。口防如果是允许 inactive,要么启动它,和端火墙要么你用的口防是 iptables——那是另一套逻辑,这里不展开。允许假设 firewalld 正常,和端火墙接下来的口防操作都在 root 权限下做。

放行 80 和 443 有两种写法。一种是按服务名,firewalld 内置了 http 和 https 两个服务定义,对应 80 和 443:

firewall-cmd --permanent --add-service=http firewall-cmd --permanent --add-service=https firewall-cmd --reload

另一种是按端口号直接加:

firewall-cmd --permanent --add-port=80/tcp firewall-cmd --permanent --add-port=443/tcp firewall-cmd --reload

两种效果一样。用服务名可读性好一点,用端口号更直接。我习惯用端口号,因为有时候需要开 8080、8443 这类非标准端口,统一用 --add-port 不用去记服务名。

--permanent 这个参数不能省。不加的话,规则只在当前运行时生效,重启 firewalld 或系统重启后就没了。加了 --permanent 写进配置,但不会立刻生效,所以后面必须跟一条 --reload。这个顺序别搞反。

操作完验证一下:

firewall-cmd --list-all

输出里 services 行应该能看到 http https,或者 ports 行有 80/tcp 443/tcp。如果没有,说明命令没执行成功,检查有没有打错字。

有个坑得提一下。如果你在云服务器上操作,比如阿里云、腾讯云、AWS,光改 firewalld 不够。这些平台有自己的安全组,是一层独立于操作系统防火墙的网络过滤。安全组不放行 80 和 443,firewalld 配得再对也没用。我遇到过有人 centos 里 firewall-cmd 查出来端口开着,浏览器就是连不上,最后发现是控制台安全组没加规则。两边都检查,别只顾一头。

还有一种情况:SELinux 在拦。CentOS 7 默认 SELinux 是 enforcing 模式。如果你改了 Nginx 或 Apache 的监听端口,比如从 80 改成 8080,SELinux 会阻止绑定。标准 80 和 443 一般不受影响,但如果你把 web 服务装到了非标准路径,可能碰到 httpd_can_network_connect 被关掉的问题。临时排查可以 setenforce 0 试试,确认是 SELinux 的锅再针对性开策略,别直接永久关掉。

说回防火墙本身。firewalld 的 zone 概念也容易让人迷糊。默认网卡绑在 public zone,你加的规则进的是 public。如果服务器有多张网卡或者改过 zone 绑定,规则可能加到了错误的 zone 里。用 firewall-cmd --get-active-zones 看一眼当前活跃的 zone 是哪个,再往那个 zone 里加规则。

最后给一条懒人命令,一次性搞定:

firewall-cmd --permanent --add-port={ 80,443}/tcp && firewall-cmd --reload

大括号展开是 bash 的特性,firewall-cmd 本身不认,但 shell 会先展开成两条独立的参数传给命令。执行完 firewall-cmd --list-ports 确认一下就行。

整个过程不超过一分钟。关键是别忘了 --permanent 和 --reload 这对组合,以及云平台安全组那层。搞定了这两处,80 和 443 基本就不会再卡你。

Tags:

相关文章

  • burpsuite汉化版安装流程

    探索

    Burpsuite 的官方版本只有英文界面,这对不少新手来说是一道坎。汉化版安装并不复杂,核心思路就三步:下载对应版本的汉化包、准备 Java 环境、执行启动脚本。整个过程五到十分钟就能搞定,前提是你 ...

    【探索】

    阅读更多
  • 学生贷款网站

    探索

    去年秋天,我在一个学生贷款网站的论坛区泡了三个小时。一个叫“阿凯”的用户发帖说,他借了八万,合同上写的是年化7.2%,但每个月还款时总感觉不对劲。底下有人回复:“你算一下IRR,别只看名义利率。”阿凯 ...

    【探索】

    阅读更多
  • 海洋网官网

    探索

    打开海洋网官网首页,第一眼看到的是深蓝色调铺满整个屏幕。不是那种死气沉沉的深蓝,而是带着渐变光泽、像阳光穿透海面十几米后那种透亮的蓝。导航栏悬浮在顶部,半透明,鼠标滑过时会有细微的水波纹效果——这个细 ...

    【探索】

    阅读更多


友情链接