端口被占用(如何查看端口占用)
端口被占用(如何查看端口占用)
inux系统下如何确定端口是否被占用?如何查看系统正在监听的端口有哪些?
关注系统正在监听的端口对运维人员是一件非常重要的事情,因为对外开放的端口越多,系统增加的风险就越大 后面还会写一篇系统安全的文章,记得关注我哦。除了入侵之外,运维人员在做故障排查的时候,也需要观察端口变化。
例如:一台服务器上同时部署了Apache和Nginx,那么就必须确认他们是否是使用了TCP #80/443端口。服务宕了,就会先看端口在不在,端口不在,是不是服务停止了,被 OOM 等。
在Linux下检查被监听的端口进程
1:lsof命令
语法:
$sudolsof-i-P-n$sudolsof-i-P-n|grepLISTEN$doaslsof-i-P-n|grepLISTEN###[OpenBSD]###
举例:使用lsof命令检查监听端口和应用程序
输出的最后一行是
sshd85379root3uIPv40xffff80000039e0000t0TCP10.86.128.138:22 LISTEN
sshd 是应用程序的名称。
10.86.128.138 是sshd应用程序绑定到的IP地址 LISTEN
22 是正在使用的TCP端口 LISTEN
85379 是sshd进程的进程ID
2:netstat命令
可以使用netstat检查端口端口和应用程序
Linux netstat语法
$netstat-tulpn|grepLISTEN
FreeBSD / MacOS X netstat语法
$netstat-anptcp|grepLISTEN$netstat-anpudp|grepLISTEN
OpenBSD netstat语法
$netstat-na-finet|grepLISTEN$netstat-nat|grepLISTEN
3:nmap命令
语法:
$sudonmap-sT-Olocalhost$sudonmap-sU-O192.168.2.13##[listopenUDPports]##$sudonmap-sT-O192.168.2.13##[listopenTCPports]##
举例:使用nmap确定哪些端口正在侦听TCP连接
可以在单个命令中组合TCP / UDP扫描:
$sudonmap-sTU-O192.168.2.13
结束进程
根据PID kill掉相关进程:
kill-9{PID}在Windows下检查被监听的端口进程
常用的检查Windows操作系统的端口使用情况命令:
netstat-bano|morenetstat-bano|grepLISTENINGnetstat-bano|findstr/R/C:[LISTEING]
举例
1.查看所有的端口占用情况
C:netstat-ano
2.查看指定端口的占用情况
在dos下,输入netstat -ano|findstr 8189,查看端口使用情况
3.结束该进程
输入taskkill /pid 13064 /f停止端口占用
以上就是(端口被占用(如何查看端口占用))全部内容,收藏起来下次访问不迷路!