Centos7:防火墙 80 端口未被封锁

Centos7:防火墙 80 端口未被封锁

当我没有打开 http 或端口 80 并且没有服务在端口 80 上监听时,为什么我能够通过端口 80 远程登录到我的机器?

sudo firewall-cmd --list-all --zone=public

public (active)
  target: default
  icmp-block-inversion: no
  interfaces: em1
  sources:
  services: dhcpv6-client ssh
  ports: 12345/tcp
  protocols:
  masquerade: no
  forward-ports:
  source-ports:
  icmp-blocks:
  rich rules:

我试图删除该端口,但它说它不在活动区域​​,所以我的 telnet 连接不应该被拒绝吗?

sudo firewall-cmd --zone=public --remove-port=80/tcp
Warning: NOT_ENABLED: '80:tcp' not in 'public'

我仔细检查了一下,没有运行 iptables 服务,只有 firewalld 在运行。我仍然不明白为什么存在 iptables 命令,或者为什么使用 firewall-cmd 命令更新 iptables 文件。

我甚至尝试了“老式”方法,即丢弃所有传入流量:

sudo iptables --policy INPUT DROP

但 telnet 80 端口仍可通。

答案1

首先,您需要查找是否确实有一些服务在端口 80 上监听。对于此运行,请以 root 身份或使用 sudo:

netstat -nlp | grep :80

其次,尝试列出所有区域,查看 80 端口添加到哪个区域:

firewall-cmd --list-all-zones

第三,在 Centos 7 中,firewalld 充当 iptables 的前端,这就是为什么您仍然拥有 iptables 命令。

相关内容