* * *
Benvenuto! Effettua l'accesso oppure registrati.
Hai perso l'e-mail di attivazione?
24 Marzo 2017, 05:16:54

Inserisci il nome utente, la password e la durata della sessione.

Links

ads

Supporta il Forum per 2017

Supporta anche tu CentOS-Italia.org in maniera del tutto gratuita.

Semplicemente accedendo ad Amazon con Link questo  quando effettui un acquisto , una piccola percentuale viene data a CentOS-Italia.org , 

consentendoci cosi di tenere online il forum e viva la comunità italiana.

Salva il Link nei bookmark https://www.amazon.it/?tag=centositalia-21

Grazie a tutti del supporto

Buon CentOS 

leggi di più

Benvenuto


Benvenuto su la Community CentOS-Italia.Org

La Community Italiana di Linux CentOS e' lieta di averti tra noi , CentOS-Italia.Org e' un risorsa di guide e forum dal principiante al sistemista senior.
Clicca qua per registrati ora

La registrazione e' gratuita e ti consente di avere pieno accesso alle risorse di CentOS-Italia.org , come uso della ricerca avanzata , le funzioni interattive del portale e visualizzare i links nei post.
Gli utenti registrati non visualizzano gli ads, quindi registrati subito se non l'hai gia fatto.

Lo staff di CentOS-Italia.Org cerca di rendere la community un posto piacevole e il piu' produttivo possibile, invitiamo quindi i nuovi utenti a leggere le regole base.
Per info o problemi di registrazione scrivere a centos (at) centos-italia.org .

Premessa:
Dopo aver girovagato in rete alla ricerca di informazioni e guide, dopo averle provate tutte con scarsi risultati, attingendo qua e là, spulciando i vari messaggi d'errore finalmente il syslog server è pronto e funzionante.
Alla fine di questa guida verranno registrati tutti i log senza nessun filtro o distinzione sul server syslog.


Obiettivo:
Centralizzare i log dei server, avere un'interfaccia ai log raccolti.

Macchine:
1 server centos 5.5 fresco, appena installato proprio per diventare il syslog server, installazione di solo server senza gui
1 server debian etch, per questo, essendo una distro "vecchia" ho dovuto trovare un backport di rsyslog, server in produzione
1 server centos 5.2, server in produzione
1 pc windows xp professional, questo per testare i vari agent prima di andare a modificare il registro dei server windows in produzione

Predisposizione del server:
Attenzione: yum, chkconfig e service sono comandi di CentOS, con altre distribuzioni dovrete utilizzare i relativi equivalenti (a. e yum -> apt-get per debian)

La macchina a mia disposizione è un AMD athlon 2400+ con 512MB ram e un HDD da 40GB, installazione dal dvd appena scaricato di CentOS 5.5, nella selezione del software ho lasciato solo Server (quello senza interfaccia grafica, che non serve ai nostri scopi).
Ho configurato il server con indirizzo ip statico, questo per semplificarmi la configurazione di tutti i client che dovranno inviare i messaggi senza che debbano risolverne il nome con DNS, selinux disabilitato per evitare eventuali problemi.

A questo punto passiamo all'installazione dei pacchetti necessari, per realizzare questo server useremo rsyslog appoggiato a mysql,probabilmente qualche pacchetto sarà già presente:

Autenticati come root installare mysql, impostarlo per l'avvio automatico ed avviarlo:

yum install mysql-server
chkconfig mysqld on
service mysql start


I pacchetti del server di log nei repository sono alla versione 3.22.x, procediamo a installare dai sorgenti l’ultima stable alla data del 28/05/2010 la ver. 5.4.0.

Utilizzando mysql come back-end è necessario per la compilazione (oltre all’ambiente di sviluppo) anche le librerie mysql:
yum install mysql-devel gcc

Recuperiamo i sorgenti dal sito ufficiale: http://www.rsyslog.com/Downloads-req-viewsdownload-sid-1.phtml

Ora procediamo con la compilazione e l’installazione, date un’occhiata ai vari flag che ho abilitato e se pensate di non averne bisogno toglieteli, sono abbastanza semplici da capire:

tar xzf nomepacchetto

cd nomepacchetto

