PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : iptables LOGs nicht in /var/log/messages



LinuxNewbee
12.12.03, 10:03
Hi NG!

SuSE 8.0 und folgendes Anfänger-iptables skript:



iptables -N block
iptables -A block -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A block -m state --state NEW -i ! ppp0 -j ACCEPT
iptables -A block -j DROP


iptables -A FORWARD -m limit --limit 4/s -j LOG --log-prefix "iptableslog "
iptables -A FORWARD -p tcp --dport 80 -i ppp0 -j ACCEPT
iptables -A FORWARD -p tcp --dport 21 -i ppp0 -j ACCEPT
iptables -A FORWARD -p tcp --dport 25 -i ppp0 -j ACCEPT
iptables -A FORWARD -p tcp --dport 110 -i ppp0 -j ACCEPT
iptables -A FORWARD -i ppp0 -j block


iptables -A FORWARD -s 192.168.0.31 -i eth0 -j ACCEPT
iptables -A FORWARD -s 192.168.0.35 -i eth0 -j ACCEPT
iptables -A FORWARD -i eth0 -j DROP


so wie ich's verstanden hab logged das


iptables -A FORWARD -m limit --limit 4/s -j LOG --log-prefix "iptableslog "

jetzt alle durchs System gerouteten Packete (4 Stk. pro Sekunde) in der /var/log/messages und versieht diese einträge mit 'iptableslog'.

müsste mit einem



cat /var/log/messages | grep iptableslog


alles diesbezüglichen Einträge finden, oder?

