虚拟机安装Linux在终端模式下输入哪些命令可以查看所有端口(不是当前端口)?

2025-02-27 15:56:59
推荐回答(2个)
回答1:

Linux系统下用netstat命令来查看哪些端口被打开,方法如下:

netstat -anp

下面是常用参数的解释:

NETSTAT [-a] [-b] [-e] [-n] [-o] [-p proto] [-r] [-s] [-v]
[interval]

-a  显示所有连接和监听端口

-b 显示包含于创建每个连接或监听端口的可执行组件

-e 显示以太网统计信息。此选项可以与 -s选项组合使用

-n 以数字形式显示地址和端口号

-o   显示与每个连接相关的所属进程 ID

-p 选项用于指定默认情况的子集

回答2:

你好!1. 可以通过"~$ netstat -anp" 来查看哪些端口被打开。
(注:加参数'-n'会将应用程序转为端口显示,即数字格式的地址,如:nfs->2049, ftp->21)
2. 然后可以通过"~$ lsof -i:$PORT"查看应用该端口的程序($PORT指对应的端口号)。或者也可以查看文件/etc/services,从里面可以找出端口所对应的服务。
(注:有些端口通过netstat查不出来,更可靠的方法是"~$ sudo nmap -sT -O localhost")
希望以上回答对你有所帮助!