端口状态的最佳 shell 命令是什么?

端口状态的最佳 shell 命令是什么?

假设我想知道某个端口(例如 21)是打开还是关闭。

实现该目的的最佳 shell 命令是什么?

答案1

我最喜欢的是:

从本地机器

sudo lsof -i -n -P 

netstat -an | grep LISTEN | grep -v ^unix

netstat -ntulp

从远程盒子

nmap -v -A ip_address

答案2

netstat会告诉你这一点。要检查所有开放(监听)端口:

netstat -l

您还可以显示所有当前连接:

netstat -an

请参阅手册页以了解更多信息,netstat 是一个非常强大的工具:)

答案3

nmap -A -T4 localhost -p 80

它甚至会显示操作系统版本和该端口上的服务

答案4

您可以使用telnet它来尝试连接给定主机上的 TCP 端口:

telnet somehost.example.com 21

尝试连接到 somehost.example.com 上的端口 21

如果端口关闭,您会收到类似以下消息

telnet: Unable to connect to remote host: Connection refused

否则,您将看到监听该端口的程序在连接时告诉您的任何内容。

相关内容