iptables-log-output in anderes logfile

Einrichten des lokalen Netzes, Verbindung zu anderen Computern und Diensten.
Antworten
dirk11
Beiträge: 2854
Registriert: 02.07.2013 11:47:01

iptables-log-output in anderes logfile

Beitrag von dirk11 » 10.09.2013 09:45:48

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?

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: iptables-log-output in anderes logfile

Beitrag von rendegast » 10.09.2013 12:13:37

ZBsp. /etc/rsyslog.d/20_FIREWALL.conf

Code: Alles auswählen

:msg,regex,"IN=.*OUT=.*SRC=.*DST="      -/var/log/FIREWALL.log
& ~
mit /etc/logrotate.d/zz_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
}
entsprechend
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

dirk11
Beiträge: 2854
Registriert: 02.07.2013 11:47:01

Re: iptables-log-output in anderes logfile

Beitrag von dirk11 » 10.09.2013 14:26:16

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

Code: Alles auswählen

Sep 8 16:01:01 rechner kernel: [Sternzeit xxx.yyy] SSH scanner detected: ...
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?

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: iptables-log-output in anderes logfile

Beitrag von rendegast » 10.09.2013 14:40:08

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.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

dirk11
Beiträge: 2854
Registriert: 02.07.2013 11:47:01

Re: iptables-log-output in anderes logfile

Beitrag von dirk11 » 10.09.2013 19:30:38

Aha, danke! Ich habe jetzt also eine Datei /etc/rsyslog.d/20_iptables.conf erstellt mit folgendem Inhalt:

Code: Alles auswählen

:msg,regex,"SSH scanner detected:"      -/var/log/auth.log
& ~
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:

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
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.

rendegast
Beiträge: 15041
Registriert: 27.02.2006 16:50:33
Lizenz eigener Beiträge: MIT Lizenz

Re: iptables-log-output in anderes logfile

Beitrag von rendegast » 11.09.2013 07:32:36

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.
mfg rendegast
-----------------------
Viel Eifer, viel Irrtum; weniger Eifer, weniger Irrtum; kein Eifer, kein Irrtum.
(Lin Yutang "Moment in Peking")

dirk11
Beiträge: 2854
Registriert: 02.07.2013 11:47:01

Re: iptables-log-output in anderes logfile

Beitrag von dirk11 » 11.09.2013 20:06:26

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 ;)

Cae
Beiträge: 6349
Registriert: 17.07.2011 23:36:39
Wohnort: 2130706433

Re: iptables-log-output in anderes logfile

Beitrag von Cae » 11.09.2013 22:30:06

dirk11 hat geschrieben:Konnte ich erst jetzt bestätigen, weil der Log-Fall selten eintritt ;)
Kannst du testen mit

Code: Alles auswählen

$ logger 'SSH scanner detected: foobar'
(entsprechend deiner obigen RegEx)

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

Antworten