On Wed, 21 Dec 2005 09:47:14 +0100
Emiliano Sutil wrote:
emiliano.sutil>
emiliano.sutil> Lo probaré, aunque no uso procmail. La ultima vez que me puse a cacharrear
emiliano.sutil> con el deje sin correo el servidor durante unas horas y case me corren....
emiliano.sutil> ;-)
emiliano.sutil>
emiliano.sutil> A ver si encuentro un momento de poco uso del correo para probar.
Hay varios hilos en la lista que hablan del tema.
Necesitas crear un un fichero ".procmailrc" que si se usa en combinación
con SpamAssassin debe contener una primera línea que sea:
:0fw
| /usr/bin/spamassassin
En este bloque, existe otra opción para no carga tanto el servidor
consistente en usar "spamc" en lugar de "spamassassin. Si se usa "spamc"
hay que tener cargado el "daemon" "spamd"
En este segundo caso la línea debería ser:
:0fw
| /usr/bin/spamc
Usando la primera opción (spamassassin) el directorio ".spamassassin"
debe ser de lectura-escritura para todo el mundo (chmod 777)
Despues las opciones de configuración:
MAILDIR=$HOME/
PATH=/usr/bin:/bin
LOGFILE=$HOME/procmail.log
VERBOSE=no
COMSAT=no
SENDMAIL=/usr/sbin/sendmail
y después las reglas de filtrado:
Por ejemplo:
:0:
* ^To:.*info@*
/dev/null
borra todo el correo dirigido al usuario "info"
:0:
* ^From:.*sales@
/dev/null
borra todo el correo enviado por un usuario llamado "sales"
:0:
* ^From:.*hahaha@sexyfun.net
/dev/null
Borra todo el correo que se recive de la dirección indicada
:0B:
* (remove@|remover@)
/dev/null
borra todo el correo en cuyo cuerpo lleve el texto "remove@" o "remover@"
Tambien pueden construirse reglas complejas. Por ejemplo
:0:
* 1^0 ? formail -x"Received:" | egrep -is "64.154.6."
/dev/null
borra todo el correo que proceda de un host cuya IP empiece por
"64.154.5."
:0B
* ^Content-.*name=.*\.(exe|pif|bat|xls|scr)
* !^FROM_DAEMON
* !^X-Loop: postmaster@dominio.com
{
:0Whc: noexe.lock
| (formail -t -r -I"Subject: Rejected mail: Recipient refusal" \
-I"From: postmaster@dominio.com" \
-A"X-Loop: postmaster@dominio.com" ; cat $HOME/rejected.txt) | $SENDMAIL
-t
:0:
/dev/null
}
Borra todos los mensajes con documentos adjuntos (exe, pif, bat, xls y
scr) y remite al emisor un mensaje con el texto que se halla en el
fichero "rejected.txt"
Para acabar, ".procmailrc" debe situarse en el directorio raiz del
usuario o, si no recuerdo mal, también en /etc en cuyo caso afecta a
todos los usuarios. En este último caso va sin el atributo de ocultto
delante, es decir, sería, "/etc/procmailrc"
Y si deseas complicarte la vida más, un tutorial:
http://pegasus.rutgers.edu/~elflord/unix/procmail.html
--
Salutacions - Saludos,
Josep M. Queralt