在 CentOS 7 上,我尝试使用 HTTP 和直接 TCP/UDP(Web 服务器、数据库等)在本地主机中打开与某些服务的连接,但在非 8080 或 80 的端口上我不断收到连接被拒绝的消息...(ps : ssh 到端口 22 工作正常)。
这是我到目前为止所尝试的:
我检查了 selinux 状态..:
[root@ ~]# sestatus
SELinux status: disabled
然后我检查了防火墙
[root@ ~]# systemctl status firewalld
● firewalld.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
[root@ ~]# systemctl status iptables
● iptables.service
Loaded: not-found (Reason: No such file or directory)
Active: inactive (dead)
那么,如果不是 selinux 也不是防火墙,我应该寻找什么?
这是 netcat 输出的内容(注意在 8080 和 80 上工作正常)注意:这^C
只是指示中断信号,因为nc
已连接
[root@ ~]# nc localhost 8080
^C
[root@ ~]# nc localhost 80
^C
[root@ ~]# nc -v localhost 5544
Ncat: Version 6.40 ( http://nmap.org/ncat )
Ncat: Connection to ::1 failed: Connection refused.
Ncat: Trying next address...
Ncat: Connection refused.
[root@ ~]# nc -v 127.0.0.1 25544
Ncat: Version 6.40 ( http://nmap.org/ncat )
Ncat: Connection refused.
ss -vtnlp | grep :5544
也不给我任何东西(而我在另一边的服务一直被拒绝连接)。
谢谢你的帮助!
答案1
原来应该监听连接的服务没有监听!将服务移至更高的端口后,它现在可以正常工作,但是我不知道为什么会出现这种情况..(以下内容已被截断)
[root ~]# ss -tnlp | grep :35544
LISTEN 0 50 :::35544
也许这对其他人有帮助:
主要指标(我完全错过了)是该ss -tnlp
命令没有列出我期望监听的端口。
另外,当执行 ss -tnlp | grep :port
结果为空时,这实际上意味着端口没有“开放连接”,因此连接拒绝错误消息。
就我而言,该进程是logstash,它没有抛出任何有关无法侦听端口的错误。