GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Linux:Finden Sie heraus, auf welcher Portnummer ein Prozess lauscht

Als Linux-Benutzer müssen wir manchmal wissen, auf welcher Portnummer ein bestimmter Prozess lauscht. Alle Ports sind einer Prozess-ID oder einem Dienst in einem Betriebssystem zugeordnet. Wie finden wir diesen Port? In diesem Artikel stellen wir drei verschiedene Methoden vor, mit denen Sie herausfinden können, auf welchem ​​Port ein Prozess lauscht.

Wir haben die in diesem Artikel beschriebenen Befehle und Verfahren auf einem Ubuntu 22.04 LTS-System ausgeführt.

Methode 1:Verwenden des netstat-Befehls

Netstat, das Netzwerkstatistik-Dienstprogramm, wird verwendet, um Informationen über die Netzwerkverbindungen anzuzeigen. Dazu gehören Informationen über Schnittstellenstatistiken, Routingtabellen und vieles mehr. Dieses Dienstprogramm ist auf den meisten Linux-Systemen verfügbar, daher verwenden wir es, um herauszufinden, welche Ports bestimmte Prozesse auf dem System verwenden.

Um den Befehl netstat zu verwenden, müssen Sie das Dienstprogramm net-tools mit dem folgenden Befehl installieren, falls es noch nicht auf Ihrem System installiert ist:

$ sudo apt install net-tools

Führen Sie dann den folgenden Befehl aus:

$ sudo netstat -ltnp

Der obige Befehl gibt netstat-Informationen basierend auf den folgenden Merkmalen aus:

  • l:Nur Listening Sockets anzeigen
  • t:TCP-Verbindung anzeigen
  • n:Adressen in numerischer Form anzeigen
  • p:Prozess-ID/Programmname anzeigen

Beispielsweise wird in der obigen Ausgabe des netstat-Befehls das Apache2-Programm mit der Prozess-ID 950 auf Portnummer 80 ausgeführt.

Sie können auch Statistiken für einen bestimmten Port filtern, indem Sie die grep-Funktion in Ihren Befehl integrieren.

Beispiel:

$ sudo netstat -ltnp | grep -w ':80'

Dieser Befehl teilt Ihnen genau mit, welcher Prozess auf Portnummer 80 ausgeführt wird.

Methode 2:Verwenden des lsof-Befehls

Das Dienstprogramm lsof oder List of Open Files hilft beim Auflisten aller geöffneten Dateien auf Ihrem Linux-System. Wir können dieses Dienstprogramm verwenden, um alle Prozesse anzuzeigen, die auf einem bestimmten Port geöffnet sind.

Um den Befehl lsof zu verwenden, müssen Sie das Dienstprogramm lsof mit dem folgenden Befehl installieren, falls es noch nicht auf Ihrem System installiert ist:

$ sudo apt install lsof

Lassen Sie uns lsof verwenden, um den Dienst anzuzeigen, der einen bestimmten Port überwacht.

Beispiel:

$ sudo lsof -i :80

Dieser Befehl listet alle Prozesse auf, die die TCP-Portnummer 80 verwenden.

Methode 3:Verwenden des Fuser-Befehls

Der Befehl fuser zeigt an, welche Prozess-IDs die benannten Dateien, Sockets oder Dateisysteme verwenden. Wir können diesen Befehl verwenden, um Prozess-IDs anzuzeigen, die auf einem bestimmten TCP-Port laufen.

Um den Befehl fuser zu verwenden, müssen Sie das Dienstprogramm psmisc mit dem folgenden Befehl installieren, falls es noch nicht auf Ihrem System installiert ist:

$ sudo apt install psmisc

Lassen Sie uns mit dem folgenden Befehl alle Prozess-IDs anzeigen, die auf TCP-Port 3306 ausgeführt werden:

$ sudo fuser 3306/tcp

Sie können in diesem Befehl eine beliebige Portnummer angeben, um die lauschenden Prozesse anzuzeigen.

In der obigen Ausgabe können Sie sehen, dass die Prozess-ID 975 auf TCP 3306 lauscht.

Führen Sie den folgenden Befehl aus, um anzuzeigen, welchem ​​Programm diese Prozess-ID entspricht:

Syntax:

$ ps -p [processID] -o comm=

In unserem Fall:

$ ps -p [975] -o comm=

Die Ausgabe zeigt, dass die Prozess-ID 975 dem Programmnamen MySDLd entspricht. Somit lauscht die Prozess-ID 975 des Programms MySQLd auf Port Nummer 3306.

Durch die drei Methoden, die Sie in diesem Artikel kennengelernt haben, können Sie leicht sehen, auf welchem ​​TCP-Port ein bestimmter Prozess unter Linux lauscht.


Linux
  1. Finden Sie die Ausführungszeit eines Befehls oder Prozesses in Linux

  2. So finden Sie heraus, was ein Linux-Befehl tut

  3. Überprüfen Sie, welcher Dienst auf einem bestimmten Linux-Port lauscht

  4. Linux – Wie finde ich den Namensraum eines bestimmten Prozesses heraus?

  5. Wie finden Sie heraus, welcher Prozess eine Datei in Linux verwendet?

So finden Sie heraus, wie lange ein Prozess unter Linux läuft

So finden Sie heraus, welcher Dienst an einem bestimmten Port lauscht

So finden Sie heraus, zu welchen Gruppen ein Benutzer in Linux gehört

Finden Sie heraus, welche Prozesse auf einem bestimmten Port in Linux lauschen

Debian:Finden Sie heraus, auf welcher Portnummer ein Prozess lauscht

Gibt es in Linux einen Befehl, um die Prozessornummer zu ermitteln, in der ein Prozess geladen wird?