Gibt es eine Möglichkeit, die UFW-Abmeldung von dmesg zu verhindern?

23

Es gibt Kommentare in der /etc/rsyslog.d/20-ufw.confDatei, die Ihnen die Möglichkeit geben, zu verhindern, dass UFW-Ereignisse im Kernel und in den Nachrichtenprotokollen protokolliert werden, was ich getan habe.

Ich würde gerne UFW-Events auch aus dem herausholen dmesg, aber wie geht das?

3deinfluss
quelle
4
Als Workaround habe ich gerade dmesg mit dmesg | aliasiert grep -v UFW.
3dinfluence
Verwandte Fehler im Launchpad: 1264621 und 1475676 .
Pablo A

Antworten:

21

Sie können die UFW-Protokollierung mit dem folgenden Befehl in der Shell deaktivieren:

sudo ufw logging off

Das Standard-Loglevel ist niedrig . Aus der UFW-Manpage :

  • off deaktiviert die ufw-verwaltete Protokollierung
  • low protokolliert alle blockierten Pakete, die nicht der Standardrichtlinie entsprechen (mit Ratenbegrenzung), sowie Pakete, die den protokollierten Regeln entsprechen
  • Mittlere Protokollstufe niedrig, plus alle zulässigen Pakete, die nicht mit der Standardrichtlinie übereinstimmen, alle UNGÜLTIGEN Pakete und alle neuen Verbindungen. Die gesamte Protokollierung erfolgt mit Ratenbegrenzung.
  • High Log Level Medium (ohne Ratenbegrenzung), plus alle Pakete mit Ratenbegrenzung
  • volle Logstufe hoch ohne Ratenbegrenzung

Mit können Sie den aktuellen Loglevel abrufen sudo ufw status verbose.

Mika Vatanen
quelle
7

Ich habe dieses Problem untersucht.

Ich glaube nicht, dass es einen Ausweg gibt.

Der dmesgBefehl druckt direkt den Inhalt des Kernel-Ringpuffers. Dies enthält alle UFW-Protokolleinträge, die Sie sehen.

Die /etc/rsyslog.d/20-ufw.confDatei sagt rsyslog , die der UFW Einträge im Kernel Ring Buffer sich anmelden entweder das /var/log/ufw.logoder /var/log/kern.log.

Sie können die UFW Einträge von protokollierten verhindern , /var/log/kern.logindem uncommenting die Linie (zu entfernen Vervielfältigung) in /etc/rsyslog.d/20-ufw.confdas enthält & ~.

Leider gibt es keine Möglichkeit, das zu verhindern dmesg Befehl nicht daran gehindert werden, diese Meldungen anzuzeigen. Ihre Arbeit ist das Beste, was ich mir einfallen lassen kann.

Chris Woollard
quelle
Chris, danke, dass du dir das angesehen hast. +1 für die Mühe. Ich werde die Frage vorerst unbeantwortet lassen, um zu sehen, ob jemand anderes irgendwelche Ideen hat. Vielleicht gibt es keine Lösung dafür und ich melde einen Fehler auf dem Launchpad, da ich sicher bin, dass es andere gibt, die gerne ein Auge auf dmesg haben, um sicherzustellen, dass auf ihrem Server keine Hardwareprobleme auftreten und es nicht wichtig ist, dies zu sehen die UFW-Einträge.
3 Einfluss
Nur um Ihre erwähnten Fehlerberichte aufzugreifen: (archiviert) Debian-Fehler # 664748 und Launchpad-Fehler # 555852 scheinen dieses Problem jetzt zu verfolgen.
Jani Uusitalo
4

Für Benutzer, die die Protokollstufe weiter optimieren möchten, empfehle ich die Verwendung von "Protokoll" - oder Ablehnungs- / Ablehnungsregeln ( Einzelheiten finden Sie auf der ufwManpage ). Beispielsweise können Sie "Abmelden" verwenden und dann explizite Protokollierungsregeln für das, was Sie protokollieren möchten, einfügen. Alternativ können Sie "Protokollierung niedrig" verwenden und dann explizite Ablehnungs- / Ablehnungsregeln einfügen, um Übereinstimmungen stillschweigend abzulehnen, die andernfalls protokolliert würden.

Anuser
quelle
1

Sie können auch einfach grep verwenden, um die UFW-Nachrichten herauszufiltern. Zum Beispiel,

dmesg | grep -v UFW

Auf diese Weise können Sie die Protokollierung auch zur Überprüfung aufbewahren.

Carmichel
quelle
Dies ist kaum sinnvoll, da sich auf einem tatsächlichen Server, der mit dem Internet in Verbindung steht, außer den UFW-Nachrichten in den Protokollen nichts anderes befindet.
Antti Haapala
1

Die obige Antwort ist der einzige Weg:

    dmesg | grep -v UFW

Sie können dies jedoch einfacher verwenden, indem Sie einen Alias ​​wie diesen festlegen:

    alias dmesg='dmesg | grep -v UFW'

Dies wird ausgeführt, dmesg | grep -v UFWwenn Sie eingeben dmesg.

Wenn Sie die farbenfrohe Version von dmesg beibehalten möchten, können Sie den folgenden Befehl verwenden:

    alias dmesg='dmesg --color=always | grep -v UFW --color=always'

dmesgVerwenden Sie auf diese Weise auch Farben über der Pfeife.

WARNUNG! Verwenden Sie diese Methode nur, wenn Sie Protokolle anzeigen und nach etwas suchen, da dadurch möglicherweise Skripts von Drittanbietern in dieser Sitzung beschädigt werden.

Matthew Friday
quelle