Réponses:
Sur Linux moderne, utilisez l'utilitaire ss (socket stats).
$ ss -s
Total: 10160 (kernel 10262)
TCP: 10349 (estab 8886, closed 408, orphaned 0, synrecv 0, timewait 393/0), ports 3147
Transport Total IP IPv6
* 10262 - -
RAW 0 0 0
UDP 5 5 0
TCP 9941 9941 0
INET 9946 9946 0
FRAG 0 0 0
netstat -an | grep ESTABLISHED | wc -l
vous donnera le nombre de ports ouverts, 32 dans mon cas.
cat /proc/sys/net/ipv4/ip_local_port_range
Rendra quelque chose comme:
32768 61000
ce qui signifie, 61000 - 32768 - $ OPENPORTS = AvailablePorts
Sur ma boîte, c'est:
61000-32768-32 = 28200 numéros de port disponibles.
Comme d'autres l'ont mentionné, netstat est l'outil à utiliser pour déterminer quels ports sont actuellement utilisés. En ce qui concerne les limites, le nombre de ports disponibles est un entier non signé 16 bits qui vous donne la plage 0-65535. Les ports disponibles pour les applications à lier sont les ports réservés / root réservés (0-1024) plus tout ce qui n'est pas couvert par votre plage de ports éphémères.
Vous pouvez afficher vos ports éphémères en exécutant cat /proc/sys/net/ipv4/ip_local_port_range
.
Pour modifier cela de manière persistante, vous devez ajouter / modifier "net.ipv4.ip_local_port_range" dans le fichier /etc/sysctl.conf, ou de manière interactive avec sysctl -n net.ipv4.ip_local_port_range="<start_port> <end_port>"
Personnellement, je préfère nmap. Vous pouvez trouver l'état de tous les ports en émettant la cible nmap -P 1-65535. La plupart des distributions devraient avoir ce package disponible via leur gestionnaire de packages.
netstat vous permettra de voir quels ports sont ouverts, faites "netstat -" pour voir ce qui correspond le mieux à vos besoins.
netstat --inet
aidera le plus.
'nmap localhost' vous donnera tous vos ports ouverts et services fonctionnant sur eux.
netstat -tulnp
Les arguments du programme netstat sont répertoriés ci-dessous:
*
t - Show TCP
*
u - Show UDP
*
l - Show only listening processes (netstat can show both listening and all established connections, i.e. as a client too)
*
n - Do not resolve network IP address names or port numbers
*
p - Show the process name that is listening on the port