Linux系统下如何查看开发的端口


引言: 在Linux服务器中, 经常需要查看系统某些端口是否正常开启,亦或需要了解哪些进程占据了特定的端口服务,故这个命令是非常常用,本文将介绍这些命令的常用方法。

1. 查看特定的端口是否被开启或者占用

列出所有的监听状态下的tcp连接:

netstat -lntp 
vc/Uyr612Na3us22y7/ausWjrCCyu7340NDT8sP7tcS94s72o6y807/s0MXPorXEz9TKvqGjPGJyPgo8L3A+CjxwPiAgLXAgIM/Uyr7VvNPDuMO2y7/ausW1xL34s8w8L3A+CjxwPiAgLXQgIMHQs/YgVENQINCt0um1xMGsvdM8L3A+CjxwPiAgLWEgIMHQs/bL+dPQtbHHsLXEway90ywgdGNwLCB1ZHAgus0gdW5peCDQrdLpz8LL+dPQzNe909fWtcTL+dPQway90zwvcD4KPHA+ICAtdSAgIMHQs/Z1ZHC1xMGsvdM8L3A+CjxwPiAgudjT2i1uo6zKx7fxyrnTw9Pyw/u94s72tcTE2sjdyr7A/aO6PC9wPgo8cD4gIDxpbWcgc3JjPQ=="http://www.2cto.com/uploadfile/Collfiles/20150424/201504241007254.png" alt="\">

从上图中的内容显示可知,-n可以控制是否显示为域名。

列出所有的监听状态下的tcp端口

netstat -alt
\
查找特定端口的进程:

netstat -alp | grep 8010 
\

查看所属用户的名称或者user id:

netstat -altep
\
列出当前进程中tcp所属的用户id

netstat -altne
\
在这里, 假如你将 -n-e 选项一起使用,User 列的属性就是用户的 ID 号,而不是用户名。使用-ep 选项可以同时查看进程名和用户名

-s 列出统计的网路信息:

-r 列出路由的信息

-i 打印出网路接口信息, -e与其搭配,可以输出更友好的信息。

输出网络接口的信息:

netstat -ie
\

2. lsof命令

命令格式: lsof -i :port_number 查找特定端口的进程或者命令

lsof -i :8010
\

3. 如何查找帮助信息

在linux中,提供了一个强大的命令man, 可以帮助我们找到最全面的介绍信息。

man netstat

4. 总结

netstat是一个非常强大的命令,它可以给提供需要的绝大部分信息;lsof也是一个非常好用的工具,但是在特定情况下,lsof可能查不出来,但是netstat确是可以查询出来的。

优先推荐nestat来查询端口。


相关内容