./configure CFLAGS="-march=i586 -mcpu=i686 -fomit-frame-pointer -std=c99" --enable-testbench=yes --enable-rtinst=yes --enable-debug=yes --enable-imfile --enable-valgrind --enable-klog --enable-mail --enable-diagtools --enable-zlib --enable-omtemplate --enable-omstdout --enable-omprog --enable-imdiag --enable-mysql

make

make install

 

 

A questo punto, se la compilazione è andata a buon fine troveremo i binari in /usr/local/sbin e possiamo passare alla configurazione del demone.


Creiamo il database per i log utilizzando il modello che ora troviamo in /mytemp/rsyslog-5.4.0/plugins/ommysql, fate attenzione alla data di realizzazione di questa guida, con versioni successive di rsyslog il file potrebbe essere in altra posizione e con un altro nome.

mysql < /mytemp/rsyslog-5.4.0/plugins/ommysql /createDB.sql

Accedere a mysql con utenza root e provvedere ai privilegi per l'utenza di rsyslog

mysql -uroot
grant all on Syslog.* to syslog@localhost identified by 'nuovapassword';



Ora passiamo ai file di configurazione di rsyslog, sono poche modifiche per avere tutto funzionante, come editor io utilizzo nano, voi utilizzate quello che più vi piace:
Copiamodalla cartella dei sorgenti il file di configurazione base e poi lo modifichiamo:

cp rsyslog.conf /etc/rsyslog.conf (chmod to 644)
nano /etc/rsyslog.conf

Dobbiamo aggiungere le seguenti righe (se non presenti) all’inizio del file, per fare in modo che tutti i log vengano memorizzati nel db:

 

$ModLoad ommysql

*.*       :ommysql:127.0.0.1,Syslog,syslog,password


Se non avete cambiato nulla, Syslog è il nome del db e syslog il nome utente per l’accesso.

Ora procediamo fin quasi la fine del file per impostare la ricezione dei log dalle macchine remote, se dovete registrare log da macchine windows sarà necessario abilitare anche il protocollo UDP, in quanto i vari agent che ho testato utilizzano esclusivamente quello per l’invio dei log; con macchine linux è possibili inviare anche utilizzando TCP/IP.

De-commentare le opzioni alle voci:

TCP Syslog Server:

UDP Syslog Server:

Impostare la porta per tcp 10514, solo per non fare confusione con la porta standard UDP (514).
Salvate e chiudete; l’ultimo file di configurazione che dobbiamo modificare è:

nano /etc/sysconfig/rsyslog (chmod to 644 se non lo è già)

Se non è presente, eccovi il contenuto già pronto:

# Options to syslogd

# -m 0 disables 'MARK' messages.

# -rPortNumber Enables logging from remote machines. The listener will listen to the specified port.

# -x disables DNS lookups on messages recieved with -r

# See syslogd(8) for more details

SYSLOGD_OPTIONS="-c5 -f /etc/rsyslog.conf"

# Options to klogd

# -2 prints all kernel oops messages twice; once for klogd to decode, and

#    once for processing with 'ksymoops'

# -x disables all klogd processing of oops messages entirely

# See klogd(8) for more details

KLOGD_OPTIONS="-x"

 

 

In /mytemp/rsyslog-5.4.0/slackware/ trovate un esempio di script di avvio per slackware, potete editarlo e sistemare quello che vi serve, io ho preferito recuperare quello del pacchetto 3.22 nei repository di centos (mandatemi un PM se lo volete), ricordatevi di metterlo in /etc/rc.d/init.d/ e di impostare i permessi a 755.


Ora non ci resta che fermare syslog e avviare rsyslog:
service syslog stop 
service rsyslog start


Impostare l'avvio automatico del nuovo server di log (rimuovendo l’avvio automatico del vecchio):

chkconfig syslog off
chkconfig rsyslog on

Attenzione: chkconfig e service funzionano se lo script di avvio è fatto come si deve per CentOS.

Fermiamo il firewall ed andiamo a modificare il file /etc/sysconfig/iptables ed aggiungiamo questa riga:

-A RH-Firewall-1-INPUT -p udp -m udp --dport 514 -j ACCEPT

