Angenommen, ich habe einen Server mit einer privaten und einer öffentlichen Schnittstelle. Public hat möglicherweise HTTP (S) -Server, private MySQL und SSH.
Offensichtlich ist Nagios nützlich, um zu überprüfen, ob die Dienste auf ihren jeweiligen Schnittstellen ausgeführt werden. Aber ist es eine gute Idee, Überprüfungen zu erstellen, die explizit testen, ob die MySQL- und SSH-Ports auf der öffentlichen Schnittstelle nicht geöffnet sind ? Die Idee ist, versehentliche Fehlkonfigurationen zu erkennen, die private Dienste eröffnet haben, und entsprechend zu alarmieren.
Ein Teil von mir hat die Idee, dass dies nicht besonders gut skaliert werden kann - stellen Sie sich vor, es gibt eine DROP-Regel für iptables. Beispielsweise müsste die Prüfung warten, bis das Zeitlimit für die Prüfung überschritten ist, bevor sie abgeschlossen und fortgesetzt werden kann. Diese Zeitüberschreitung müsste jedoch ausreichend hoch sein, um einen blockierten Dienst von einem offenen Dienst unterscheiden zu können, der wirklich festgefahren ist.
Ist das eine praktische Idee? Ist Nagios das richtige Werkzeug? Ich habe noch nicht einmal untersucht, ob es möglich ist, das Ergebnis der TCP-Check-Plugins zu negieren, aber ich bin mir sicher, dass es machbar ist ...
quelle
DROP
nicht das richtige Ziel für einen solchen Zweck ist. Die Verwendung-j REJECT --reject-with tcp-reset
würde dieses spezielle Problem lösen. Für mich klingt Ihre FrageREJECT
eher nach einem anderen Grund als nachDROP
.Antworten:
Ja, sicher. Die Aufgabe eines Überwachungssystems besteht darin, sicherzustellen, dass die Geschäftsanforderungen derzeit von der IT-Infrastruktur erfüllt werden, unabhängig von diesen Anforderungen.
Mein Bauchgefühl ist, dass es keine einfache Begrenzung (naja, 65535) für die Anzahl der Ports gibt, die Sie überwachen, um sicherzustellen, dass sie nicht plötzlich geöffnet werden, und dass der beste Weg, um diese Kontrolle zu erreichen, eine strenge Quellcodeverwaltung und eine starke ist. aggressive Dateisystemüberwachung (z. B. Tripwire) auf dem Server.
Aber wenn es bestimmte Ports gibt, die absolut geschäftskritisch sind, werden sie niemals offengelegt, dann sollten Sie auf jeden Fall eine spezielle Prüfung dafür durchführen. Vielleicht möchten Sie sich das NAGIOS-
negate
Plugin ansehen , das mit den meisten wichtigen Distributionen geliefert wird und genau das tut, was Sie vorschlagen.quelle
Sie können jede Prüfung mit dem
negate
Plugin kombinieren, um die Prüflogik umzukehren. Sie können beispielsweise CRIT, WARN, UNKNOWN und OK für andere Status neu definieren. Weitere Informationen finden Sie in der Ausgabe --help .Wenn Sie Bedenken haben, dass DROP-Richtlinien die Prüfzeit verlängern, können Sie das Zeitlimit einfach verkürzen. Für eine solche Überprüfung müssen Sie wahrscheinlich auch nicht alle 5 Minuten überprüfen. Wir haben einige ähnliche Überprüfungen, die stündlich durchgeführt werden.
quelle