GEHT ABA NICH! :( WARUM NICH?

Muss ich iptables da noch irgendwie konfigurieren??

LX-Ben
12.12.03, 12:06
Schau dir doch mal deine messages an, wahrscheinlich ist noch Text davor/dahiner, also grep *iptableslog* notwendig.

LinuxNewbee
12.12.03, 15:52
Hat auch keine erfolg und in der messages steht auch definitiv nix davon drin!

derRichard
12.12.03, 16:03
hallo!

in messages müssen sie nicht sein.
schau mal in der kern.log.

//richard

michel_vaclav
12.12.03, 16:05
Hallo,

ich hab das gleiche Phänomen. Versuch mal Deine abgelehnten INPUT-Versuche zu loggen. Das klappt zumindest bei mir. Warum die Forward-Erfolge nicht geloggt werden weiß ich leider auch noch nicht

michel_vaclav

derRichard
12.12.03, 16:08
hallo!

in # dmesg sollte man sie 100%ig sehen.
wenn bei iptables was geloggt wird, dann wird im kernel printk() aufgerufen und das kann man bei dmesg sehen.
was syslog damit macht ist egal...

//richard

fsd
13.12.03, 12:56
Ich habe das gleiche Problem ab Kernel 2.4.23.
In dmesg werden wie angezeigt, aber im syslogd kommen sie nicht an. Ich weiß absolut nicht, woran das liegt.

MFG fsd.

derRichard
13.12.03, 13:10
Original geschrieben von fsd
Ich habe das gleiche Problem ab Kernel 2.4.23.
In dmesg werden wie angezeigt, aber im syslogd kommen sie nicht an. Ich weiß absolut nicht, woran das liegt.

MFG fsd.
hallo!

läuft der klogd?

//richard

fsd
13.12.03, 13:31
ja

MFG fsd.

LinuxNewbee
14.12.03, 14:43
Also klogd und syslogd laufen. dmesg spruckt die iptables logs ordnungsgemäß aus. Aber wie krieg ich die logs jetzt in die /var/log/messages ?

derRichard
14.12.03, 14:45
Original geschrieben von LinuxNewbee
Also klogd und syslogd laufen. Aber vom dmesg hab ich bei SuSE doch nix! also hat noch jemand ne idee?
hallo!

dann ist das log-modul von iptables nicht geladen.

//richard

LinuxNewbee
14.12.03, 15:10
doch, doch! hab mich vertan!!! die logs werden im dmesg abgelegt! Aber wie kommen die logs in die /var/log/messages

derRichard
14.12.03, 15:20
Original geschrieben von LinuxNewbee
doch, doch! hab mich vertan!!! die logs werden im dmesg abgelegt! Aber wie kommen die logs in die /var/log/messages
hallo!

das ist dann nur noch eine konigurationssache von sysklogd.
du musst ihm sagen, was er mit den kernel-logs machen soll...

//richard

LinuxNewbee
14.12.03, 15:22
Alles klar! Danke! werd mich jetzt erstmal über dmesg, klogd und syslogd schlau machen!

Danke

[WCM]Manx
14.12.03, 16:40
Hi!

...da häng ich mich gleich mal an, da ich durch den thread auf ein witziges (nerviges) Problem gestoßen bin.
Mein iptables script hat viele "user-defined chains" und eben nur bei diesen wird nichts geloggt. Obwohl die LOG-Einträge mit dmesg sichtbar sind.
Mit "iptables -A INPUT -m limit --limit 4/s -j LOG --log-prefix "iptableslog " tauchen sie auch brav in /var/log/messages auf.

Debian 3, Kernel 2.4.22


dmesg-Beispiel:
DENIED PORT:IN=eth0 OUT= MAC=00:50:ba:a9:30:1c:00:04:27:fd:f0:22:08:00 SRC=213.139.94.109 DST=193.171.xxx.xxx LEN=40 TOS=0x00 PREC=0x00 TTL=118 ID=59745 PROTO=TCP SPT=139 DPT=139 WINDOW=9516 RES=0x00 SYN URGP=0
DENIED PORT:IN=eth0 OUT= MAC=00:50:ba:a9:30:1c:00:04:27:fd:f0:22:08:00 SRC=213.139.94.109 DST=193.171.xxx.xxx LEN=40 TOS=0x00 PREC=0x00 TTL=118 ID=59745 PROTO=TCP SPT=139 DPT=139 WINDOW=9516 RES=0x00 SYN URGP=0
iptableslog IN=eth1 OUT= MAC=ff:ff:ff:ff:ff:ff:00:0c:76:25:49:a9:08:00 SRC=10.1.1.2 DST=10.1.1.255 LEN=78 TOS=0x00 PREC=0x00 TTL=128 ID=10509 PROTO=UDP SPT=137 DPT=137 LEN=58
iptableslog IN=eth1 OUT= MAC=ff:ff:ff:ff:ff:ff:00:0c:76:25:49:a9:08:00 SRC=10.1.1.2 DST=10.1.1.255 LEN=78 TOS=0x00 PREC=0x00 TTL=128 ID=10512 PROTO=UDP SPT=137 DPT=137 LEN=58

in /var/log/messages hab ich nur "iptableslog" :confused:

Manx

[WCM]Manx
14.12.03, 17:06
... o.k weiter probiert => Ergebnis
Wenn ich die LOG-Zeile (Für eine userdefined chain) in die Konsole klopfe z.B
"iptables -A CHECK_FLAGS -p tcp -m limit --limit 5/minute -j LOG --log-level notice --log-prefix "test: "
hab' ich's auch schön in den messages, aber warum sind die aus dem Script zwar in dmesg aber nicht in /var/log/messages?

Grüße

Manx

LinuxNewbee
14.12.03, 23:07
@[WCM]Manx

hast du exakt diese Zeile auch in deinem Skript stehen? Ansonsten könnte es doch vom level abhängen. Vielleicht is dein syslog so konfiguriert, dass es logs vom level notice in die richtige Datei schreibt!

@AlleAnderen

Meine syslog.conf hat jetzt folgenden Abschnitt:


#
# save the rest in one file
#
*.*;mail.none;news.none -/var/log/messages
*.info /var/log/messages


Per Skript werden iptables log auf level "info" gesetzt.


iptables -A FORWARD -m limit --limit 4/s -j LOG --log-level info --log-prefix "iptableslog "


syslogd ist neu gestartet! warum will er nich? wie gesagt: mit dmesg seh ich alle meldungen!!! will sie aber in der /var/log/messages haben

[WCM]Manx
15.12.03, 07:26
Hi!

Bei mir funktioniert's jetzt wieder.
Ich hatte vergessen, dass ich im Zuge der FreeS/WAN Installation testweise das auth.log umzulegen versuchte, dabei dürfte ich nicht alles wieder korrekt zurückgestellt haben, denn das Einspielen der backup-syslog.conf hat das Problem scheinbar beseitigt.

der entsprechende Abschnitt schaut bei mir so aus:


# Some `catch-all' logfiles.
#
*.=debug;\
auth,authpriv.none;\
news.none;mail.none -/var/log/debug
*.=info;*.=notice;*.=warn;\
auth,authpriv.none;\
cron,daemon.none;\
mail,news.none -/var/log/messages

Grüße

Manx

fsd
15.12.03, 18:45
Ich habe jetzt --log-level info angehangen, und jetzt funktioniert es komischerweise.
seltsam ist:

Dass es mit dem alten Kernel, mit exakt gleicher konfiguration funktioniert hat.
Dass in /var/log/messages alles geloggt wird, deshalb seltsam, warum die logs den userspace nur als "info" erreichen.

MFG fsd.

LinuxNewbee
15.12.03, 19:42
Das ist doch in der /etc/syslog.conf festgelegt in welche files welche logs geschrieben werden. oder an welche devices...

aber warum das bei mir immer noch nicht funzt versteh ich nicht! wie gesagt...
im dmesg sind alle logs von iptables zu finden. der syslog ist auch so konfiguriert, dass meldungen auf level "info" in der /var/log/messages abgelegt werden.

muss ich vielleicht den klogd noch konfigurieren?

DeaNewBee