🟢 一、Linux服务器
Linux下,常用以下几种方法:
✅ 1. 查看所有正在监听端口的服务
netstat -tulnp 含义:
-tTCP-uUDP-l监听状态-n显示端口号-p显示进程号和程序名
示例输出:
pgsql
复制编辑
Proto Recv-Q Send-Q Local Address Foreign Address State PID/Program name tcp 0 0 0.0.0.0:22 0.0.0.0:* LISTEN 879/sshd tcp6 0 0 :::80 :::* LISTEN 1256/nginx 
这里能看到:
22端口
sshd(SSH)80端口
nginx
✅ 2. 使用 ss(替代 netstat,更快)
ss -tulnp 功能与 netstat 类似。
✅ 3. 查看所有进程
ps -ef 或者按服务分类:
ps aux 可以配合 grep 查找:
ps -ef | grep nginx ps -ef | grep mysql ✅ 4. 使用 systemctl 查看所有服务状态
systemctl list-units --type=service 这里可以看到所有正在运行/挂起/失败的服务。
如要查看某个服务状态:
systemctl status nginx ✅ 5. 查看自启动服务
systemctl list-unit-files --type=service 显示哪些服务开机自动启动。
🟦 二、Windows服务器
Windows上查看服务的方法:
✅ 1. 服务管理器
打开 “运行”(Win+R)
输入:
services.msc回车,弹出服务管理器
列出所有服务及状态(正在运行/已停止)
✅ 2. 命令行查看
在命令提示符(cmd)里:
sc query 显示所有服务。
或者只显示正在运行的:
sc query | find "RUNNING" ✅ 3. 查看监听端口
在命令提示符:
netstat -ano 最后一列是PID
再到任务管理器里按PID对应进程名
🛡️ 三、实用建议
定期检查服务器监听端口,防止被植入后门程序。
如果发现陌生服务(特别是端口异常开放),要及时排查来源。
配合防火墙设置限制不必要的服务。