OT: Analyza logovanych dat
Jan Dusatko
jan at dusatko.org
Thu Jan 29 09:51:34 CET 2009
> > Ahoj,
> >
> > predne se omlouvam za dotaz, ktery neni primo o BSD, ale je
> > obecneho charakteru.
> >
> > Provozuji sit, kde je nekolik serveru s FreeBSD, RedHat Linuxem
> > a SuSE Linuxem. Na vsech serverech jsem si nainstaloval syslog-ng,
> > kterym jsem nahradil klasicky syslog (u RedHatu a FreeBSD). Na
> > SuSE uz se syslog-ng pouziva defaultne. Na jednom serveru v siti
> > jsem si vytvoril centralni syslog server, na ktery loguji servery
> > z cele site. Rad bych nejak nalogovana data automaticky a i on-line
> > analyzoval a podle nadefinovanych udalosti se neco stane napr.
> > posle se mail nebo SMSka. Provozujete nekdo neco podobneho? Ja jsem
> > nasel nekolik odkazu:
> >
> > http://sourceforge.net/projects/syslogscripts
> > http://www.crypt.gen.nz/logsurfer/
> > http://kodu.neti.ee/~risto/sec/
> > http://web.suffieldacademy.org/ils/netadmin/docs/software/syslog/
> >
> > Jde mi hlavne o prakticke poznatky. Vlastni scripty si psat nechci,
> > rad bych pouzil uz neco hotoveho.
> >
> > Predem dekuji za pripadna poznatky, doporuceni nebo odkazy.
> >
> > Pepa Brzak
> >
> > --
> > FreeBSD mailing list (users-l at freebsd.cz)
> > http://www.freebsd.cz/listserv/listinfo/users-l
>
> Mno, s "necim hotovym" Ti nepomuzu. Ale jestli chces poznatky,
> tak ja jsem na to sel od lesa tak, ze jsem si napsal skript, ktery
> logy analyzuje pomoci regexu zhruba takhle:
>
> 1. mam mnozinu "templates", ze kterych se pomoci funkce vyrobi regexy:
> plog.addProcessRe("sshd",template="User .+ from $hacker$ not allowed
> because not listed in AllowUsers")
> plog.addProcessRe("sshd",template="Invalid user .+ from $hacker$")
>
> 2. log se prochazi a u kazdeho radku se hleda regex, ktery matchuje,
> napr:
> sshd: User billgates from 207.46.248.248 not allowed because not
> listed in AllowUsers
>
> 3. ke kazdymu regexu se vytvori seznam namatchovanych hodnot a pocet,
> kolikrat se objevily, napr:
> "User .+ from $hacker$ not allowed because not listed in AllowUsers"
> hacker="207.46.248.248", numMatched=10
> hacker="a.b.c.d", numMatched=15
>
> 4. takhle mam pravidla pro vsechno, co se normalne v lozich objevuje
> 5. radky, ktery se nenamatchovaly, se vypisou, protoze dost
> pravdepodobne je to neco obzvlaste
> hodnyho pozornosti
>
> Napsat takovej skript neni tezky a prijde mi to docela elegantni. Ale
> jestli chces
> nutne neco hotovyho... :)
>
> Mirek
Z hotoveho lze pouzit napriklad kombinaci OSSEC a Zabbix. Přes OSSEC
je mozne zasilat informace na e-mail (doslo k pokusum o prihlaseni ...),
Zabbix umi komunikovat přes SMS a Jabber. Protože Zabbix umoznuje
tvorit pravidla, ktere se divaji do databaze, nebo obsahuji vysledek
scriptu, neni tak velky problem informace od OSSEC posilat nejenom
do e-mailu, ale i do fronty, kterou prezvyka script a preda Zabbixu.
Ve vysledku pak je mozne podle urovne dostat varovani pri SUDO SU -,
pri prihlaseni uzivatele ktery ma na SUDO prava, hlaseni o coredump
a podobne zalezitosti. Navic, nemusim se trapit s konfiguraci odesilani
SMS, jenom to chce cas a projit bazary s mobily.
Honza
More information about the Users-l
mailing list