我怎样才能找出 CentOS 7 中过滤端口的原因?

我怎样才能找出 CentOS 7 中过滤端口的原因?

我最近执行了yum updatereboot,现在我无法通过 SSH 进入我的机器。我使用非标准 SSH 端口(比如说 444),当我运行 时,nmap <MY-IP> -p444 --reason我得到的是444/tcp filtered unknown host-prohibited。如果我运行-p22,我得到的是22/tcp closed ssh

我已经启动到救援模式并挂载了我的磁盘,但我不清楚 iptables 规则存储在哪里。我认为它们应该在 中/etc/sysconfig/iptables,但该文件不存在。我前段时间买了这台服务器用于实验,可能我从未设置过任何防火墙规则。但如果是这样的话,那么过滤端口 444 的是什么?可能是 iptables 以外的其他东西吗?如果是的话,我该如何找到它?

谢谢你!

答案1

您正在使用非标准 SSH 端口。系统重启后,SELinux 必须重新标记文件上下文。

暂时禁用 SELinux

$ sudo setenforce 0

如果您决定在启用 SELinux 时继续使用非标准 SSH 端口,请使用 semanage 命令:

$ sudo semanage port -a -t ssh_port_t -p tcp 4444

然后允许将端口添加到防火墙例外:

$ sudo firewall-cmd --add-port=4444/tcp --permanent
$ sudo firewall-cmd --reload

要永久禁用 SELinux,请按照以下步骤操作指导

相关内容