iptables-log-output in anderes logfile
iptables-log-output in anderes logfile
Hi Leute,
ich habe hier bei mir eine iptables-Regel, welche einen Eintrag in /var/log/syslog erstellt. Den Eintrag hätte ich aber lieber in /var/log/auth.log, weil das erheblich übersichtlicher wäre. Ist das irgendwie *einfach* machbar?
ich habe hier bei mir eine iptables-Regel, welche einen Eintrag in /var/log/syslog erstellt. Den Eintrag hätte ich aber lieber in /var/log/auth.log, weil das erheblich übersichtlicher wäre. Ist das irgendwie *einfach* machbar?
Re: iptables-log-output in anderes logfile
ZBsp. /etc/rsyslog.d/20_FIREWALL.conf
mit /etc/logrotate.d/zz_FIREWALL.log
entsprechend
Code: Alles auswählen
:msg,regex,"IN=.*OUT=.*SRC=.*DST=" -/var/log/FIREWALL.log
& ~
Code: Alles auswählen
/var/log/FIREWALL.log
{
size 100k
rotate 4
weekly
missingok
notifempty
compress
delaycompress
sharedscripts
postrotate
#invoke-rc.d rsyslog reload > /dev/null # squeeze
invoke-rc.d rsyslog rotate > /dev/null
endscript
}
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
Re: iptables-log-output in anderes logfile
Hmm?
Es handelt sich um einen iptables-Eintrag, welcher einen Log-Eintrag in syslog generiert. Ich will nicht noch ein zusätzliches Logfile, der Eintrag soll nur stattdessen in auth.log erscheinen. Mich wundert sowieso, dass er per default in syslog auftaucht.
Der Eintrag beginnt mit
Was muss ich also machen, damit die Zeile, in welcher exakt dieser Text enthalten ist, in auth.log aufzufinden ist und eben nicht in syslog oder irgendeinem anderen zu generierenden File? Kann ich das auch direkt in iptables erledigen, oder muss ich irgendwo ein separates conffile erzeugen?
Es handelt sich um einen iptables-Eintrag, welcher einen Log-Eintrag in syslog generiert. Ich will nicht noch ein zusätzliches Logfile, der Eintrag soll nur stattdessen in auth.log erscheinen. Mich wundert sowieso, dass er per default in syslog auftaucht.
Der Eintrag beginnt mit
Code: Alles auswählen
Sep 8 16:01:01 rechner kernel: [Sternzeit xxx.yyy] SSH scanner detected: ...
Re: iptables-log-output in anderes logfile
Du brauchst doch nur /var/log/FIREWALL.log <-> /var/log/auth.log
und den Suchstring entsprechend anzupassen
(was zugegebenerweise manchmal tricky werden kann -> try+error).
Hier genügt "SSH scanner detected"?
Bei auth.log entfällt natürlich das extra-logrotate, da schon woanders abgehandelt.
Die '& ~' sorgt dafür, daß entsprechende Logzeile nicht weiter behandelt wird.
und den Suchstring entsprechend anzupassen
(was zugegebenerweise manchmal tricky werden kann -> try+error).
Hier genügt "SSH scanner detected"?
Bei auth.log entfällt natürlich das extra-logrotate, da schon woanders abgehandelt.
Die '& ~' sorgt dafür, daß entsprechende Logzeile nicht weiter behandelt wird.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
Re: iptables-log-output in anderes logfile
Aha, danke! Ich habe jetzt also eine Datei /etc/rsyslog.d/20_iptables.conf erstellt mit folgendem Inhalt:
Und du meinst, das war's und jetzt funktioniert das, wie ich mir das vorstelle?
Es existiert ja nun auch schon eine Datei /etc/rsyslog.conf. Da steht z.B. das folgende drin:
Hätte ich die von Dir genannte Zeile *genauso* hier hinein schreiben können? Ich frage deshalb, weil in der rsyslog.conf keine Zeile mit einem ":" anfängt.
Code: Alles auswählen
:msg,regex,"SSH scanner detected:" -/var/log/auth.log
& ~
Es existiert ja nun auch schon eine Datei /etc/rsyslog.conf. Da steht z.B. das folgende drin:
Code: Alles auswählen
###############
#### RULES ####
###############
#
# First some standard log files. Log by facility.
#
auth,authpriv.* /var/log/auth.log
*.*;auth,authpriv.none;\
news.!=notice -/var/log/syslog
Re: iptables-log-output in anderes logfile
Die rsyslog.conf ist die Verbindungsstelle von klassischem zum rsyslog-Format.
Ich lasse diese Datei aus Upgrade-Gründen unberührt,
"meine" Konfiguration aus /etc/rsyslog.d/ wird ja über das '$IncludeConfig' eingebunden.
Ich lasse diese Datei aus Upgrade-Gründen unberührt,
"meine" Konfiguration aus /etc/rsyslog.d/ wird ja über das '$IncludeConfig' eingebunden.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")
Re: iptables-log-output in anderes logfile
Danke! Nur noch mal zur Vervollständigung: die o.g. Codezeile funktioniert einwandfrei!
Konnte ich erst jetzt bestätigen, weil der Log-Fall selten eintritt![Wink ;)](./images/smilies/icon_wink.gif)
Konnte ich erst jetzt bestätigen, weil der Log-Fall selten eintritt
![Wink ;)](./images/smilies/icon_wink.gif)
Re: iptables-log-output in anderes logfile
Kannst du testen mitdirk11 hat geschrieben:Konnte ich erst jetzt bestätigen, weil der Log-Fall selten eintritt
Code: Alles auswählen
$ logger 'SSH scanner detected: foobar'
Gruss Cae
If universal surveillance were the answer, lots of us would have moved to the former East Germany. If surveillance cameras were the answer, camera-happy London, with something like 500,000 of them at a cost of $700 million, would be the safest city on the planet.
—Bruce Schneier