Wie verwende ich netstat auf einem bestimmten Port in Linux?

15

Jungs, ich möchte wissen, ob mein bestimmter Port einen Server mit Netstat ausführt? Wie erreiche ich das?


quelle
1
netstat -anp | grep portNumber
Lumpen

Antworten:

15

Sie können verwenden

netstat -pnlt | grep ':portno'

Als weitere Option können Sie das nmap-Tool verwenden, um offene Ports auf dem Server zu überprüfen

nmap -sT -O localhost

Ausgabe

Starting nmap 3.55 ( http://www.insecure.org/nmap/ ) at 2004-09-24 13:49 EDT
Interesting ports on localhost.localdomain (127.0.0.1):
(The 1653 ports scanned but not shown below are in state: closed)
PORT      STATE SERVICE
22/tcp    open  ssh 
25/tcp    open  smtp
111/tcp   open  rpcbind
Device type: general purpose

Netstat Beispiel:

[root@krizna ~]# netstat -pnlt | grep ':80'
Proto Recv-Q Send-Q Local Address               Foreign Address             State       PID/Program name 
tcp        0      0 :::80                       :::*                        LISTEN      1164/httpd          
krizna
quelle
und welchen teil kann ich in den ergebnissen feststellen, ob es sich um einen server handelt?
Überprüfen Sie den Beispielteil netstat, Port ::: 80 wird unter der lokalen Adresse LISTENING angezeigt (ich meine open).
Es ist erwähnenswert, dass das grep ': portno' möglicherweise auch einige IPv6-Adressen aufnimmt, die diese Sequenz enthalten. Dies kann ein Problem sein, wenn Sie versuchen, diesen Befehl in einem Skript zu verwenden.
Kevin Keane
2

verwenden netstat -anp | grep portNumber

Lumpen
quelle
Also bekomme ich eine Liste mit vielen Port-80-Verbindungen. Wie finde ich den Server-Port?
2

Ich denke, netstat -nat | grep port | grep LISTENsollte den Trick machen.


quelle
Dies listet alle Ports auf und sucht dann nach empfangsbereiten Ports. Stattdessen sollte es nur die Listening-Ports mit -lanstelle von anzeigen -a. Und die Frage betraf nicht nur TCP-Ports, die -tOption sollte auch nicht vorhanden sein.
Paul Tobias