[opensuse-es] Eliminar mensajes de spam con puntuación elevada
Hola, Bueno, he pensando que después de un par de añitos funcionando con SpamAssasin ya le puedo dar mi voto de confianza :-P y permitirme el lujo de algunos "caprichos", como por ejemplo, eliminar directamente los mensajes con una puntuación muy alta (por ejempo, más de 20 puntos). Pero no sé cómo hacerlo, lo he visto configurado en algún servidor pero no sé si SA tendrá algún plugin / módulo / filtro / reglas para estas cosas ni si funciona bien, si está disponible desde algún repositorio de SuSE, etc... Además de la opción del propio SA, también lo podría hacer con sieve que está actualmente en funcionamiento, y que estaría muy bien, pero no he visto muchos ejemplos de scripts para sieve porque se usa muy poco :-/. Los ingredientes que tengo son Postfix, Cyrus + sieve, fetchmail y SA + spamd / spamc. Cualquier idea / sugerencia / experiencia se agradece :-) Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2007-10-08 a las 09:48 +0200, Camaleón escribió:
Hola,
Bueno, he pensando que después de un par de añitos funcionando con SpamAssasin ya le puedo dar mi voto de confianza :-P y permitirme el lujo de algunos "caprichos", como por ejemplo, eliminar directamente los mensajes con una puntuación muy alta (por ejempo, más de 20 puntos).
X-)
Pero no sé cómo hacerlo, lo he visto configurado en algún servidor pero no sé si SA tendrá algún plugin / módulo / filtro / reglas para estas cosas ni si funciona bien, si está disponible desde algún repositorio de SuSE, etc...
Además de la opción del propio SA, también lo podría hacer con sieve que está actualmente en funcionamiento, y que estaría muy bien, pero no he visto muchos ejemplos de scripts para sieve porque se usa muy poco :-/.
No, el SA no lo hace, sólo puntúa.
Los ingredientes que tengo son Postfix, Cyrus + sieve, fetchmail y SA + spamd / spamc.
A ver. Si estuvieras usando amavis, pues ese sí puede hacer eso, pero entonces te quedas sin la puntuación del bayes, y como que no: yo también uso spamd/c. Si estuvieras usando procmail, pues habría que hacer una regla de filtrado extra. Yo podría hacerlo así, pero no me he molestado: al fin y al cabo, uso esos correos para entrenar al SA. Así que lo que te queda es el sieve. ¿El sieve es el que hace el reparto por carpetas para el cyrus, no? Pues ese. Pero no s exactamente cómo. Yo lo que haría no es borrarlo, sino enviarlo a otra carpeta de más spam. Para borrar siempre hay tiempo. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFHCgMAtTMYHG2NR9URAj3VAJ0UntlVzjL8PBqqYJ12Qa4HOI1vogCgi6Gi iooYFWP6OwfevfQTODbwuds= =5k9o -----END PGP SIGNATURE-----
El 8/10/07, Carlos E. R. escribió:
No, el SA no lo hace, sólo puntúa.
¡Cachis! Yo pensaba que habría alguna regla o algún modulín para hacerlo :-(
Así que lo que te queda es el sieve. ¿El sieve es el que hace el reparto por carpetas para el cyrus, no? Pues ese. Pero no s exactamente cómo.
Sieve es un lenguaje de servidor, no muy flexible pero suficiente para su cometido, que es poner orden en los mensajes de forma individual (cada usaurio aplica sus reglas). Pero no se usa mucho, y no encuentro ninguna regla para hacer estas cosas (puntuación superior a 20, eliminar, menor a la carpeta de Trash)
Yo lo que haría no es borrarlo, sino enviarlo a otra carpeta de más spam. Para borrar siempre hay tiempo.
Pos mira, son las 12:37 y en la carpeta de Trash imap tengo... 1.732 correos ¡¡sólo de hoy!! :-O Es demasiado, no puedo estar borrando todos los mensajes a diario sin revisarlos... sí podría dejar en la carpeta los que son más o menos dudosos, pero revisar 2.500 al final del día es imposible :-P. Voy a seguir buscando alguna regla para sieve a ver si encuentro alguna cosa... Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2007-10-08 a las 12:37 +0200, Camaleón escribió:
El 8/10/07, Carlos E. R. escribió:
No, el SA no lo hace, sólo puntúa.
¡Cachis! Yo pensaba que habría alguna regla o algún modulín para hacerlo :-(
Nop, la filosofía es que son los usuarios quienes borren su propio correo.
Así que lo que te queda es el sieve. ¿El sieve es el que hace el reparto por carpetas para el cyrus, no? Pues ese. Pero no s exactamente cómo.
Sieve es un lenguaje de servidor, no muy flexible pero suficiente para su cometido, que es poner orden en los mensajes de forma individual (cada usaurio aplica sus reglas). Pero no se usa mucho, y no encuentro ninguna regla para hacer estas cosas (puntuación superior a 20, eliminar, menor a la carpeta de Trash)
Pues no se, pero tiene que ser con esa herramienta: leer cabeceras y distribuir en carpetas según patrones, o hacer otras acciones.
Yo lo que haría no es borrarlo, sino enviarlo a otra carpeta de más spam. Para borrar siempre hay tiempo.
Pos mira, son las 12:37 y en la carpeta de Trash imap tengo... 1.732 correos ¡¡sólo de hoy!! :-O Es demasiado, no puedo estar borrando todos los mensajes a diario sin revisarlos... sí podría dejar en la carpeta los que son más o menos dudosos, pero revisar 2.500 al final del día es imposible :-P.
¿Se una sóla persona? Caray. Son un montón.
Voy a seguir buscando alguna regla para sieve a ver si encuentro alguna cosa...
- -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFHCiX6tTMYHG2NR9URAi42AJ9h02CqJjUY9Ao2z2Xr7DS9JjywZQCcD7XM 9phlY0xbSe0hM2iBfEmLRHo= =8sCb -----END PGP SIGNATURE-----
El 8/10/07, Carlos E. R. escribió:
Nop, la filosofía es que son los usuarios quienes borren su propio correo.
Por eso precisamente me gusta Sieve, es individual, pero no descartaba el propio SA. Por ejemplo, el filtro bayesiano es global y no he tenido quejas... son los propios usuarios los que me piden borrar los mensajes de puntuación elevada.
Pues no se, pero tiene que ser con esa herramienta: leer cabeceras y distribuir en carpetas según patrones, o hacer otras acciones.
Sip, voy a ver si encuentro algo por medio de Google.
¿Se una sóla persona? Caray. Son un montón.
Lo son, no es gestionable, y no me gusta borrar sin revisar. Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 08/10/2007 15:39:12 Camaleón escribió: noelamac> Lo son, no es gestionable, y no me gusta borrar sin revisar. No te he contestado antes porqué sabía que dirías que _no_, pero cuando he leido lo de los mensajes que tienes que borrar a mano ..... quizá es un buen momento para convencerte. Ponle el Procmail, a nivel de servidor o a nivel de usuario, o en ambos. como ya lo habíamos hablado en otras ocasiones no te canso con las ventajas ..... La regla que hay que añadirle es muy sencilla: :0 * ^X-Spam-Status: Yes /dev/null Es devir, con el SA le pones la puntuación que quieras y cuando en la cabecera aparece el "X-Spam-Status: Yes" borra el mensaje. Si lo usas a nivel de servidor te quedaría en: /etc/procmailrc y sería así: :0fw | /usr/bin/spamassassin MAILDIR=$HOME/ PATH=/usr/bin:/bin LOGFILE=$HOME/procmail.log VERBOSE=no COMSAT=no SENDMAIL=/usr/sbin/sendmail :0 * ^X-Spam-Status: Yes /dev/null Si lo quieres por usuarios: el fichero sería /home/Usuario/.procmailrc y el contenido el mismo. Fíjate que para los ususarios procmailrc tiene el atributo de oculto y para el servidor no lo tiene. -- Saludos, Josep M. Queralt
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2007-10-08 a las 15:57 +0200, Josep M. Queralt escribió:
Si lo usas a nivel de servidor te quedaría en:
/etc/procmailrc
No estoy seguro que con postfix --> cyrus+sieve llegue ni a pasar por procmail. De hecho, yo creo que son incompatibles. El cyrus trae el sieve para hacer esa función.
Si lo quieres por usuarios:
el fichero sería /home/Usuario/.procmailrc
No, con cyrus el correo no está ahí. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFHCkg7tTMYHG2NR9URAgaMAJ91KbLtT7famrWJk7ZbK9WWxd8uowCdH+n/ 9LJqpnqHKvPOiQJg+YYZJQQ= =kWKD -----END PGP SIGNATURE-----
On 08/10/2007, Carlos E. R. <robin.listas@telefonica.net> wrote:
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
El 2007-10-08 a las 15:57 +0200, Josep M. Queralt escribió:
Si lo usas a nivel de servidor te quedaría en:
/etc/procmailrc
No estoy seguro que con postfix --> cyrus+sieve llegue ni a pasar por procmail. De hecho, yo creo que son incompatibles.
El cyrus trae el sieve para hacer esa función.
Si lo quieres por usuarios:
el fichero sería /home/Usuario/.procmailrc
No, con cyrus el correo no está ahí.
Ese es un buen punto, en que parte de la cadena Postfix+Amavis+SA+Cyrus debe ir procmail ..? pues parece de facil uso, pero no encuentro aun, documentacion que diga cual es la cadena que sigue el mensaje entrante utilizando procmail. Saludos JCarlos --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 08/10/2007 17:57:39 Juan Carlos Bravo Celis escribió: elbravito> Ese es un buen punto, en que parte de la cadena elbravito> Postfix+Amavis+SA+Cyrus debe ir procmail ..? pues parece de facil uso, elbravito> pero no encuentro aun, documentacion que diga cual es la cadena que elbravito> sigue el mensaje entrante utilizando procmail. A Postfix hay que decirle que ejecute Amavis (mediante la orden en Master.cf) y que lo pase a Procmail, eso último se hace en main.cf con la línea "mailbox_command = camino de procmail" Procmail ejecuta SA. y lo entrega a Cyrus en la manera que decía en un mensaje anterior. -- Saludos, Josep M. Queralt
El 08/10/2007 17:09:46 Carlos E. R. escribió: robin.listas> No estoy seguro que con postfix --> cyrus+sieve llegue ni a pasar por robin.listas> procmail. De hecho, yo creo que son incompatibles. Es lo que le decía a "Camaleon", este tema ya lo habíamos hablado hace tiempo. Procmail recibe el correo de Postfix. Es Procmail quien ejecuta el SA y Procmail quien lo debe pasar a Cyrus. No son incompatibles. robin.listas> > Si lo quieres por usuarios: robin.listas> > robin.listas> > el fichero sería /home/Usuario/.procmailrc robin.listas> robin.listas> No, con cyrus el correo no está ahí. Es verdad, para los usuarios de Cyrus es: INCLUDERC=/Users/$USER/.procmailrc en el fichero /etc/procmailrc del servidor Para no tener que explicarme ni repasar el archivo de la lista http://www.afp548.com/articles/Panther/procmail.html -- Saludos, Josep M. Queralt
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2007-10-08 a las 18:58 +0200, Josep M. Queralt escribió:
robin.listas> No estoy seguro que con postfix --> cyrus+sieve llegue ni a pasar por robin.listas> procmail. De hecho, yo creo que son incompatibles.
Es lo que le decía a "Camaleon", este tema ya lo habíamos hablado hace tiempo. Procmail recibe el correo de Postfix. Es Procmail quien ejecuta el SA y Procmail quien lo debe pasar a Cyrus. No son incompatibles.
robin.listas> > Si lo quieres por usuarios: robin.listas> > robin.listas> > el fichero sería /home/Usuario/.procmailrc robin.listas> robin.listas> No, con cyrus el correo no está ahí.
Es verdad, para los usuarios de Cyrus es:
INCLUDERC=/Users/$USER/.procmailrc
en el fichero /etc/procmailrc del servidor
Para no tener que explicarme ni repasar el archivo de la lista
Eso es para un Mac. Lo de "/Users/" no existe, y menos todavía porque Camaleón no tiene usuarios reales, no tienen "home". Este paso, de ser recomendable y fiable (por mucho que a mí me guste el procmail, que me encanta) tiene que estar documentado por cyrus o por procmail. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFHCn7PtTMYHG2NR9URAlm6AKCK1Mh+X9W1nsrq12+LPKS9zAK24wCffZ5K H2wFUM1/CEheyfOqPVz5UWM= =9snJ -----END PGP SIGNATURE-----
El 8/10/07, Josep M. Queralt escribió:
No te he contestado antes porqué sabía que dirías que _no_, pero cuando he leido lo de los mensajes que tienes que borrar a mano ..... quizá es un buen momento para convencerte.
:-) Pero el "no" tiene motivos. Cyrus lo necesito para los usuarios móviles (con pda y portátiles) para dar servicio imap. Y como comentan Carlos E.R. y Juan Carlos no sé dónde meter a procmail entre todos los ingredientes.
:0 * ^X-Spam-Status: Yes /dev/null
Es devir, con el SA le pones la puntuación que quieras y cuando en la cabecera aparece el "X-Spam-Status: Yes" borra el mensaje.
Pero no quiero borrar el mensaje que sea spam, sólo los de puntuación elevada. Eso que comentas también se puede hacer con Sieve (con el comando discard), pero aún así, es decir, aunque se modifique la sintaxis para que haga alguna comprobación en la puntuación (>20 a la basura) no veo dónde encajarlo :-/
y el contenido el mismo. Fíjate que para los ususarios procmailrc tiene el atributo de oculto y para el servidor no lo tiene.
Ah, sí, "el otro" problema, los usuarios están definidos en sasldb2 :-P Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 08/10/2007 18:33:52 Camaleón escribió: noelamac> :-) Pero el "no" tiene motivos. Cyrus lo necesito para los usuarios Recuerdo los motivos, por eso no contestaba. :-) noelamac> Carlos E.R. y Juan Carlos no sé dónde meter a procmail entre todos los noelamac> ingredientes. Lo explico en un mensaje anterior sobre este mismo tema noelamac> > :0 noelamac> > * ^X-Spam-Status: Yes noelamac> > /dev/null noelamac> > noelamac> > Es devir, con el SA le pones la puntuación que quieras y cuando en la noelamac> > cabecera aparece el "X-Spam-Status: Yes" borra el mensaje. noelamac> noelamac> Pero no quiero borrar el mensaje que sea spam, sólo los de puntuación noelamac> elevada. La puntuación, como te decía se la pones tú en el SA. y es lo que determina que X-Spam-Status se ponga en "Yes" También puedes usar X-spam-Level:" y borrar si por ejemplo tiene 5 estrellas: :0
* ^X-Spam-Level: ***** /dev/null
Así un Spam de 4 estrellas pasaría el filtro. noelamac> noelamac> Ah, sí, "el otro" problema, los usuarios están definidos en sasldb2 :-P Sip, en la URL del otro mensaje hay una explicación detallada. El Esquema es Postfix -> Procmail (SA) ->Cyrus El esquema se puede variar ya que desde Posfixt se puede ejecutar con el master.cf tanto Amavis como Cyrus y también SA y poner Procmail al final de la cadena y dejar que sea este quien entregue el correo en los Mailbox previo filtrado. También se puede: Postfix, mediante las ordenes en master.cf ejecuta Amavis y Cyrus y mendiante main.cf pasa el correo a Procmail quien ejecuta SA, filtra y entrega -- Saludos, Josep M. Queralt
Hola. El Lunes, 8 de Octubre de 2007, Camaleón escribió:
El 8/10/07, Josep M. Queralt escribió:
No te he contestado antes porqué sabía que dirías que _no_, pero cuando he leido lo de los mensajes que tienes que borrar a mano ..... quizá es un buen momento para convencerte.
:-) Pero el "no" tiene motivos. Cyrus lo necesito para los usuarios
móviles (con pda y portátiles) para dar servicio imap. Y como comentan Carlos E.R. y Juan Carlos no sé dónde meter a procmail entre todos los ingredientes.
:0
* ^X-Spam-Status: Yes /dev/null
Es devir, con el SA le pones la puntuación que quieras y cuando en la cabecera aparece el "X-Spam-Status: Yes" borra el mensaje.
Creo quen el spamassasin puedes hacer que cree una cabecera especifica si pasa de un determinado score mira en man 'Mail::SpamAssassin::Conf' con eso podras marcar el mensaje y luego filtrarlo con sieve suerte -- Un saludo. Carlos Lorenzo Matés. clmates AT mundo-r DOT com
El 8/10/07, Carlos Lorenzo Matés escribió:
Creo quen el spamassasin puedes hacer que cree una cabecera especifica si pasa de un determinado score mira en man 'Mail::SpamAssassin::Conf'
Sí, éso me serviría. He estado buscando en la wiki del SA pero sólo encontré referencias para ésto con procmail (¡Grr!): http://wiki.apache.org/spamassassin/DeletingAllMailsMarkedSpam
con eso podras marcar el mensaje y luego filtrarlo con sieve
Sieve es la clave. Buscando un poco por Google encontré una "receta": http://wiki.fastmail.fm/index.php?title=SieveRecipes Three level spam filtering based on SpamAssassin rating. The first line discards anything with a score >= 20 (canned spam). The second line puts anything with 20 > score >= 8 (fairly spam) into a subfolder of spam called spam. The third line put anything with a score < 8 (potential http://en.wikipedia.org/wiki/Ham ) into a subfolder of INBOX called spam. Note the addition to the require statement. require ~[..., "comparator-i;ascii-numeric"]; if header :value "ge" :comparator "i;ascii-numeric" ["X-Spam-score"] ["20"] { discard; stop; } if header :value "ge" :comparator "i;ascii-numeric" ["X-Spam-score"] ["8"] { fileinto "INBOX.spam.spam"; stop; } if header :value "ge" :comparator "i;ascii-numeric" ["X-Spam-score"] ["4"] { fileinto "INBOX.spam"; stop; } Voy a ver si lo puedo ajustar para que, en lugar de números enteros, use la comparación "mayor que o menor que" aunque según la explicación parece que está implícito, es decir que por ["20"] se entiende mayor o igual a 20 :-?. Me viene genial porque me interesa que sea un filtro por usuario, personalizado y que funcione bien con Cyrus :-). Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2007-10-09 a las 09:14 +0200, Camaleón escribió:
El 8/10/07, Carlos Lorenzo Matés escribió:
Creo quen el spamassasin puedes hacer que cree una cabecera especifica si pasa de un determinado score mira en man 'Mail::SpamAssassin::Conf'
Sí, éso me serviría. He estado buscando en la wiki del SA pero sólo encontré referencias para ésto con procmail (¡Grr!):
Yo en el manual no ví como crear otra cabecera que indicara si se pasa de spam20, por ejemplo. Está la normal que indica yes si pasa de 5, nada más.
Sieve es la clave. Buscando un poco por Google encontré una "receta":
http://wiki.fastmail.fm/index.php?title=SieveRecipes
Three level spam filtering based on SpamAssassin rating.
Ah, pues eso es lo interesante.
if header :value "ge" :comparator "i;ascii-numeric" ["X-Spam-score"] ["20"] {
"ge" es ">="
Voy a ver si lo puedo ajustar para que, en lugar de números enteros, use la comparación "mayor que o menor que" aunque según la explicación parece que está implícito, es decir que por ["20"] se entiende mayor o igual a 20 :-?.
Yo creo que sí.
Me viene genial porque me interesa que sea un filtro por usuario, personalizado y que funcione bien con Cyrus :-).
Pero el filtro anterior, al ponerlo tú aparece para todos los usuarios automáticamente, ¿no? Una mejora sería que los correos borrados fueran listados en un log (from, to, subject, date, msg-id). Soy un tant paranoico en eso O:-) - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFHC1Y2tTMYHG2NR9URAupVAJ9VDPFKuNSa2Qzv7tiHrGzpnMnaqwCghHEv Xkl5+hCjzoyZqWv1EDsvK20= =ApXk -----END PGP SIGNATURE-----
El 9/10/07, Carlos E. R. escribió:
"ge" es ">="
¿Y cómo sabes que "ge"...? Hum... ¬_¬ (leyendo rfc de sieve) http://ietfreport.isoc.org/idref/draft-ietf-sieve-3431bis/#page-6 Vale, listo, tal y como dices -debe ser la mentalidad de programador >:-): 4. Match Types (...) relational-match = DQUOTE ("gt" / "ge" / "lt" / "le" / "eq" / "ne") DQUOTE ; "gt" means "greater than", the C operator ">". ; "ge" means "greater than or equal", the C operator ">=". ; "lt" means "less than", the C operator "<". ; "le" means "less than or equal", the C operator "<=". ; "eq" means "equal to", the C operator "==". ; "ne" means "not equal to", the C operator "!=".
Yo creo que sí.
Sip O:-)
Pero el filtro anterior, al ponerlo tú aparece para todos los usuarios automáticamente, ¿no?
No, los scripts de sieve se activan de forma individual (quizá sea posible crear un "espacio" común para todos) y se ubican dentro de cada directorio de usuario en /var/lib/sieve/u/usuario/script.sieve
Una mejora sería que los correos borrados fueran listados en un log (from, to, subject, date, msg-id). Soy un tant paranoico en eso O:-)
Lo borrado, borrado está >:-) De todas formas, sí guardo los registros de spamassassin y de postfix, al menos aparece remitente y destinatario. Aún así, de momento sólo lo voy a aplicar en mi cuenta que recibe los casi 3.000 diarios... si funciona bien, digamos que en un par de años, lo aplico al resto O:-) Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2007-10-09 a las 12:55 +0200, Camaleón escribió:
El 9/10/07, Carlos E. R. escribió:
"ge" es ">="
¿Y cómo sabes que "ge"...? Hum...
¬_¬ (leyendo rfc de sieve)
http://ietfreport.isoc.org/idref/draft-ietf-sieve-3431bis/#page-6
Vale, listo, tal y como dices -debe ser la mentalidad de programador >:-):
ROTFL! X'-) Tengo truco: son las mismas letras que usan con el comando "test" de los scripts bash. Me lo sé por eso.
Pero el filtro anterior, al ponerlo tú aparece para todos los usuarios automáticamente, ¿no?
No, los scripts de sieve se activan de forma individual (quizá sea posible crear un "espacio" común para todos) y se ubican dentro de cada directorio de usuario en /var/lib/sieve/u/usuario/script.sieve
Ah, curioso... No se, a mi me parecería mejor poder organizar un servidor imap con unos servicios por defecto desde el administrador: que los correos de spam vayan a un sitio predeterminado, etc. Luego si cada uno quiere cambiarlo, pues también.
Una mejora sería que los correos borrados fueran listados en un log (from, to, subject, date, msg-id). Soy un tant paranoico en eso O:-)
Lo borrado, borrado está >:-)
Ya, bueno... hasta que eches de menos un correo determinado y no sepas a donde ha ido. Y sea uno mio enviado desde una ip dinámica que está en todas las listas negras, y que en vez de hacer un promedio el SA hace una suma y le da 40 puntos :-p
De todas formas, sí guardo los registros de spamassassin y de postfix, al menos aparece remitente y destinatario. Aún así, de momento sólo lo voy a aplicar en mi cuenta que recibe los casi 3.000 diarios... si funciona bien, digamos que en un par de años, lo aplico al resto O:-)
X'-) Se me ocurre que debería haber una manera de registrar de cada correo "pasante" esos datos y sólo esos en un log: de, a, fecha, tema, identificador. Poner a donde se envía ya es más complicado. Pero supongo debe ser interesante para servidores de empresas y tal. Y ya puestos, meterlos en una base de datos mysql para analisis estadísticos y espionajes varios :-p - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFHC27NtTMYHG2NR9URAnfCAJ9QJbDAVxUjE3aARPd4tDly05hugACcDXFR Y7nfPok1cgIt7VxHHi9R8uo= =rL98 -----END PGP SIGNATURE-----
El 9/10/07, Camaleón escribió:
Voy a ver si lo puedo ajustar para que, en lugar de números enteros, use la comparación "mayor que o menor que" aunque según la explicación parece que está implícito, es decir que por ["20"] se entiende mayor o igual a 20 :-?.
Funciona perfecto :-D. Lo pongo por si le puede servir a alguien: /var/lib/sieve/u/usuario/sievespam.script # Elimina los mensajes marcados como spam con puntuación mayor o igual a 20 # Envía a la carpeta "Trash" los mensajes marcados como spam con puntuación # mayor o igual a 5 (y < 20) # Los mensajes no marcados como spam van a la bandeja de entrada require ["reject", "fileinto", "comparator-i;ascii-numeric", "relational"]; if header :value "ge" :comparator "i;ascii-numeric" ["X-Spam-Score"] ["20"] { discard; stop; } if header :value "ge" :comparator "i;ascii-numeric" ["X-Spam-Score"] ["5"] { fileinto "INBOX.Trash"; stop; } Sólo hago una anotación que no aparece en la "receta" y que es necesaria para que funcione (no me di cuenta). En el fichero de configuración de SA (/etc/mail/spamassassin/local.cf) hay que decirle que añada en la cabecera de los mensajes la puntuación como valor independiente para que se pueda filtrar: # Ver la puntuación como valor independiente para sieve add_header all Score _SCORE_ Con lo que se añade en la cabecera "X-Spam-Score: xx" en cada mensaje. Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2007-10-10 a las 21:04 +0200, Camaleón escribió:
Funciona perfecto :-D. Lo pongo por si le puede servir a alguien:
Me lo guardo, por si las moscas :-) - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFHDSkOtTMYHG2NR9URAkmWAKCRYbJWeVT3iF99GpDxV9+MH7raowCfei10 +UUmrTYmWfT6KnxHBWgFouc= =0mWw -----END PGP SIGNATURE-----
Hola. El Miércoles, 10 de Octubre de 2007, Camaleón escribió:
El 9/10/07, Camaleón escribió:
Voy a ver si lo puedo ajustar para que, en lugar de números enteros, use la comparación "mayor que o menor que" aunque según la explicación parece que está implícito, es decir que por ["20"] se entiende mayor o igual a 20 :-?.
Funciona perfecto :-D. Lo pongo por si le puede servir a alguien:
# Ver la puntuación como valor independiente para sieve add_header all Score _SCORE_
Con lo que se añade en la cabecera "X-Spam-Score: xx" en cada mensaje.
A esto ultimo era a lo que me referia. Gracias, tambien me lo guardo -- Un saludo. Carlos Lorenzo Matés. clmates AT mundo-r DOT com
El 10/10/07, Carlos Lorenzo Matés escribió:
A esto ultimo era a lo que me referia.
Ah, no había caído :-). La ventaja de sieve es que permite ajustar los filtros a cada usuario de forma independiente (hacerlo desde SA es más complicado en ciertas configuraciones) y bueno, si lo siguen desarrollando (espero que sí) puede utilizar extensiones realmente interesantes, como spamtest y virustest: "The SIEVE email filtering language "spamtest", "spamtestplus" and "virustest" extensions permit users to use simple, portable commands for spam and virus tests on email messages. Each extension provides a new test using matches against numeric "scores". It is the responsibility of the underlying SIEVE implementation to do the actual checks that result in proper input to the tests." ftp://ftp.rfc-editor.org/in-notes/internet-drafts/draft-ietf-sieve-spamtestbis-05.txt Lamentablemente no están implementadas en la versión de sieve que tengo en la 10.1, quizá en la 10.3 :-?. Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 10/10/07, Camaleón escribió:
Funciona perfecto :-D.
No, no funciona perfecto... ¡¡NO USAR tal y como está si se trabaja con listas blancas!! Hay un problema con los mensajes que tienen puntuación negativa (los que están en la lista blanca), no sé porqué pero los elimina :-O. Fallo terrible y gordo, y menos mal que sólo lo activé en mi cuenta. Ahora he vuelto a activar el script anterior mientras averiguo dónde está el error que debe venir debido a que el operador (ge - greater or equal) no gestiona valores negativos (¿sólo números naturales? :-/) porque aplica la regla de eliminar, como si al encontrar una puntuación de "-95" lo entendiera por "95", lo cual me parece bastante raro, pero no veo otra explicación :-?. Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El Miércoles, 17 de Octubre de 2007 10:15, Camaleón escribió:
El 10/10/07, Camaleón escribió:
Funciona perfecto :-D.
No, no funciona perfecto... ¡¡NO USAR tal y como está si se trabaja con listas blancas!!
Hay un problema con los mensajes que tienen puntuación negativa (los que están en la lista blanca), no sé porqué pero los elimina :-O.
Eso me paso a mi con un isp externo, me dijo que el no mantenia el antispam y que era problema mio, la unica solucion fue desactivarlo. El muy c... directamente los borraba aun cuando le decias que solo marcase, pero los blancos a la basura. --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 17/10/07, Camaleón escribió:
No, no funciona perfecto... ¡¡NO USAR tal y como está si se trabaja con listas blancas!!
Hay un problema con los mensajes que tienen puntuación negativa (los que están en la lista blanca), no sé porqué pero los elimina :-O.
(...) Resumen: El filtro queda como sigue: /var/lib/sieve/u/usuario/sievespam.script # Los mensajes no marcados como spam van a la bandeja de entrada # Los mensajes que no pasan por SA no se ven afectados por el script # Elimina los mensajes marcados como spam con puntuación mayor o igual a 20 # Envía a la carpeta "Trash" los mensajes marcados como spam con puntuación # mayor o igual a 5 (y < 20) if header :contains ["X-Spam-Flag"] "NO" { fileinto "INBOX"; stop; } if header :value "ge" :comparator "i;ascii-numeric" ["X-Spam-Score"] ["20"] { discard; stop; } if header :value "ge" :comparator "i;ascii-numeric" ["X-Spam-Score"] ["5"] { fileinto "INBOX.Trash"; stop; } Y en SA: /etc/mail/spamassassin/local.cf # Para sieve (ver puntuación y marcar status del mensaje en todos los correos) add_header all Score _SCORE_ add_header all Flag _YESNOCAPS_ Nota: no puedo enviar el mensaje completo donde explicaba el fallo del primer script a la lista, el servidor me lo filtra y el administrador no me contesta :-/. Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
On 18/10/2007, Camaleón <noelamac@gmail.com> wrote:
El 17/10/07, Camaleón escribió:
No, no funciona perfecto... ¡¡NO USAR tal y como está si se trabaja con listas blancas!!
Hay un problema con los mensajes que tienen puntuación negativa (los que están en la lista blanca), no sé porqué pero los elimina :-O.
(...) Resumen:
El filtro queda como sigue:
/var/lib/sieve/u/usuario/sievespam.script
[...] consulta tonta, si miro en /var/lib/sieve/u/ esta vacio, el resto de la ruta, que pones, /var/lib/sieve/u/usuario/sievespam.script lo creas con mkdir y touch ..? o es que hay un comando que permite crearlo..? el nombre del archivo tiene que ser asi..? o es que puedo tener varios archivos con la condicion de que terminen en .script Saludos JCarlos --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
El 7/11/07, Juan Carlos Bravo Celis escribió:
si miro en /var/lib/sieve/u/ esta vacio,
La ruta al script depende de nombre de usuario. Por ejemplo, si tu usuario es "juancarlos@dominio.com" el script de sieve para ese usuario estará en: /var/lib/sieve/j/juancarlos/nombre.script
el resto de la ruta, que pones, /var/lib/sieve/u/usuario/sievespam.script lo creas con mkdir y touch ..? o es que hay un comando que permite crearlo..?
La ruta ya la tienes creada (el árbol /var/lib/sieve/letra). El script es un archivo de texto simple que tienes que crear con cualquier editor (midnight commander, pico...), con los permisos para cyrus/mail (600) y luego lo tienes que "poner" (put) y "activar" (activate) mediante el comando "shieveshell" para que funcione.
el nombre del archivo tiene que ser asi..? o es que puedo tener varios archivos con la condicion de que terminen en .script
Creo, ojo, creo que el nombre de la extensión lo puedes modificar. Los he visto del tipo "nombre_script.sieve" y del tipo "nombre_script.script". Cuando lo activas, sieve lo renombra *.bc :-). Saludos, -- Camaleón --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
On 07/11/2007, Camaleón <noelamac@gmail.com> wrote:
El 7/11/07, Juan Carlos Bravo Celis escribió:
si miro en /var/lib/sieve/u/ esta vacio,
La ruta al script depende de nombre de usuario. Por ejemplo, si tu usuario es "juancarlos@dominio.com" el script de sieve para ese usuario estará en:
/var/lib/sieve/j/juancarlos/nombre.script
La ruta ya la tienes creada (el árbol /var/lib/sieve/letra). El script es un archivo de texto simple que tienes que crear con cualquier editor (midnight commander, pico...), con los permisos para cyrus/mail (600) y luego lo tienes que "poner" (put) y "activar" (activate) mediante el comando "shieveshell" para que funcione.
Creo, ojo, creo que el nombre de la extensión lo puedes modificar. Los he visto del tipo "nombre_script.sieve" y del tipo "nombre_script.script". Cuando lo activas, sieve lo renombra *.bc :-).
Gracias, lo tendre en cuenta, con la configuracion que tengo en mente. Saludos JCarlos --------------------------------------------------------------------- Para dar de baja la suscripción, mande un mensaje a: opensuse-es+unsubscribe@opensuse.org Para obtener el resto de direcciones-comando, mande un mensaje a: opensuse-es+help@opensuse.org
participants (6)
-
Camaleón
-
Carlos E. R.
-
Carlos Lorenzo Matés
-
francisco F.
-
Josep M. Queralt
-
Juan Carlos Bravo Celis