qmail eliminare mail in coda per singolo utente qmHandle

Sabato vengo svegliato da una telefonata che pressapoco dice: “Abbiamo i cazzi, ci stanno attaccando , mail bombing in corso”.

Mi alzo e mi collego al server e do un qmail-qstat
messages in queue: 104087
messages in queue but not yet preprocessed: 0

Una rapida lettura ai log e scopro che in 2 ore sono partite 250000 email da parte di un ip ita verso indirizzi

[email protected] , [email protected], [….] , [email protected] , [email protected]

tutti utenti non esistenti (niente validrcptto o patch similari su server) che determinano la generazione di un msg di bounce verso un indirizzo aim.com (AOL)

Se all’inizio aol prendeva in pasto i failure notice dopo quache msg ha iniziato a rispondere con un err 421 (l’utente ha segnalato come spam i msg provenienti da questo ip ed è stato bloccato) e la coda rimaneva inalterata

Soluzione: qmHandle

qmHandle permette di cancellare o visualizzare le mail in coda. Un’ottima peculiarità dello script è l’eliminazione per oggetto (in questo caso failure notice). Manca invece la possibilità di eliminare i messaggi per mittente o destinatario, ci viene in aiuto qmHandle patchato

http://www.fearthecow.net/guest/qmhandle

nel mio caso è bastato un

./qmHandle -tt [email protected]

dopo aver stoppato qmail ovviamente. Questo script perl modificato permette di eliminare i messaggi anche per mittente.

Posted in Linux, Qmail-Postfix at August 28th, 2006. No Comments.

tcpdump tranne il nostro ip

per sniffare traffico su una macchina remota (via ssh) è opportuno escludere dai risultati il nostro IP

tcpdump -n -i eth1 not host 62.23.23.23

eth1 corrisponde al segmento dal quale attingete pacchetti, 62.23.23.23 è il vostro IP remoto

Posted in Linux, Tips at August 24th, 2006. No Comments.

EZMLM aggiungere utenti ezmlm-sub

Per velocizzare l’inserimento di un numero notevole di utenti nella mailing list creare un file contenente un indirizzo per linea

$cat file

[email protected]
[email protected]

e lanciare ezmlm-sub

# ezmlm-sub /var/local/vpopmail/domains/dominiomlm.it/newsletter  <  file per elencare la lista di utenti iscritti # ezmlm-list /var/local/vpopmail/domains/dominiomlm.it/newsletter|less

Posted in Linux, Qmail-Postfix at August 24th, 2006. No Comments.

Vacanze in Corsica 2006

Io, Pippi, Marco, Puti e Crucchio nel Corsica Tour 2006

Corsica 2006

Corsica 2006

Corsica 2006

Corsica 2006

Posted in Archivio at August 23rd, 2006. 4 Comments.

APACHE Script monitor hits/day

#  Script per conteggiare le richieste di un singolo ip all’interno del access log
#+ e monitorare attivita’ di richieste sospette.

#check utente ROOT
ROOT_UID=0

#codice errore se nn root
E_NONROOT=67

if [ “$UID” -ne “$ROOT_UID” ]
then
echo “Devi essere root….”
exit $E_NONROOT
fi

if [ ! “$(echo $1 | grep ‘[0-9]\{1,3\}[.][0-9]\{1,3\}[.][0-9]\{1,3\}[.][0-9]\{1,3\}’)” ]
then
echo “Uso: `basename $0` indirizzo_IP numero_giorni”
exit 1
fi

IP=$1

echo “—————————–”
if [ -n “$2″ ]
then
for i in $(seq 0 $2); do
DATA_PER_ACCESSLOG=$(date –date=”$i day ago” ‘+%d/%b’)
TOT=`grep -c $IP.*$DATA_PER_ACCESSLOG /var/www/htdocs/web/logs/web-access.log`
echo $DATA_PER_ACCESSLOG ”  ” $IP ”  ” $TOT
# echo $i
done
else
#date –date=’2 day ago’ ‘+%s’
DATA_PER_ACCESSLOG=`date +’%d/%b’`
TOT=`grep -c $IP.*$DATA_PER_ACCESSLOG /var/www/htdocs/web/logs/web-access.log`
echo $DATA_PER_ACCESSLOG ”  ” $IP ”  ” $TOT
fi
echo “—————————–”