-A RH-Firewall-1-INPUT -p tcp -m tcp --dport 10514 -j ACCEPT


Riavviamo pure il firewall.

A questo punto la parte complicata è finita, procediamo con l'installazione dell'interfaccia al db dei log che utilizza apache e php:

yum install httpd php php-gd php-mysql.i386
chkconfig httpd on
service httpd start


Ora il pacchetto vero e proprio: LogAnalyzer di Adiscon che potete trovare qui:
http://loganalyzer.adiscon.com/

L'installazione è semplicissima e ve la riassumo in poche righe:
Una volta scaricato e scompattato con tar xzf entrate nella cartella creata, copiate il contenuto della cartella src in /var/www/html (io ho creato una sottocartella LogAnalyzer).
Dalla cartella contribs (estratta dal tar) copiate insieme ai file precedenti configure.sh e secure.s, dategli i permessi di esecuzione ed lanciate configure.sh (nessuna impostazione da fare qui, viene solo creato un file).
Aprite con il browser la cartella dove avet copiato i file ed a questo punto inizia la configurazione vera e propria dell'interfaccia.
Sopo poche cose da impostare, procedete senza cambiare nulla fino alla maschera di creazione delle "sorgenti" dei log, qua impostate i seguenti parametri:
Name of the Source -> Mettete un nome della sorgente dei log (io l'ho chiamato Rsyslogd)
Syslog File -> MySQL native
Table Type -> monitorware
Database Name, user e password gli stessi che avete utilizzato precedentemente durante la configurazione di mysql
Database Tablename -> SystemEvents
Procedete fino alla fine.

A questo punto il server è pronto!

Configurazione dei client:
Per i client linux tutto è semplice e veloce e a dirla tutta avete due possibilità: utilizzare il demone syslog già installato oppure compilare nuovamente il pacchetto, che questa volta ci darà molto meno lavoro da fare:

Saltate questo punto se volete utilizzare il demone syslog già in funzione:

tar xzf nomepacchetto

cd nomepacchetto

./configure CFLAGS="-march=i586 -mcpu=i686 -fomit-frame-pointer -std=c99" --enable-testbench=yes --enable-rtinst=yes --enable-debug=yes --enable-imfile --enable-valgrind --enable-klog --enable-mail --enable-diagtools --enable-zlib --enable-omtemplate --enable-omstdout --enable-omprog --enable-imdiag

 

 Non serve abilitare mysql in quanto i log verranno inviati al server precedentemente configurato, per il resto ho lasciato le stesse opzioni.

make

make install

 

 Nel file di configurazione dobbiamo inserire solo una riga per l'invio dei log al server:

nano /etc/rsyslog.conf (chmod to 644)

(in fase di test è meglio inviare tutti i log così è più rapido verificare che tutto funzioni correttamente)

*.*         @ip_server:514

usando il protocollo UDP e 10514 per utilizzare TCP

*.*         @@ip_server:10514

usando il protocollo TCP

specificare la porta non è obbligatorio ma rende più chiara la lettura  in caso di interventi successivi.

nano /etc/sysconfig/rsyslog (chmod to 644)

nano /etc/rc.d/init.d/rsyslog (chmod to 755)

service syslog stop

chkconfig syslog off

service rsyslog start

chkconfig rsyslog on

 

Potete copiare I file /etc/rc.d/init.d/rsyslog e /etc/sysconfig/rsyslog dall’instllazione del server; se copiate anche /etc/rsyslog.conf ricordatevi di commentare nuovamente le righe alla fine del file che impostano la ricezione dei log da remoto.

 

Se avete deciso di utilizzare syslog già presente sulla macchina è sufficiente editare /ertc/syslog.conf ed inserire la riga per l’invio al server dei log, esattamente come nel file /etc/rsyslog.conf

Se avete macchine basate su linux/freebsd,e che quindi hanno di base syslog come a.e. pfsense, è possibile abilitare l’invio dei log al server appena installato.

 

Per le macchine windows ci sono diversi agent gratuiti che permettono linvio degli eventi di sistema ad un server, il più noto probabilmente è snare; ne ho testati alcuni, come dicevo in premessa su una macchina XP professional, che hanno svolto abbastanza bene il loro compito, la parte più complicata è la scelta delle facility/priority da inviare al server centrale.

Al momento l’invio di local7.* mi sembra la soluzione migliore, ma è cosa soggettiva, con Eventlog-To-Syslog (al 01/06/2010 versione 4.2.0)

Ecco i link alle pagine ufficiali degli agent che ho provato, fate sempre attenzione alla data di questa guida, se è passato molto tempo le cose potrebbero essere cambiate:

SNARE (se non erro 32 e 64bit):

http://www.intersectalliance.com/projects/SnareWindows/

Eventlog-To-Syslog (32 e 64bit):

http://code.google.com/p/eventlog-to-syslog/

Datagram Syslog agent

http://www.syslogserver.com/download.html

NTSyslog:

http://ntsyslog.sourceforge.net/

 

Installazione di Eventlog-To-Syslog, gli altri agent sono provvisti di un msi installer e/o setup:

Scompattare lo zip scaricato, corrispondente alla versione del sistema operativo (32 o 64bit)

Copiare in c:\windows\system32\ i file: evtsys.exe e evtsys.dll

Start->esegui->cmd (invio)

Andate in c:\windows\system32\ e date il seguente commando:

Evtsys –i –h ip_del_server_log –f local7 (invio)

Questo install ail servizio, ora (utilizzando la strada breve):

Start->esegui->services.msc (invio)

Cercate la riga Eventlog-To-Syslog, doppio clic, impostate l’avvio automatico dalla casella di selezione, avviate il servizio con l’apposito bottone e cliccate OK.

 

Note relative agli adempimenti relativi agli Amministratori di Sistema

Registrare tutti i log indistintamente ci pone dalla parte “dell’eccesso di zelo”, infatti è nostro compito registrare SOLO gli accessi dell’amministratore di sistema e non di tutti gli utenti, non dobbiamo mantenere nemmeno le operazioni effettuate, pertanto è opportuno realizzare uno script ad hoc per la memorizzazione di quanto richiesto.

Anche andando a ridefinire i log da centralizzare avremo registrato una parte di dati che non sono necessari e potrebbero esporci a sanzioni, pertanto per assolvere a quanto richiesto è necessario non memorizzare l’intero db per 6 mesi, ma esportare solo la parte dei dati che ci serve e mantenerla mentre viene svuotato il db.

Il problema successivo è: come gestire in modo semplice la registrazione dei log in modo che non siano alterabili? (Possibilmente senza intervento umano, aggiungerei).

Al momento mi vengono in mente solo 2 soluzioni, una volta effettuata l’esportazione dal db:

1 - la si invia con mail certificata (PEC) a se stessi; si ottengono i 2 risultati necessari: la conservazione per almeno 6 mesi (il gestore della PEC deve mantenerne copia per 5 anni) e la certificazione di inalterabilità (sempre grazie al gestore della PEC che deve provvedere a questo per ogni mail).

2 - generare con mkisofs un UDF che lo contenga e giornalmente controllare i file più vecchi da cancellare; UDF è un file system non ri-scrivibile, come sui sistemi WORM, che assolve pienamente a quanto richiesto dal garante.

 

Note/suggerimenti/critiche sono sempre ben accetti purchè permettano di far maggiore chiarezza e/o ampliare quanto sin qui spiegato.

 

Aggiornamento del 12/04/2012:

In centos 6.2 è presente come default rsyslog, quindi della presente guida passate direttamente alla configurazione del file rsyslog.conf!

Commenti *

1) Re: Server di log centralizzato CentOS 5.5
Scritto da Uprising il 04 Giugno 2010, 16:53:58
Ciao tempo fa apri questa discussione http://www.centos-italia.org/index.php/topic,1299.0.html
Ho usato un metodo simile alla tua guida ma senza database e senza pec.
Ho reso "inacessibile e inalterabile" il server e un garante interno all'azienda ha le password e chiavi nel caso volesse controllare.

