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

Wie kann ich feststellen, welcher Prozess einen bestimmten Port unter Linux geöffnet hat?

Lösung 1:

Neben Netstat, das in anderen Beiträgen erwähnt wurde, sollte der Befehl lsof dazu in der Lage sein, dies problemlos zu tun. Verwenden Sie einfach dies:

lsof -i :<port number>

und alle Prozesse sollten kommen. Ich verwende es ziemlich häufig unter OS X.

Debian-Verwaltungsartikel für lsof

Lösung 2:

Warnung:Ihr System ist kompromittiert.

Das benötigte Werkzeug ist lsof , das Dateien (und Sockets und Ports) auflistet. Es ist höchstwahrscheinlich installiert und es ist höchstwahrscheinlich die Version des Angreifers, was bedeutet, dass es lügen wird für Sie.

Dies ist in der Tat ein Rootkit. Ich habe dieses Verhalten schon einmal gesehen, und es ist immer ein Rootkit. Ihr System ist kompromittiert, und allen von Ihnen verwendeten Tools, die von demselben Computer stammen, kann nicht vertraut werden. Booten Sie in eine Live-CD (die vertrauenswürdige schreibgeschützte Binärdateien enthält) und verwenden Sie diese, um Ihre Daten, Einstellungen usw. zu extrahieren. Alle Programme, die Sie hatten, alle Skripte, die Sie hatten, verlassen . Bring sie nicht mit . Behandle sie und das System, als ob sie Lepra hätten, weil sie es haben .

Wenn du fertig bist, nimm es aus dem Orbit.

Tun Sie dies so bald wie möglich. Oh, und trennen Sie Ihre Netzwerkverbindung - verweigern Sie Ihrem Angreifer den Zugriff.

Lösung 3:

sudo netstat -lnp  

Listet Ports auf, die auf eingehende Verbindungen warten, und den zugehörigen Prozess, der den Port geöffnet hat.

Lösung 4:

netstat -anp

Das "-p" weist es an, die Prozess-ID aufzulisten, die den Port geöffnet hat. Das -an weist es an, Listening-Ports aufzulisten und keine Namen aufzulösen. Auf stark ausgelasteten Systemen kann dies die Rückkehr erheblich beschleunigen.

netstat -anp | grep "LISTE"

Das gibt Ihnen nur die offenen Ports.

Lösung 5:

Wenn Sie den Port nicht mit Betriebssystem-Tools öffnen sehen und einen Angriff vermuten, könnte es sein, dass ein Rootkit installiert wurde.

Das Rootkit könnte Systemwerkzeuge geändert haben, um bestimmte Prozesse und Ports zu umgehen, oder Kernelmodule geändert haben.

Sie können mit mehreren automatisierten Tools nach Rootkits suchen. 'apt-cache search rootkit' zeigt in Ubuntu Folgendes:

chkrootkit - rootkit detector
rkhunter - rootkit, backdoor, sniffer and exploit scanner
unhide - Forensic tool to find hidden processes and ports

Wenn Sie zufällig ein Rootkit haben, können Sie das 'geänderte' auf Ihr System zurücksetzen, aber ich empfehle, dass Sie herausfinden, wie der Einbruch erfolgte, und das System härten, damit es sich nicht wiederholt.

Sie sind nicht exklusiv für Ubuntu, Sie können sie auch in CentOS verwenden. Suchen Sie einfach nach dem Paket oder laden Sie es von ihrer Seite herunter.

Durch die Ausgabe von diesem Port scheint es, dass Sie tatsächlich pcanywhere ausführen:„�Ë� “ ist sehr ähnlich zu „Bitte drücken Sie “, was eine pcanywhere-Begrüßungsnachricht ist. Ich weiß nicht, warum der Prozess nicht in der Prozessliste angezeigt wird. Bist du root?

Sie können auch einen Neustart versuchen, um zu sehen, ob es sich um einen einmaligen Prozess handelt.


Linux
  1. Wie sieht der Außerbetriebnahmeprozess Ihrer Linux-Serverhardware aus?

  2. So überprüfen Sie den offenen Port auf einem Remote-Linux-System

  3. Wie beendet man einen Prozess, der auf einem bestimmten Port in Linux läuft?

  4. Wie finde ich heraus, welcher Prozess eine Datei in Linux gesperrt hat?

  5. Wie beendet man einen Prozess, der auf einem bestimmten Port in Linux läuft?

So überprüfen Sie, ob ein Port auf einem Remote-Linux-System geöffnet ist

So finden und schließen Sie offene Ports in Linux

So verwenden Sie Netcat zum Scannen offener Ports in Linux

So beenden Sie den laufenden Linux-Prozess auf einem bestimmten Port

So erkennen Sie, ob Ihr System unter Linux über einen USB 3.0-Anschluss verfügt [Kurztipp]

So verfolgen und verfolgen Sie einen Linux-Prozess