我读过其他关于查找进程 ID 和正在监听的内容的帖子,但遗憾的是无法解决我的问题。因此,如果我遗漏了一些相关信息,请见谅。
跑步网络状态我发现了一个无法识别的端口:35813
$ sudo netstat -lntp
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name
tcp 0 0 0.0.0.0:35813 0.0.0.0:* LISTEN -
没有 PID 信息。然后运行lsof但没有显示有关该端口的输出。
$ sudo lsof -i :35813
还尝试运行 just lsof -i
,但没有任何可疑之处。这是 TCP 侦听进程的输出:
$ sudo lsof -Pni -sTCP:LISTEN
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
rpc.statd 520 statd 9u IPv4 11556 0t0 TCP *:56969 (LISTEN)
rpc.statd 520 statd 11u IPv6 11562 0t0 TCP *:46289 (LISTEN)
rpcbind 522 root 8u IPv4 11545 0t0 TCP *:111 (LISTEN)
rpcbind 522 root 11u IPv6 11548 0t0 TCP *:111 (LISTEN)
我也尝试过fuser
,但是也返回了空的输出。
$ sudo fuser 35813/tcp
从局域网内的远程主机,我可以远程登录港口:
$ telnet 192.168.0.16 35813
Trying 192.168.0.16...
Connected to 192.168.0.16.
Escape character is '^]'.
我可以发送一个字符,但什么也没发生。当我输入第二个字符时,外部主机关闭了连接。
最后,我运行grep
内部程序/etc/
,试图找到监听该端口的东西(有点绝望),但却什么也没找到。
主机正在运行 OpenVPN (udp)、lighttpd 和 ssh。它们均未使用端口 35813。有什么建议吗?提前致谢。
答案1
正如您所描述的,您的问题似乎是一个 UDP 端口,它是一个随机数(因此无法获取有关该端口上运行的内容的信息)并且它在服务器上?(或 NAS?)
你可以试试nmap -v -A -p {the port that you can't recognise} {the host IP}
。
如果它返回“未知”作为‘在端口上运行的服务’,那么您可以尝试在维基百科中找出通常在该端口上运行的服务。
另一个解决方案是(如果可能的话)重新启动服务器/ NAS 并查看它是否再次打开。
如果确实如此(并且您正在运行 Linux(任何)),您可以使用在互联网上可以找到的命令关闭所有 UDP 端口,方法是输入
如何禁用 Linux (版本/发行版) 上的所有 UDP 连接。
祝你好运!!