Credo che il dettaglio e la rigorosità dipendano dal tipo di azienda e da ciò che tratta.

Ottima guida averla avuta prima di dicembre 09 sarebbe stato il massimo.

Saluti


2) Re: Server di log centralizzato CentOS 5.5
Scritto da smeserver il 24 Agosto 2010, 12:18:36
ciao

la guida è interessante, senza dubbio

consiglio però di non compilare il demone rsyslog ma di scaricare il tar.gz e il file .spec dal loro sito e di utilizzare rpmbuild per creare l'rpm

questo certamente renderà la manutenzione e l'eventuale upgrade più semplice, può essere eseguita su una macchina separata (per non avere i dev tools sul server) e permette di installare il servizio su più macchine (tramite l'rpm)

just my 2c

Ciao
S.
3) Re: Server di log centralizzato CentOS 5.5
Scritto da smeserver il 24 Agosto 2010, 12:28:47
chiedo venia.. rileggendo leggo che commpili su debian ;-)

i miei appunti valgono solo per Centos :-)
4) Re: Server di log centralizzato CentOS 5.5
Scritto da LonelyWolf il 25 Agosto 2010, 12:28:47
Ciao Stefano, come mai da queste parti?
Nella guida ho riportato di compilare i sorgenti per un semplice motivo: non tutte le macchine sono uguali, nel mio caso avevo centos e debian; certamente, come dici tu, se hai distribuzioni identiche su macchine simili fare il build rpm è più veloce per il deploy.
5) Re: Server di log centralizzato CentOS 5.5
Scritto da smeserver il 27 Agosto 2010, 02:03:26
ciao

