要在Linux或Unix系统中查看服务器上使用的端口,你可以使用多种工具和命令。下面是一些常用的命令及其用途:
1. netstat 命令
netstat(网络状态)命令可以显示网络连接、路由表等信息。要查看监听的端口,可以使用以下命令:
netstat -tuln
这里的选项含义如下:
• -t 显示TCP协议的连接;
• -u 显示UDP协议的连接;
• -l 显示监听中的socket;
• -n 显示数字形式的地址和端口。
2. ss 命令
ss(socket statistics)命令可以显示和 netstat 类似的统计信息,但它通常提供更快的性能。要查看监听端口,可以使用:
ss -tuln
这里的选项与 netstat 相同。
3. lsof 命令
lsof(list open files)命令可以显示打开文件的信息,包括网络连接。要查看哪些进程正在使用特定端口,可以使用:
lsof -i :<port>
这里 <port> 是你要检查的端口号。
示例:
如果你想查看服务器上所有正在监听的端口,可以使用 netstat 或 ss:
netstat -tuln
或者
ss -tuln
查看特定端口的状态:
如果你想查看特定端口的状态,可以使用 netstat 或 ss,加上端口号:
netstat -tuln | grep <port>
或者
ss -tuln | grep <port>
查看占用端口的进程:
如果你想查看占用特定端口的进程,可以使用 lsof:
lsof -i :<port>
这里 <port> 是你想检查的端口号。
示例输出:
以下是 netstat -tuln 命令的一个示例输出:
Active Internet connections (only servers)
Proto Recv-Q Send-Q Local Address Foreign Address State
tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:80 0.0.0.0:* LISTEN
tcp 0 0 0.0.0.0:443 0.0.0.0:* LISTEN
udp 0 0 0.0.0.0:123 0.0.0.0:*
注意事项:
• 如果你使用的是较新的系统,可能会发现 ss 命令比 netstat 更快更可靠。
• 如果你想查看远程服务器上的端口信息,你可能需要使用SSH登录到远程服务器后再执行上述命令。
希望这些信息对你有所帮助!如果有任何疑问或需要进一步的帮助,请随时提问。