27 febbraio 11 - scritto da
Giuseppe Del Duca
Nonostante tutte le accortezze, può capitare talvolta di trovarsi il server bucato da qualcuno che non ha niente di meglio da fare nella vita. Premesso che per sicurezza sarebbe sempre meglio una reinstallazione completa del sistema, potrebbe essere necessario “mantenere in vita” la macchina per compiere alcune operazioni o semplicemente salvare i dati. Purtroppo alcuni rootkit (es. SHV4 e SHV5 su linux ubuntu 8.04) hanno la brutta abitudine di patchare e modificare i permessi di alcuni file (/bin/ls /bin/netstat /bin/ps /bin/top ecc…), per cui quando si tenta di ripristinarli ci si trova un bel “Operation not permitted” perchè li hanno impostati come “immutabili”. Quindi, dopo una buona dose di imprecazioni, ecco come fare per controllare i permessi usando il nostro amico lsattr:
# lsattr /bin/ls
s—ia——- ./ls
# lsattr /bin/ps
s—ia——- ./ps
# lsattr /bin/netstat
s—ia——- ./netstat
…e soprattutto la soluzione:
# chattr -sia /bin/ls
# chattr -sia /bin/ps
# chattr -sia /bin/netstat
E per finire… un bel dito medio a tutti gli sviluppatori di rootkit!
22 febbraio 11 - scritto da
Giuseppe Del Duca
Giusto un paio di note a titolo di promemoria su come controllare a chi spedire i report dei cronjob (oppure come evitare che cron spedisca le email). Di default cron spedisce la mail all’utente proprietario del cronjob (configurare la mail in /etc/aliases).
Aprire la lista dei cronjobs:
$ crontab -e
Per impostare il destinatario dei report di cron:
MAILTO=test@foobar.com
Se non voglio che venga spedita alcuna email:
MAILTO=""
Per evitare la mail di alcuni cronjob, impostare come segue:
* * * * * /path/to/command >/dev/null 2>&1
Eventualmente togliere il 2>&1 se vogliamo spedire solo gli errori.
16 gennaio 11 - scritto da
Giuseppe Del Duca
Nagios è un tool molto potente per monitorare servizi o interi sistemi, reti, ecc… ma come ogni software richiede una certa configurazione. Per chi usa ubuntu (mio caso) l’installazione si riduce ad un semplice “apt-get install nagios3” e poi qualche ritocco ai file in /etc/nagios3/conf.d. La configurazioe di Nagios tuttavia, almeno per i servizi più comuni (apache, mysql, ssh, …) non è difficile, basta fare copia e incolla dai file di esempio. Lo scopo di questo articolo è mostrare la soluzione di un messaggio di errore molto comune (DISK CRITICAL – /home/name/.gvfs is not accessible) nella installazione di default, per quanto riguarda il monitoraggio dello spazio disponibile su disco. In particolare, l’errore si verifica quando il demone chiama i comandi check_disk e check_all_disks per accedere a ciascun punto di mount, e magari incontra .gvfs. GVFS è il filesystem virtuale di Gnome desktop, quindi non una unità vera e propria, e bisogna pertanto escluderla dalla lista dei controlli eseguiti da Nagios. Per risolvere il problema bisogna quindi fare la seguente modifica al file /etc/nagios-plugins/config/disk.cfg aggiungendo ai parametri -A -i ‘.gvfs’
# 'check_disk' command definition
define command{
command_name check_disk
command_line /usr/lib/nagios/plugins/check_disk -w '$ARG1$' -c '$ARG2$' -p '$ARG3$' -A -i '.gvfs'
}
# 'check_all_disks' command definition
define command{
command_name check_all_disks
command_line /usr/lib/nagios/plugins/check_disk -w '$ARG1$' -c '$ARG2$' -A -i '.gvfs'
}
Spero di essere stato utile a qualcuno.
11 giugno 10 - scritto da
Giuseppe Del Duca
Dopo l’articolo sulla semplice replicazione di MySql master-slave, passiamo ad una configurazione leggermente più complessa. Nella replicazione di MySql master-slave, il concetto di base è che il master viene usato per tutte le operazioni di scrittura/lettura, mentre lo slave solo per la lettura, vuoi come backup, vuoi come bilanciamento del carico. Con la configurazione per la replica multimaster invece, si ha la possibilità di usare entrambi i server MySql sia in lettura che in scrittura, dato che avviene Leggi il resto di questo articolo »
28 maggio 10 - scritto da
Giuseppe Del Duca
Dato che ho necessità di fare questa operazione per lavoro, colgo l’occasione per scrivere un articolo che serva come guida per aggiungere un server slave a mysql per la replicazione del database. Avere uno slave mysql può servire per vari motivi, ad esempio bilanciare il carico delle query in lettura, o semplicemente fare una copia di backup del database mysql. Da sottolineare “in lettura“, dal momento che le query in scrittura vanno necessariamente lanciate sul server master, perchè di default la replicazione di mysql è oneway, cioè solo in Leggi il resto di questo articolo »