syslog-ng.conf Logfile für Firewall, aber wie?

O

OliverFfm

Mitglied
Hallo,
ich habe mir ein großes Regelwerk mit iptables erstellt. Es funktioniert alles super. Ich möchte aber auch die Vorgänge in Logfiles speichern.

iptables ......... -j LOG --log-prefix "ICMP: "

In dieser Art habe ich einige Aktionen mit einem Log verknüpft. Aber wohin speichert das denn die Daten?

/var/log/Logdatei

Das müßte der Pfad sein. Aber egal ob ich die Datei warn, messsages usw anschaue, nie sind da Daten von iptables. Habe dann mal nachgelesen und erfahren, dass man was in syslog-ng.conf einstellen kann.

Da steht aber bei mir nur

destination firewall { file("/var/log/firewall");};
log { source(src);filter(f_tables; destination(firewall); };

Was muß ich denn da genau eintragen?
Meine Firewallregeln heißen /etc/iptables.rules

Und sie werden von dem Scribt Firewall_Vers1, welches im Verzeichnis root liegt, aufgerufen.

Bitte helft mir und sagt mir was ich da genau eintragen muß, damit meine Logs in einer Datei landen. Übrigens gibt es bei mir diese Datei firewall nicht. Habe die einfach mal erzeugt und gehofft da wird was reingeschrieben, aber das war nicht so.

Nun weiß ich nicht weiter. Stehe total unter Zeitdruck

Gruß Oliver

PS: Es würde mir aber auch langen, wenn jemand weiß, wo momentan denn meine Logdaten landen. Irgendwo müssen die ja reingeschrieben werden
 
Hi,

filter f_iptables { facility(kern) and match("IN=") and match("OUT="); };
destination firewall { file("/var/log/firewall"); };
log { source(src); filter(f_iptables); destination(firewall); };
sind meines Wissens nach die syslog-ng Standardregeln für die "Firewall"-Umgebung bei openSuSE 10.x.
Wenn Du diese Regeln so auch in Deiner syslog-ng.conf findest, sollten eigentlich auch die Logausgaben von iptables in /var/log/firewall landen.

Per Standard kommen ansonsten immer alle Meldungen in /var/log/messages (Auch mittels Regeln definiert). Achtung: Die SuSE-Standard-Regel
filter f_messages { not facility(news, mail) and not filter(f_iptables); };
unterbindet u. a. das Auftauchen der iptables Meldungen in /var/log/messages (sonst würden sie in beiden vorkommen).

Du kannst natürlich mit einem eigenen Log-Präfix in iptables Dein syslog-ng mit einem eigenen Filter auf dieses Präfix ansetzen und entsprechende Meldungen in eine ganz eigene Datei schreiben lassen.
Wenn Du mal etwas mehr Zeit hast, kannst Du Dir ja u. a. mal Informationen zu syslog-ng ansehen :D

Gruß Daniel
 
Ok, habe mir eben mal die Seite angeschaut und druchgelesen. Vielen Dank. Heute habe ich mehr verstanden wie gestern Nacht übermüdet vor´m PC. So wie es aussieht ist bei mir auch alles richtig eingestellt.
Aber was ich nicht rauslesen konnte, ob ich jetzt einfach eine leere Datei erstellen soll... Und wenn ja mit wlechen Rechten. Oder wird die Datei automatisch generiert. Oder macht das iptables. Muß ich vielleicht in meinem Startscript oder in dem Script für die Rules sowas wie

touch /var/log/firewall eintragen. Bitte um kurze Antwort.

Gruß Oliver
 
Hi,

syslog-ng erstellt die Logdatei bei Bedarf selbst. Du kannst sie auch mal zum Test von Hand anlegen (sudo touch /var/log/firewall; sudo chmod 640 firewall).
Beachte auch, daß jede Änderung an der syslog-ng.conf einen Neustart bzw. zumindest ein Neu laden erfordert, damit diese wirksam werden.

Wenn trotzdem keine Meldungen in /var/log/firewall landen, solltest Du mal die restlichen logfiles - vor allem /var/log/messages - durchsuchen, ob sie falsch oder gar nicht gefiltert wurden.
Code:
#> find /var/log -type f -exec egrep -H 'IN=|OUT=' {} \;

Hast Du denn in der syslog-ng.conf selbst noch ein wenig gebastelt, oder ist es noch die originale von der SuSE-Installation?
Du könntest auch mal noch die Ersetzung einbauen:
Code:
# filter f_messages { not facility(news, mail) and not filter(f_iptables); };
filter f_messages { not facility(news, mail); };
und syslog-ng neu starten, um dann zu sehen, ob die itpables-Meldungen dann wenigstens in /var/log/messages auftauchen.

Gruß Daniel
 
Danke für die schnelle Antwort.

Habe nichts weiter an der syslog-ng verändert. Habe alle Einträge verglichen. Und es stimmt alles so wie es sein soll. Also fang ich mal an. File ist erstellt. Ich muß mich dann jetzt vom Netz trennen, da die Tests in zwei lokalen miteinander verbundenen Test durchgeführt werden.
Aber danke für die Erklärung. Habe es jetzt verstanden wie das ganze funktioniert ;-)

Gruß Oliver
.
.
.
EDIT (autom. Beitragszusammenführung) :
.

Die anderen Logs habe ich auch immer durchgeschaut. Aber lasse jetzt erstmal die ganzen Szenarien durchlaufen. da müssen ja dann Logeinträge registriert werden.
.
.
.
EDIT (autom. Beitragszusammenführung) :
.

Ich habe meine ersten Testversuche hinter mir und es klappt super. Vielen Dank. Das war echt wichtig gewesen, dass das klappt

Gruß Oliver
 
Zuletzt bearbeitet:

Ähnliche Themen

Queue für copy Script

syslog-ng und iptables Problem

Logfile der FW in ein seperates Logfile schicken

Squid nur zum maskieren der eigenen IP, nicht für Webserver auf port 80

Mit syslog-ng in Mysql DB loggen

Zurück
Oben