Außerdem für die Verwendung von iptables zum Protokollieren eingehender Verbindungen.
Gibt es eine Möglichkeit, etablierte eingehende Verbindungen zu einem Dienst zu protokollieren, für den Sie nicht die Quelle haben (nehmen wir an, der Dienst protokolliert solche Dinge nicht selbst)? Was ich tun möchte, ist, einige Informationen zu sammeln, die darauf basieren, wer eine Verbindung herstellt, um Dinge wie die Tageszeiten, zu denen der Dienst am häufigsten genutzt wird, wo auf der Welt die Hauptbenutzerbasis usw. ist, mitteilen zu können.
Ich bin mir bewusst, dass ich es verwenden netstat
und einfach an ein Cron-Skript anschließen kann, aber das ist möglicherweise nicht korrekt, da das Skript nur so oft wie eine Minute ausgeführt werden kann.
Folgendes denke ich gerade:
- Schreiben Sie ein Programm, das ständig abfragt
netstat
und nach etablierten Verbindungen sucht, die in der vorherigen Umfrage nicht angezeigt wurden. Diese Idee scheint jedoch eine solche Verschwendung von CPU-Zeit zu sein, da möglicherweise keine neue Verbindung besteht. - Schreiben Sie ein Wrapper-Programm, das eingehende Verbindungen an jedem Port akzeptiert, auf dem der Dienst ausgeführt wird, aber dann würde ich nicht wissen, wie diese Verbindung an den tatsächlichen Dienst weitergegeben werden soll.
Bearbeiten: Mir ist gerade eingefallen, dass diese Frage für den Stapelüberlauf besser sein könnte, obwohl ich nicht sicher bin. Entschuldigung, wenn dies der falsche Ort ist.
Antworten:
So können Sie neue Verbindungen mit iptables protokollieren
Dadurch wird eine Nachricht wie diese für eine neue SSH-Verbindung hinzugefügt
oder so für eine neue http-Verbindung
und so weiter für jede neue Verbindung zu Ihrem System. Das wird überall dort protokolliert, wo Ihr Syslog zum Senden von kern.warning-Nachrichten konfiguriert ist.
quelle
Sie können auditd verwenden und am Ende des Tages einige Statistiken basierend auf diesen Protokollzeilen berechnen. Oder Sie könnten auch zu einer snmp-Lösung gehen, aber wahrscheinlich haben Sie Ihre eigene Mib geschrieben
quelle
Wie wäre es mit tcpdump oder wireshark?
quelle
tcpdump -i <interface> -s 65535 -w <some-file>
Außerdem müssen Sie die Erfassung mit ^ C beenden, wenn Sie glauben, genügend Pakete erfasst zu haben.