想查清Linux环境里“有哪些服务器”,先定范围:本机服务看systemctl和ss,局域网主机看nmap/arp-scan,云上实例看控制台或API。 Linux并没有一条万能命令能列出所有服务器,关键在于你要找的是服务进程、物理主机,还是云服务器实例。
先分清“服务器”指服务进程、物理主机还是云实例
很多人搜“怎么查看linux有哪些服务器”,实际需求并不一样,有人想查本机跑了哪些服务,有人想扫局域网里有哪些Linux机器,还有人想知道云账号下有哪些ECS、CVM或EC2,范围不同,命令和工具完全不同。
本机服务与监听端口:Linux服务器清单从systemctl开始
如果你登录了一台Linux机器,想看它对外提供了哪些“服务器”能力,先查服务单元和监听端口。
- 查看运行中的服务:
systemctl list-units --type=service --state=running
- 查看已启用的服务:
systemctl list-unit-files --type=service --state=enabled
- 查看监听端口和对应进程:
ss -tulnp
- 传统系统可用:
netstat -tulnp
- 按端口反查进程:
lsof -i -P -n
ss -tulnp 是较新Linux发行版的首选,它能同时显示TCP、UDP监听端口和进程名,若没有root权限,-p参数可能看不到进程,但端口列表仍然有效。
查看运行中服务的常用路径
/etc/systemd/system/:管理员自定义服务单元。/usr/lib/systemd/system/:软件包自带服务单元。/etc/services:常见端口与协议对照表。ps aux:查看当前进程,适合发现没被systemd接管的服务。
局域网内怎么扫描发现Linux服务器?nmap与arp-scan实操
如果你要查的是同一局域网里有哪些服务器,扫描比登录每台机器更高效,前提是你有网络扫描授权,不要对非自有网络随意扫描。
- 快速发现存活主机:
nmap -sn 192.168.1.0/24
- 使用ARP扫描本地网段:
arp-scan --localnet --interface=eth0
- 用fping批量探测:
fping -a -g 192.168.1.0/24
- 识别SSH服务,Linux服务器常开22端口:
nmap -sV -p 22 192.168.1.0/24
扫描结果里出现22、80、443、3306等端口,只能说明对方可能是服务器,想进一步判断系统类型,可以看TTL、SSH banner和nmap操作系统识别结果,业内专家指出,资产发现应优先结合DHCP、DNS和交换机记录,单纯依赖端口扫描容易漏掉关闭常见端口的机器。
云服务器和物理机查看Linux服务器有什么区别?控制台、API和标签
云服务器和物理机查看Linux服务器有什么区别?核心差异在发现入口。
| 对比项 | 云服务器 | 物理机 |
|---|---|---|
| 查看入口 | 云控制台、CLI、API | IPMI、iDRAC、交换机、CMDB |
| 发现方式 | 按地域、VPC、标签筛选 | 按机架、网段、DHCP租约 |
| 自动化 | 强,支持API和Terraform | 依赖资产系统和监控 |
| 权限 | RAM/IAM控制 | 机房和网络设备权限 |
| 典型命令 | aws ec2 describe-instances | show arp、show mac address-table |
云上常用命令示例:
aws ec2 describe-instances --filters "Name=instance-state-name,Values=running" --query "Reservations[].Instances[].InstanceId"
简米云、酷番云也有类似CLI,简米云可用aliyun ecs DescribeInstances,酷番云可用tccli cvm DescribeInstances,它们都支持按地域、标签、VPC筛选。
没有root权限怎么查看Linux有哪些服务器在跑?
没有root权限怎么查看Linux有哪些服务器在跑?可以退而求其次,查用户可见信息。
- 查看监听端口,不显示进程:
ss -tuln
- 查看当前用户进程:
ps aux
- 查看用户级服务:
systemctl --user list-units --type=service
- 查看容器:
docker ps
- 查看常见服务目录:
ls /etc/systemd/system/
多数情况下,普通用户能看到端口和进程名,但无法读取完整命令行和环境变量,若只想知道“有没有Web服务器、数据库、SSH”,端口列表已经足够。
北京机房Linux服务器怎么查看?跨地域资产清单的实用路径
北京机房Linux服务器怎么查看?如果机器在自建机房,网络设备比单机命令更可靠。
- 登录核心交换机,查看ARP表:
show arp show mac address-table
- 查看DHCP租约:
cat /var/lib/dhcp/dhcpd.leases cat /var/lib/misc/dnsmasq.leases
- 查看DNS区域文件,找出A记录和PTR记录。
- 使用Ansible动态清单:
ansible-inventory --list -i inventory/
- 用Zabbix、Prometheus或Nagios按主机名、IP、机房标签筛选。
跨地域时,建议统一打标签:region=beijing、env=prod、role=web,这样在云控制台、CMDB和监控系统里都能快速拉出北京机房清单。
免费查看Linux服务器清单的工具和方法
免费查看Linux服务器清单的工具和方法不少,适合预算有限的小团队。
- nmap:主机发现、端口扫描、服务识别。
- arp-scan:局域网ARP层发现。
- fping:批量ping,速度快。
- netdiscover:被动和主动ARP发现。
- Angry IP Scanner
:图形化扫描,适合临时使用。
- Ansible:用inventory管理服务器清单。
- Prometheus + node_exporter:监控在线状态和资源。
- 云厂商控制台:查看云服务器实例通常不额外收费。
如果只是临时排查,nmap加arp-scan组合最直接,如果要长期维护,建议把结果写进CMDB或Ansible inventory。
把发现结果沉淀成可持续维护的服务器清单
扫描一次只能得到快照,真正有用的做法,是让服务器清单持续更新。
- 用Ansible inventory按业务、机房、环境分组。
- 用Zabbix或Prometheus自动发现主机。
- 用DHCP和DNS记录交叉验证。
- 用云标签和资源组同步云上实例。
- 用CMDB记录负责人、用途、生命周期。
行业共识认为,准确资产清单是安全基线管理的前提,服务器漏登记,补丁、审计、监控和故障定位都会受影响。
查看Linux有哪些服务器,本质是分场景选工具:本机看systemctl和ss,局域网看nmap和arp-scan,云上看控制台和API,机房看交换机和DHCP,把一次性扫描变成持续清单,才算真正掌握服务器资产。
关于怎么查看Linux有哪些服务器的常见问答
怎么查看Linux本机正在运行哪些服务器程序?
先执行systemctl list-units --type=service --state=running查看systemd服务,再执行ss -tulnp查看监听端口和进程,若没有root权限,用ss -tuln和ps aux组合判断。
局域网里怎么快速列出所有Linux服务器IP?
用nmap -sn 192.168.1.0/24或arp-scan --localnet发现存活主机,再用nmap -sV -p 22 192.168.1.0/24识别SSH服务,扫描前需获得网络授权。
云服务器和物理机查看Linux服务器有什么区别?
云服务器通过控制台、CLI和API按地域、VPC、标签筛选;物理机依赖IPMI、交换机ARP表、DHCP租约和CMDB,云上自动化程度更高,物理机更依赖网络设备记录和资产流程。
首发原创文章,作者:王坚,如若转载,请注明出处:https://idctop.com/article/685370.html





