Verfolgen Sie Prozesse, die über TCP (an bestimmten Ports) eine Verbindung herstellen, indem Sie auditd (in GNU / Linux) verwenden.

621
user2543740

Ich möchte Prozesse aufspüren, bei denen versucht wird, eine Verbindung zu einem bestimmten Port (auf einem Remote-Host) herzustellen. Ich stellte fest, dass dies auditdfür diese Art von Aufgaben sehr mächtig ist. Der folgende Befehl weist auditddas Protokoll jedes Verbindungsaufrufs an:

auditctl -a always,exit -F arch=b64 -S connect auditctl -a always,exit -F arch=b32 -S connect 

Das Protokoll wird dann in gespeichert /var/log/audit/. Der Inhalt ist jedoch ziemlich komplex. Es gibt ausearchdie Möglichkeit, das Protokoll zu filtern, aber vielleicht weiß bereits jemand von Ihnen, wie Sie dieses Problem lösen können.

PS Ich möchte netstat nicht verwenden, weil ich sogar die ausgefallenen Verbindungen usw. sehen möchte.

Danke im Voraus

0
Was ist eine ** fehlgeschlagene Verbindung **? Wenn Sie über Port 80/443 nachdenken, gibt es so etwas nicht. Wenn Sie stattdessen über * ssh / ftp / telnet * -Verbindungen nachdenken, brauchen Sie ** nicht * auditd *. Alle Informationen, die Sie jemals erhalten können, befinden sich in * / var / log / auth.log *. MariusMatutiae vor 7 Jahren 0
Mit ** fehlgeschlagener Verbindung ** meine ich, wenn ein Programm versucht, eine TCP-Verbindung aufzubauen und ein RST-Flag in der TCP-Antwort zu erhalten oder einfach keine Antwort ... Ich möchte den Verbindungsaufbau aufspüren (von lokal nach anderswo) an bestimmten Häfen user2543740 vor 7 Jahren 0
In deinen Schuhen würde ich * iptables * ´ LOG-Warteschlange verwenden. MariusMatutiae vor 7 Jahren 1
Danke, scheint eine nette Idee zu sein, aber wie kann ich die Prozess-ID oder ähnliches protokollieren? Ich schaute auf, aber das scheint niemand zu tun user2543740 vor 7 Jahren 0

0 Antworten auf die Frage