diciamo che.. ti tengo d'occhio ;-)

e poi il nostro comune amico mi ha fatto notare questo tuo interessante post..

a presto, ciao
6) Re: Server di log centralizzato CentOS 5.5
Scritto da madmartigan il 10 Ottobre 2010, 12:04:54
ciao,
innanzitutto grazie 1000 per la guida!
Anch'io stavo seguendo quella strada per la configurazione di un server di log centralizzato e l'ho trovata molto utile.
Sto però incontrando un problema, cioè il parsing dei log che provengono da server windows.
Uso snare agent per filtrare e forwardare i log al server rsyslog; il mio problema è che con il parser di default la visualizzazione non è
corretto, perchè i vari campi (userID, eventID ecc...) non vengono popolati e tutto il messaggio indistinatamente finisce nel campo
messaggio.
Ho provato ad utilizzare un parser per snare trovato sul sito di LogAnalyzer:
http://loganalyzer.adiscon.com/plugins/message-parsers/snare-message-parser#more-36
ma non sembra funzionare...
Tu come hai risolto?
grazie in anticipo
7) Re: Server di log centralizzato CentOS 5.5
Scritto da LonelyWolf il 11 Ottobre 2010, 10:15:54
Non uso snare, comunque anche con gli altri agent il tutto sta nel messaggio, anche con quelli nativi linux sulle macchine linux.
I commenti per questo articolo sono stati disabilitati.

Notizie

CentOS-Italia.Org nasce con l'obiettivo di creare una community per la condivisione delle conoscenze nell' interesse di tutta la communita' e non come servizio al utente che cerca solo una soluzione al suo problema.

Collegamenti

Posts Recenti

Utenti
  • Utenti in totale: 6086
  • Ultimo: teo7512
Statistiche
  • Post in totale: 12523
  • Topic in totale: 2796
  • Online Oggi: 174
  • Massimi online: 536
  • (26 Luglio 2012, 11:06:17)
Utenti Online
Utenti: 0
Visitatori: 178
Totale: 178

Permessi

-no content-

ShoutBox!

Ultimo 5 Shout:

trattore

28 Settembre 2015, 03:30:48
ma qui non c'è mai nessuno
 ;)

ivo

26 Agosto 2015, 16:01:14
Ho configurato il DHCP creato il file /etc/dhcpd.conf con il seguente contenuto
-------------------------------------------------------------------------------
ddns-update-style interim;
ignore client-updates;

authoritative;

subnet 172.16.208.96 netmask 255.255.255.240 {
    option routers      
 

ifconfig

03 Aprile 2015, 19:02:35
NON REGISTRATEVI CON EMAIL HOTMAIL/LIVE/OUTLOOK SPESSO NON ARRIVANO LE MAIL

Mostra ultimi 50