exit 0

Posted in Apache, Bash, Linux at August 23rd, 2006. 1 Comment.

Ram script grep awk

#ram
echo “RAM:” `free -m | grep Mem:  | awk ‘{print $4}’`

#swap
echo “SWAP:” `free -m | grep Swap:  | awk ‘{print $3}’`

Posted in Bash at August 23rd, 2006. No Comments.

script Load AVG carico ultimo minuto

awk '{print "Load:"$1}' /proc/loadavg

Posted in Bash at August 23rd, 2006. No Comments.

APACHE Script monitor hits per ip in un arco di N minuti

#!/bin/bash
# Script per monitorare il numero di hits per ip in un arco di N minuti, solo utente root

#default minuti
DEFAULTMIN=1440

#check utente ROOT
ROOT_UID=0

#codice errore se nn root
E_NONROOT=67

if [ “$UID” -ne “$ROOT_UID” ]
then
echo “Devi essere root….”
exit $E_NONROOT
fi

if [ -n “$1” ]
then
NUMERO=$1
else
NUMERO=$DEFAULTMIN
echo “Uso: `basename $0` numero_minuti [DEFAULT 1440]”
fi

#Linea per far puntare la variabile ACCESSLOGTMPFILE al file access.log originale
ACCESSLOGTMPFILE=’/var/www/htdocs/web/logs/web-access.log’

LIMITE=$NUMERO
for ((i=1; i <= LIMITE; i++)) do CONFRONTO=`date --date="$i minutes ago" +"%d/%b/%Y:%R"` printf $CONFRONTO printf "\t" grep $CONFRONTO $ACCESSLOGTMPFILE |wc -l done exit 0

Posted in Apache, Bash, Linux at August 23rd, 2006. No Comments.

Firefox a quota 200 milioni di download

http://www.graphicsguru.com/wedidit200.jpg

Posted in Internet, Linux, News, Windows at August 1st, 2006. No Comments.

Addestrare spamassassin sa-learn

Nel corso degli ultimo mese lo spam  destinato ad un dominio gestito ha raggiunto cifre clamorose.

Il grafico mostra la tendenza degli spammer a preferire i mesi caldi per inondare di spazzatura gli utenti. Agosto 2005 e giugno 2006 sono i mesi più “caldi”
email in entrata e uscita

La configurazione del MTA è strutturata in modo da lasciar decidere all’utente  cosa farsene della posta taggata come spam. Amavisd-new non fa altro che assegnare un punteggio alla mail e bloccare quelle contenenti virus o estensioni vietate dalle policy aziendali.

Utilizzando un client stile Mozilla Thunderbird è possibile spostare automaticamente i messaggi UBE in una maildir (.Junk)

L’introduzione di nuovi meccanismi di spam (i primi a studiare come funzionano e come si superano i filtri antispam sono sicuramente loro) mi ha portato a inserire qualche restrizione in più sul main.cf di postfix e a  perfezionare i filtri di spamassassin.
Spamarchive.org raccoglie migliaia di mesaggi spazzatura e sarebbe potuto essere un buon punto di partenza, invece ho preferito utilizzare lo spam raccolto nelle Maildir di posta locali ed esterne che controllo.

In pratica ho fatto un merge di filtri prelevando ube da più macchine, addestrato spam assassin e utilizzato l’ottimo rules_du_jour

sa-learn --dbpath /var/amavis/.spamassassin/  --spam /home/texilee/Maildir/.Junk/cur/

Dopo giugno il numero di spazzatura eliminata lato server è esponenzialmente aumentata come dimostra il grafico sottostante.

email in entrata analisi

Posted in Linux, Qmail-Postfix at August 1st, 2006. No Comments.