Plesk e QMail: come monitorare la coda dei messaggi

Loghi Plesk e QMail, icona coda messaggi

Loghi Plesk e QMail, icona coda messaggi Monitorare la coda dei messaggi di posta elettronica è sempre un task importante per chi gestisce un server. Basta che venga trafugata una password di qualche utente o che il pc di qualche utente sia affetto da malware che il nostro server comincia a produrre un’infinità di messaggi di spam. Questa situazione è assolutamente da evitare perché, a parte i problemi derivanti dall’effetto “tappo” dato dalla massa dei messaggi in uscita e il conseguente sovraccarico in termini di CPU e di memoria, c’è la severa possibilità che l’indirizzo IP del server venga presto inserito nelle blacklist.
Nel caso il nostro server venga gestito tramite Plesk e il servizio di posta elettronica sia basato su QMail (caso piuttosto diffuso) possiamo utilizzare direttamente il pannello di controllo di Plesk per monitorare ed eventualmente per cancellare i messaggi che stanno affollando pericolosamente la coda. E’ utile, prima di cancellare i messaggi sospetti, analizzare gli header degli stessi per capire da quale account stanno partendo.

Leggi tutto

Linux bash: estrarre tutti i link da un sito web

link Esistono molti tool sulla rete per estrarre i link da una pagina web, ma non ne ho trovati altrettanti in grado di scansionare ricorsivamente tutte le pagine di un sito web e fornire in output una lista senza duplicati dei links presenti.

Questo script bash si  può rivelare particolarmente utile quando sia necessario compilare una serie di redirect, per non perdere le indicizzazioni sui motori di ricerca di un sito che sia stato rinnovato. Un altro esempio di utilizzo è per controllare eventuali links interrotti, a questo scopo si può intergrare con il programma PHP che ho pubblicato qui: PHP cURL: una classe per controllare link interrotti, status code e nxdomain in parallelo

Leggi tutto

Linux bash: uno script per monitorare le modifiche ai file di una directory

rodentia-icons_utilities-terminalQuesto piccolo script bash serve a monitorare le modifiche fatte ai file in una certa directory, confrontandoli con una directory di controllo che contenga i file originali.

Ammettiamo di voler avere una notifica dei cambiamenti che vengono effettuati da terzi in una serie di file residenti in una particolare cartella del FS. Per prima cosa creiamo una nuova cartella in qualche parte del filesystem che contenga i file originali per confrontarli con quelli della directory di lavoro.

Qundi prepariamo questo script:

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
#!/bin/bash
PATH_OK="/path/directory/controllo"
PATH_TO_CHECK="/path/directory/lavoro"
CHANGES=0
for entry in "$PATH_OK"/*
do
	toCheck=$(echo "$entry" | rev | cut -d"/" -f1 | rev)
	echo "Processing $toCheck"
	MD5_1=_$(md5sum $entry | cut -d ' ' -f 1)
	MD5_2=_$(md5sum $PATH_TO_CHECK/$toCheck | cut -d ' ' -f 1)
	if [[ "$MD5_1" != "$MD5_2" ]]
	then
		echo "FILE $toCheck has been modified!"
		CHANGES=$((CHANGES+1))
		diffText=$(diff $entry $PATH_TO_CHECK/$toCheck)
		mail -s "FILE $toCheck has been modified!" webmaster@domain.com <<< "Changes in $toCheck: $diffText"
		#Se vogliamo possiamo ripristinare il file modificato con il controllo
                #/bin/cp -f "$entry" "$PATH_TO_CHECK/$toCheck"
	fi
done
echo "CHANGES= $CHANGES"
#		if [ "$CHANGES" -gt 0 ]
#		then
# Qui possiamo inserire un comando da lanciare nel caso ci siano stati cambiamenti a uno o più files
#			echo "CHANGES greater then 0!"
#		fi

In pratica lo script scorre tutti i files nella directory di controllo, fa l’MD5 sia del file di controllo che di quello di lavoro, li confronta e se ci sono state modifiche invia una mail a: webmaster@domain.com (da modificare secondo le proprie esigenze…) riportando anche il dettaglio delle modifiche fatte utilizzando il comando diff. E’ anche possibile, nel caso lo si desideri, ripristinare il file modificato con quello di controllo decommentando la riga: /bin/cp -f "$entry" "$PATH_TO_CHECK/$toCheck"
Vengono anche conteggiati i file modificati in modo che si possa decidere di lanciare un comando particolare nel caso uno o più files siano stati modificati.
Lo script può essere utile per monitorare cambiamenti indesiderati in file di configurazione di servizi.
Ovviamente lo script andrà inserito sotto cron per essere eseguito periodicamente. In questo articolo (in inglese) è spiegato chiaramente come inserire un “job” in cron.

Linux: script bash per conoscere e controllare l’hardware del proprio PC

Devil Tux
Devil Tux

La conoscenza dei dati hardware del proprio computer è spesso vaga, invece alcuni di questi sono davvero importanti per diversi aspetti. La conoscenza per esempio del tipo di processore, della dimensione della memoria RAM, della capacità dell’hard-disk sono utili per sapere se un certo software potrà essere installato sulla macchina, il numero seriale della motherboard, quello dell’hard-disk e gli indirizzi MAC delle schede di rete potranno essere utili in caso di furto per un’efficace ricerca ed identificazione. Conoscere infine i dati S.M.A.R.T. aiuta a non trovarsi da un momento all’altro con un hard-disk inservibile.

Questo sito You-hacker.com è dedicato proprio alle finalità sopra descritte. E’ infatti possibile scaricare un software per Windows che esegue una veloce scansione del PC ed invia i dati raccolti al sito che li memorizza e li ripropone all’utente in forma di tabella, mantenendone traccia attraverso l’utilizzo di cookies. E’ possibile anche registrarsi, per avere la sicurezza di essere identificati utilizzando browser differenti e poter stampare su PDF la tabella dei dati personalizzati.

Leggi tutto