有多少服务在所有接口上监听目标系统?(不适用于本地主机和 IPv4)

YnS*_*Skn 5 linux command-line services network-interface

我需要找出有多少服务正在侦听我的接口(仅限 ipv4,而不是 localhost)

$ ifconfig

ens192: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
        inet 10.129.56.137  netmask 255.255.0.0  broadcast 10.129.255.255
        inet6 dead:beef::250:56ff:feb9:8c07  prefixlen 64  scopeid 0x0<global>
        inet6 fe80::250:56ff:feb9:8c07  prefixlen 64  scopeid 0x20<link>
        ether 00:50:56:b9:8c:07  txqueuelen 1000  (Ethernet)
        RX packets 3644  bytes 330312 (330.3 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 3198  bytes 679711 (679.7 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
        inet 127.0.0.1  netmask 255.0.0.0
        inet6 ::1  prefixlen 128  scopeid 0x10<host>
        loop  txqueuelen 1000  (Local Loopback)
        RX packets 15304  bytes 895847 (895.8 KB)
        RX errors 0  dropped 0  overruns 0  frame 0
        TX packets 15304  bytes 895847 (895.8 KB)
        TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0

$ nmap 10.129.56.137

Starting Nmap 7.60 ( https://nmap.org ) at 2020-12-05 05:23 UTC
Nmap scan report for 10.129.56.137
Host is up (0.000086s latency).
Not shown: 991 closed ports
PORT    STATE SERVICE
21/tcp  open  ftp
22/tcp  open  ssh
80/tcp  open  http
110/tcp open  pop3
139/tcp open  netbios-ssn
143/tcp open  imap
445/tcp open  microsoft-ds
993/tcp open  imaps
995/tcp open  pop3s

Nmap done: 1 IP address (1 host up) scanned in 10.57 seconds
Run Code Online (Sandbox Code Playgroud)

我以为答案是 9 但一定有办法找到正确的答案。提前加油!

小智 7

来自 man netstat:

该程序大多已过时。netstat 的替代品是 ss。

在这一点上,我认为这将是最好的选择:

ss -l -4 | grep -v "127\.0\.0" | grep "LISTEN" | wc -l

在哪里:

  • -l : 只显示监听服务
  • -4 : 只显示 ipv4
  • -grep -v "127.0.0" : 排除所有本地主机结果
  • -grep "LISTEN" : 更好地过滤仅监听服务
  • wc -l : 统计结果


Art*_*nov 2

netstat -tunleep4 | grep -v "127\.0\.0"
Run Code Online (Sandbox Code Playgroud)