3 581
contributi
m (versioni compatibili) |
|||
(29 versioni intermedie di 10 utenti non mostrate) | |||
Riga 1: | Riga 1: | ||
{{Versioni compatibili|Jessie|Stretch|Buster}} | |||
==Introduzione== | ==Introduzione== | ||
Spesso | Spesso è utile monitorare la banda utilizzata da un server (o anche da un computer), per vedere se sono presenti anomalie, verificare l'andamento del traffico, etc. | ||
MRTG (Multi Router Traffic Grapher: http://www.mrtg. | MRTG (Multi Router Traffic Grapher: http://www.mrtg.org/) ci viene in aiuto, permettendoci di monitorare efficacemente la banda utilizzata tramite dei comodissimi grafici. | ||
Vediamo come installarlo e configurarlo in Debian. | Vediamo come installarlo e configurarlo in Debian. | ||
La macchina usata per le prove monta Debian Sarge. | La macchina usata per le prove monta Debian Sarge. | ||
Riga 8: | Riga 9: | ||
==Installazione== | ==Installazione== | ||
Per installare mrtg, | Per installare mrtg, è sufficiente dare il seguente comando: | ||
<pre> | <pre> | ||
# apt-get install mrtg mrtg-contrib librrds-perl snmpd snmp | # apt-get install mrtg mrtg-contrib librrds-perl snmpd snmp | ||
</pre> | </pre> | ||
Oltre a mrtg, | Oltre a mrtg, verrà installato il server snmpd ed il suo client. | ||
==Configurazione== | ==Configurazione== | ||
La configurazione | La configurazione può sembrare un po' 'articolata' e 'difficile', ma non è così. | ||
Procediamo per | Procediamo per gradi: | ||
===Snmpd=== | ===Snmpd=== | ||
Dobbiamo configurare il server SNMP, permettendone l'accesso il lettura al computer che esegue mrtg (nel nostro caso 127.0.0.1). | Dobbiamo configurare il server SNMP, permettendone l'accesso il lettura al computer che esegue mrtg (nel nostro caso 127.0.0.1). | ||
Per fare questo, modifichiamo il file '''/etc/snmp/snmpd.conf''' con il nostro editor di testo preferito, e facciamo in modo che le righe: | Per fare questo, modifichiamo il file <code>'''/etc/snmp/snmpd.conf'''</code> con il nostro editor di testo preferito, e facciamo in modo che le righe: | ||
<pre> | <pre> | ||
com2sec paranoid default public | com2sec paranoid default public | ||
Riga 45: | Riga 46: | ||
===Mrtg=== | ===Mrtg=== | ||
Per la configurazione di MRTG possiamo scegliere due vie: quella automatizzata, che consiglio, e quella un po' | Per la configurazione di MRTG possiamo scegliere due vie: quella automatizzata, che consiglio, e quella un po' più manuale (che analizzeremo ed invito a leggere, così per capire un po' di più come funziona MRTG). | ||
====Configurazione Automatizzata==== | ====Configurazione Automatizzata==== | ||
Per creare il file di configurazione mrtg.conf ci viene in aiuto cfgmaker, che ha proprio questa funzione. | Per creare il file di configurazione <code>mrtg.conf</code> ci viene in aiuto cfgmaker, che ha proprio questa funzione. | ||
Lo utilizzeremo con la sua sintassi base, visto che non abbiamo particolari esigenze. | Lo utilizzeremo con la sua sintassi base, visto che non abbiamo particolari esigenze. | ||
Prima di generarlo, | Prima di generarlo, però, è utile modificare il file <code>'''/etc/snmpd/snmpd.local.conf'''</code> (che viene letto prima di <code>'''/etc/snmpd/snmpd.conf'''</code>), per personalizzare un po' il server: modifichiamo il file <code>'''/etc/snmpd/snmpd.local.conf'''</code> con il nostro editor preferito, rendendolo simile a questo: | ||
<pre> | <pre> | ||
# Il nome del Server | # Il nome del Server | ||
Riga 62: | Riga 63: | ||
syslocation Verona | syslocation Verona | ||
# Chi | # Chi è il responsabile | ||
syscontact MaXeR <maxer@knio.it> | syscontact MaXeR <maxer@knio.it> | ||
</pre> | </pre> | ||
Il comando per generare il file di configurazione di mrtg | Il comando per generare il file di configurazione di mrtg è il seguente: | ||
<pre> | <pre> | ||
# cfgmaker public@localhost --output=/etc/mrtg.cfg | # cfgmaker public@localhost --output=/etc/mrtg.cfg | ||
Riga 73: | Riga 74: | ||
Le opzioni | Le opzioni più interessanti sono (degne di nota):<br/> | ||
; <code>--enable-ipv6</code> : che abilita l'ipv6<br/>; | |||
; <code>--output <file></code> : che redirige l'output su un file, al posto dello STDOUT. | |||
Il programma genera un file (l'output del comando | Il programma genera un file (l'output del comando è allegato nel file 'cfgmaker'), contenente la configurazione (diviso, per la precisione in due parti: la prima con le impostazioni generali e la seconda con quelle specifiche per ogni interfaccia). | ||
Le impostazioni specifiche per ogni interfaccia sono quelle che ci interessano: alcune sono | Le impostazioni specifiche per ogni interfaccia sono quelle che ci interessano: alcune sono già decommentate (di norma quelle relative alle schede di rete), ed altre sono disattivate, con la motivazione riportata nei commenti a quel blocco. | ||
Prendiamo in esame l'interfaccia ppp0. | Prendiamo in esame l'interfaccia ppp0. | ||
Per renderla operativa decommentiamola ed effettuiamo delle sostituzioni. Quella sezione dovrebbe diventare simile a quella contenuta nell'allegato 'mrtg_ppp0' (in cui le parti modificate sono racchiuse tra 2 '##'). | Per renderla operativa decommentiamola ed effettuiamo delle sostituzioni. Quella sezione dovrebbe diventare simile a quella contenuta nell'allegato 'mrtg_ppp0' (in cui le parti modificate sono racchiuse tra 2 '##'). | ||
Una sostituzione che potrebbe creare problemi | Una sostituzione che potrebbe creare problemi è la velocità dell'interfaccia. In realtà si tratta di una semplice conversione: | ||
<pre> | <pre> | ||
velocità_in_Kbit/sec * 1000 / 8 = Velocità_in_Byte/sec | |||
</pre> | </pre> | ||
Ecco una tabellina delle | Ecco una tabellina delle velocità più comuni: | ||
<pre> | <pre> | ||
------------------------------------------ | ------------------------------------------ | ||
Riga 108: | Riga 109: | ||
====Configurazione Manuale==== | ====Configurazione Manuale==== | ||
La configurazione manuale | La configurazione manuale è un po' più complessa (o forse macchinosa): analizziamola. | ||
Per creare il file di configurazione di mrtg, dobbiamo sapere quali interfacce sono presenti sulla nostra macchina. | Per creare il file di configurazione di mrtg, dobbiamo sapere quali interfacce sono presenti sulla nostra macchina. | ||
Per fare questo usiamo il comando | Per fare questo usiamo il comando: | ||
<pre> | <pre> | ||
# snmpwalk -v 1 -c public localhost interfaces.ifTable.ifEntry.ifDescr | # snmpwalk -v 1 -c public localhost interfaces.ifTable.ifEntry.ifDescr | ||
</pre> | </pre> | ||
Si | Si riceverà un output simile a questo: | ||
<pre> | <pre> | ||
IF-MIB::ifDescr.1 = STRING: bond0 | IF-MIB::ifDescr.1 = STRING: bond0 | ||
Riga 132: | Riga 133: | ||
Leggendolo dobbiamo annotarci i numeri riferiti alle interfacce che vogliamo prendere in considerazione. | Leggendolo dobbiamo annotarci i numeri riferiti alle interfacce che vogliamo prendere in considerazione. | ||
ppp0, ad esempio, | ppp0, ad esempio, è associata al numero 11. | ||
Possiamo, quindi, procedere a creare il nostro file di configurazione, completando lo schema presente nell'allegato 'mrtg_es', avendo cura di sostituire ad '______' i dati in nostro possesso. Ricordiamoci, inoltre, di inserire all'inizio del file le opzioni di carattere generale: | Possiamo, quindi, procedere a creare il nostro file di configurazione, completando lo schema presente nell'allegato 'mrtg_es', avendo cura di sostituire ad '______' i dati in nostro possesso. Ricordiamoci, inoltre, di inserire all'inizio del file le opzioni di carattere generale: | ||
Riga 140: | Riga 141: | ||
</pre> | </pre> | ||
Una volta terminata la scrittura del file di configurazione, | Una volta terminata la scrittura del file di configurazione, è possibile controllarne l'esattezza con un: | ||
<pre> | <pre> | ||
# mrtg --check <config_file | # mrtg --check <config_file> | ||
</pre> | </pre> | ||
===Apache=== | ===Apache=== | ||
Ipotizziamo Apache | Ipotizziamo Apache già installato e configurato per avere la propria root in <code>'''/var/www'''</code>. | ||
Controlliamo l'esistenza della directory indicata nel file di configurazione precedentemente creato: /var/www/mrtg, altrimenti creiamola ed impostiamo i permessi: | Controlliamo l'esistenza della directory indicata nel file di configurazione precedentemente creato: <code>/var/www/mrtg</code>, altrimenti creiamola ed impostiamo i permessi: | ||
<pre> | <pre> | ||
# | # chown root:root /var/www/mrtg | ||
# chmod | # chmod 755 /var/www/mrtg | ||
</pre> | </pre> | ||
Mrtg si occupa di inserire immagini e pagine | Mrtg si occupa di inserire immagini e pagine HTML nella directory specificata nel file di configurazione. | ||
Volendo, possiamo creare una pagina index.html, | Volendo, possiamo creare una pagina index.html, così da offrire una visuale generale del traffico (e rendendo più elegante e comoda la consultazione). | ||
Un semplice | Un semplice: | ||
<pre> | <pre> | ||
# indexmaker --clicktext --title="Spirit MRTG" --output=index.html /etc/mrtg.cfg | # indexmaker --clicktext --title="Spirit MRTG" --output=index.html /etc/mrtg.cfg | ||
</pre> | </pre> | ||
è sufficiente per creare una homepage di introduzione che si deve trovare all'interno della cartella mrtg. | |||
Riporto alcune delle opzioni | Riporto alcune delle opzioni più importanti:<br/> | ||
; <code>--clicktext</code>: rende clickabile anche la descrizione dei grafici<br/> | |||
; <code>--title str</code>: Imposta il titolo della pagina<br/> | |||
; <code>--output file</code>: Scrive su 'file' al posto di riversare il contenuto sullo STDOUT<br/> | |||
; <code>--show=str</code>: Imposta che immagine mostrare (possibili opzioni: day, week, month, year, none)<br/> | |||
==Conclusioni== | ==Conclusioni== | ||
Mrtg | Mrtg è un ottimo tool, che offre dei risultati molto semplici da interpretare quando preziosi. | ||
Lo ritengo indispensabile, sia sui server, sia sui computer desktop con un accesso ad internet fisso (ADSL o simili). | Lo ritengo indispensabile, sia sui server, sia sui computer desktop con un accesso ad internet fisso (ADSL o simili). | ||
{{Autori | |||
|Autore = [[User:MaXeR|MaXeR]] | |||
}} | |||
[[Categoria:Monitoraggio]] |
contributi