806
contributi
(primo inserimento) |
|||
Riga 1: | Riga 1: | ||
==Premessa== | ==Premessa== | ||
Questa piccola guida, in questa sua prima versione, descrive velocemente la procedura per abilitare il logging di sistema su di un database MySQL. Essendo questo un compito di indirizzo prettamente professionale, non mi sono soffermato | Questa piccola guida, in questa sua prima versione, descrive velocemente la procedura per abilitare il logging di sistema su di un database MySQL. Essendo questo un compito di indirizzo prettamente professionale, non mi sono soffermato pi� di tanto nello spiegare i dettagli della procedura. Tantomeno ho elencato nel dettaglio _tutti_ i comandi necessari, presumendo che chi legge abbia le competenze necessarie a completare le mie eventuali lacune. Qualsiasi commento o correzione � il benvenuto e sar� integrato in eventuali riscritture di questa guida che, in questa stesura, � poco pi� della traccia da me seguita in diverse occasione per realizzare quanto spiegato. | ||
Buona lettura e happy hacking! | Buona lettura e happy hacking! | ||
==Logging su MySQL== | ==Logging su MySQL== | ||
Spesso, specie in ambiente professionale, si ha la | Spesso, specie in ambiente professionale, si ha la necessit� di memorizzare i logs di sistema in una localit� centralizzata vuoi per motivi di sicurezza che di semplice monitoraggio. Syslogd permette di implementare in maniera banale questa possibilit�, ma a volte ci si trova nella necessit�/desiderio di voler dare a questi logs una forma facilmente gestibile e interrogabile come ad esempio un database MySQL. | ||
Esiste un syslogger che fa questo per noi, si tratta di syslogd-ng, | Esiste un syslogger che fa questo per noi, si tratta di syslogd-ng, per� non sempre � possibile sostituire il logger in maniera indolore e trasparente. | ||
In tutte queste situazioni viene in nostro aiuto una piccola utility : sqlsyslogd, realizzata da Przemyslaw Frasunek venglin@freebsd.lublin.pl. | In tutte queste situazioni viene in nostro aiuto una piccola utility : sqlsyslogd, realizzata da Przemyslaw Frasunek venglin@freebsd.lublin.pl. | ||
Sqlsyslogd | Sqlsyslogd � un wrapper per syslogd scritto in C per FreeBSD, ma � comunque compatibile con qualsiasi piattaforma POSIX e ANSI-C compliant (chi scrive non ha mai avuto problemi nell' usarlo su piattaforma GNU/Linux, in particolare Debian). | ||
Andiamo con ordine: | Andiamo con ordine: | ||
Riga 40: | Riga 40: | ||
questo comando crea il database sqlsyslogd, che contiene l' unica tabella logs. | questo comando crea il database sqlsyslogd, che contiene l' unica tabella logs. | ||
Fermiamoci un momento a spiegare il funzionamento del wrapper: sqlsyslogd | Fermiamoci un momento a spiegare il funzionamento del wrapper: sqlsyslogd � un programma C che "intercetta" le chiamate di syslogd e le redirige verso una pipe. Dato che il syslogger syslogd non pu� puntare direttamente ad un altro programma (come invece pu� fare il suo cugino di FreeBSD), ma soltanto ad una named pipe, abbiamo bisogno di un ulteriore passaggio: | ||
5. Scarichiamo questo script perl e rinominiamolo ad esempio in "sqlsyslogd.wrapper". | 5. Scarichiamo questo script perl e rinominiamolo ad esempio in "sqlsyslogd.wrapper". | ||
Questo script crea per noi un FIFO socket. Syslogd | Questo script crea per noi un FIFO socket. Syslogd mander� i suoi messaggi al socket, e il wrapper li inoltrer� a sqlsyslogd. | ||
6. creaimo il file /usr/local/etc/sqlsyslogd.conf e come unica riga, digitiamo la password necessaria a poter scrivere nel nostro database. Dato che sqlsyslogd gira con le credenziali dell' utente che lo lancia e che - presumibilmente - vorremo avviarlo al boot della nostra macchina, potremo creare un utente apposito o | 6. creaimo il file /usr/local/etc/sqlsyslogd.conf e come unica riga, digitiamo la password necessaria a poter scrivere nel nostro database. Dato che sqlsyslogd gira con le credenziali dell' utente che lo lancia e che - presumibilmente - vorremo avviarlo al boot della nostra macchina, potremo creare un utente apposito o pi� semplicemente usare le creadenziali dell' utente "root". In questo caso in sqlsyslogd.conf inseriremo la password di root (occhio ai permessi su questo file!). | ||
Lo script perl permette di specificare sia il server che ospita il database, sia l' utente con con collegarsi. | Lo script perl permette di specificare sia il server che ospita il database, sia l' utente con con collegarsi. | ||
Riga 77: | Riga 77: | ||
---- | ---- | ||
Autore: | Autore: [[User:Keltik|Keltik]] |
contributi