c'e' solo un modo di fare le cose: farle bene
Di solito viene usato il target LOG per impostare la scrittura dei log su file quando facciamo delle regole con iptables. Ma è comodo avere un file (a volte mastodontico) da anzalizzare? Meglio avere i dati in un database MySQL e lavorarci sopra attraverso tool appositi.
Ci viene in aiuto ULOG, un tool che lavora in userspace e permette quindi, tramite un programma in continuo ascolto, di gestire tali informazioni nella maniera più disparata.
Procediamo con l’installazione dei pacchetti necessari:
apt-get install ulogd ulogd-mysql
Adesso va creato il database con gli opportuni privilegi. Tralascio questa fase perché è banale, specie con phpMyAdmin.
Le struttura della tabella è scritta nel file /usr/share/doc/ulogd-mysql/mysql.table, quindi lo carichiamo nel database appena creato con:
mysql -u <utente> -p <nome_db> < /usr/share/doc/ulogd-mysql/mysql.table
Procediamo con la configurazione di ULOG editando il file /etc/ulogd.conf.
Nella sezione plugins va decommentato:
plugin="/usr/lib/ulogd/ulogd_MYSQL.so"
visto che i dati andranno sul un db MySQL.
Impostiamo l’account per l’accesso al database:
[MYSQL]
table="ulog"
pass="<password>"
user="<user>"
db="<database>"
host="localhost"
Bene, riavviamo ULOG:
/etc/init.d/ulogd restart
Proviamo il tutto impostando una regola di iptables con il target ULOG:
iptables -t nat -I POSTROUTING -s 192.168.1.0/24 -o eth0 -j ULOG
In breve: tutto quello che proviene dalla classe lan 192.168.1.0/24 ed esce dall’interfaccia eth0 (verso Internet) e quindi viene nattato, lo registriamo su MySQL. Ovviamente possiamo impostare qualsiasi regola di firewall con target ULOG per testarne il funzionamento.
MySQL ha qualche record in più? Bene, abbiamo finito.
Gianluca dai che domani è sabato!
Gianluca si lo ammetto sono razzista, odio le ex.L'unica razza per cui nemmeno l'Onu muoverebbe un dito in caso di estinzione. Esseri spregevoli e abietti senza eguali.
Gianluca le belle donne sono invisibili,vedi solo la bella facciata,ti blocca la barriera della bellezza. Ammagliati dall'aspetto esteriore non arriviamo mai al mondo interiore e se mai accade uno dei due rimane deluso.
Powered by Lifestream.
| L | M | M | G | V | S | D |
|---|---|---|---|---|---|---|
| « lug | ||||||
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 | |||
3 Responses for "iptables ed ulogd: logging avanzato su MySQL"
Ho notato che per la mia jaunty è necessario un bell’export prima di avviare ulogd. In/etc/init.d/ulogd:
export LD_PRELOAD=/usr/lib/libmysqlclient.so.15
Buon lavoro.
Altrimenti cosa succede? Ti da errore?
No purtroppo nessun errore o warning, ma non scrive sul db
syslogemu.log e ulogd.log sono comunque riempiti.
Qualche accenno è riportato anche su launchpad (https://bugs.launchpad.net/ubuntu/+source/ulogd/+bug/291374)
Leave a reply