[opensuse-es] no funciona body_checks en postfix
hola a todos, con los problemas que se me presentaron por estos dias con el ataque a mis usuarios, e veo obligado a poner unos filtros en sobre alguna frase en el contenido del mensaje, estoy usando body_checks, pero este no funciona. lo hice de la siguiente forma,, al final del main.cf. agregue la siguiente linea body_checks = regexp:/etc/postfix/body_checks en el archivo /etc/postfix/body_checks hay palabra1 REDIRECT spamadmin@midominio.com http:// REDIRECT spamadmin@midominio.com hice un postmap /etc/postix/body_checks y cuando hago una prueba enviando desde mi cuenta de gmail,, este llega a su destino y no lo redirecciona, tengo postfix Version : 2.1.1 en algo debo haberme equivocado, o quiza puse la regla en el lugar no adecuado, podrian darme algunas pautas por favor..? 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
On 04/04/07, Juan Carlos Bravo Celis
hola a todos,
al final del main.cf. agregue la siguiente linea
body_checks = regexp:/etc/postfix/body_checks
en el archivo /etc/postfix/body_checks hay
palabra1 REDIRECT spamadmin@midominio.com http:// REDIRECT spamadmin@midominio.com
hice un postmap /etc/postix/body_checks
en algo debo haberme equivocado, o quiza puse la regla en el lugar no adecuado, podrian darme algunas pautas por favor..?
Efectivamente, me equivoque en algo, revisando por google vi un ejemplo que habia que poner la palabra o la frase entre barras /palabra1/ y funciono.. ahora el problema es que estas reglas se aplican a todos los correos, tantos los de mis usuarios como los que vienen de otros dominios, hay alguna forma de hacer que estos solo se apliquen a los correos de otros dominios..? Saludos y gracias 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
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2007-04-04 a las 12:25 -0500, Juan Carlos Bravo Celis escribió:
al final del main.cf. agregue la siguiente linea
body_checks = regexp:/etc/postfix/body_checks
en el archivo /etc/postfix/body_checks hay
palabra1 REDIRECT spamadmin@midominio.com http:// REDIRECT spamadmin@midominio.com
hice un postmap /etc/postix/body_checks
en algo debo haberme equivocado, o quiza puse la regla en el lugar no adecuado, podrian darme algunas pautas por favor..?
Efectivamente, me equivoque en algo, revisando por google vi un ejemplo que habia que poner la palabra o la frase entre barras /palabra1/ y funciono..
Es preferible usar "header_checks", pero en fin. En los ejemplos que tienes en la propia documentación del postfix (/usr/share/doc/postfix/README_FILES) te lo cuentan, con varias maneras. Además, está "header_checks.5.html" por ahí cerca. Y por ahí en su web hay un faq.
ahora el problema es que estas reglas se aplican a todos los correos, tantos los de mis usuarios como los que vienen de otros dominios, hay alguna forma de hacer que estos solo se apliquen a los correos de otros dominios..?
¡Bufff! Usar filtros de esa clase (de contenido) en el postfix es muy peligroso, porque pueden saltar incluso cuando alguien te mande un correo mencionando que tiene un problema con el correo e incluya esa cadena en un ejemplo. Es mejor que te lo curres en el spamassassin. Por ejemplo, en "/etc/mail/spamassassin/20_MyPhrases.cf" tengo: header MY_POCOMAIL X-Mailer =~ /^PocoMail/ describe MY_POCOMAIL "Pocomail suele usarse para enviar spam" score MY_POCOMAIL 1.000 Con lo que cuando me llega un correo externo con la cabecera: #X-Mailer: PocoMail 2.64 (1120) - Licensed Version #X-Poco-UID: 38676729 automáticamente le pongo un punto más de spam. Otro ejemplo: body MY_GARBLEDMAIL /m4il/i describe MY_GARBLEDMAIL "garbled mail reference implies spam - 20051012" score MY_GARBLEDMAIL 0.500 que significa que si alguien mete en el texto una referencia camuflada a la palabra "mail" de esa forma, le daré medio punto de spam. ¿Ves que fácil? - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFGE+fRtTMYHG2NR9URAmf+AJ9Nbo4rke+t+YO13jeF1iJA4wssSgCdE/4f DyfEQa/GFdbMvM1sJVFipE4= =9XvC -----END PGP SIGNATURE-----
On 04/04/07, Carlos E. R.
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1
El 2007-04-04 a las 12:25 -0500, Juan Carlos Bravo Celis escribió:
al final del main.cf. agregue la siguiente linea
body_checks = regexp:/etc/postfix/body_checks
en el archivo /etc/postfix/body_checks hay
palabra1 REDIRECT spamadmin@midominio.com http:// REDIRECT spamadmin@midominio.com
hice un postmap /etc/postix/body_checks
en algo debo haberme equivocado, o quiza puse la regla en el lugar no adecuado, podrian darme algunas pautas por favor..?
Efectivamente, me equivoque en algo, revisando por google vi un ejemplo que habia que poner la palabra o la frase entre barras /palabra1/ y funciono..
Es preferible usar "header_checks", pero en fin. En los ejemplos que tienes en la propia documentación del postfix (/usr/share/doc/postfix/README_FILES) te lo cuentan, con varias maneras. Además, está "header_checks.5.html" por ahí cerca. Y por ahí en su web hay un faq.
ahora el problema es que estas reglas se aplican a todos los correos, tantos los de mis usuarios como los que vienen de otros dominios, hay alguna forma de hacer que estos solo se apliquen a los correos de otros dominios..?
¡Bufff!
Usar filtros de esa clase (de contenido) en el postfix es muy peligroso, porque pueden saltar incluso cuando alguien te mande un correo mencionando que tiene un problema con el correo e incluya esa cadena en un ejemplo.
Es mejor que te lo curres en el spamassassin. Por ejemplo, en "/etc/mail/spamassassin/20_MyPhrases.cf" tengo:
header MY_POCOMAIL X-Mailer =~ /^PocoMail/ describe MY_POCOMAIL "Pocomail suele usarse para enviar spam" score MY_POCOMAIL 1.000
Con lo que cuando me llega un correo externo con la cabecera:
#X-Mailer: PocoMail 2.64 (1120) - Licensed Version #X-Poco-UID: 38676729
automáticamente le pongo un punto más de spam. Otro ejemplo:
body MY_GARBLEDMAIL /m4il/i describe MY_GARBLEDMAIL "garbled mail reference implies spam - 20051012" score MY_GARBLEDMAIL 0.500
que significa que si alguien mete en el texto una referencia camuflada a la palabra "mail" de esa forma, le daré medio punto de spam.
lo que pasa es que la orden es que cualquier correo que sea, tanto valido o no valido deben ir a una cuenta de cuarentena,, pero el tema es que este filtro solo debe ser aplicable a los correos que ingresan y no a los que se envian entre mis usuarios. Vaya dolor de cabeza esto, pero la orden es esa, ya revise que tengo en /etc/mail/spamassassin/ y solo veo el archivo locol y nada mas, y si creo ese archivo que mencionas, en que parte del local hay que decirle que lo use..? tambien estuve viendo si el amavis lo hace, pero otra vez estoy contra el tiempo, mientras tanto la cuenta de cuarentena esta que se llena increiblemente, y me estoy soplando el dia en reeviarlo a sus destinatarios, y muchas veces sin exito... Espero todos sus comentarios. Saludos JCarlos Saludos --------------------------------------------------------------------- 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
que significa que si alguien mete en el texto una referencia camuflada a la palabra "mail" de esa forma, le daré medio punto de spam.
lo que pasa es que la orden es que cualquier correo que sea, tanto valido o no valido deben ir a una cuenta de cuarentena,, pero el tema es que este filtro solo debe ser aplicable a los correos que ingresan y no a los que se envian entre mis usuarios.
Es que con PROCMAIL era mucho más fácil y queda integrado perfectamente en SA. No entiendo porque te has querido complicar la vida de esta manera. :-( Con dos reglas lo tenías resuelto. La primera para separar interno de externo y la segunda para buscar las cadenas de carácteres no deseadas.. Una vez filtrado el PROCMAIL lo deja continuar hacia su destino. -- Salutacions - Saludos, Josep M. Queralt
On 04/04/07, Josep M. Queralt
que significa que si alguien mete en el texto una referencia camuflada a la palabra "mail" de esa forma, le daré medio punto de spam.
lo que pasa es que la orden es que cualquier correo que sea, tanto valido o no valido deben ir a una cuenta de cuarentena,, pero el tema es que este filtro solo debe ser aplicable a los correos que ingresan y no a los que se envian entre mis usuarios.
Es que con PROCMAIL era mucho más fácil y queda integrado perfectamente en SA.
No entiendo porque te has querido complicar la vida de esta manera. :-(
Con dos reglas lo tenías resuelto. La primera para separar interno de externo y la segunda para buscar las cadenas de carácteres no deseadas..
Una vez filtrado el PROCMAIL lo deja continuar hacia su destino.
Podrias por favor darme mas informacion de como hago esto..? no se nada de procmail ni como se integra con postfix, te agradeceria me enviaras algun link o algun ejemplo que tengas sobre como hacer esto, mientras tanto voy a buscar al respecto. Saludos y gracias 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
On 04/04/07, Juan Carlos Bravo Celis
On 04/04/07, Josep M. Queralt
wrote: que significa que si alguien mete en el texto una referencia camuflada a la palabra "mail" de esa forma, le daré medio punto de spam.
lo que pasa es que la orden es que cualquier correo que sea, tanto valido o no valido deben ir a una cuenta de cuarentena,, pero el tema es que este filtro solo debe ser aplicable a los correos que ingresan y no a los que se envian entre mis usuarios.
Es que con PROCMAIL era mucho más fácil y queda integrado perfectamente en SA.
No entiendo porque te has querido complicar la vida de esta manera. :-(
Con dos reglas lo tenías resuelto. La primera para separar interno de externo y la segunda para buscar las cadenas de carácteres no deseadas..
Una vez filtrado el PROCMAIL lo deja continuar hacia su destino.
Podrias por favor darme mas informacion de como hago esto..? no se nada de procmail ni como se integra con postfix, te agradeceria me enviaras algun link o algun ejemplo que tengas sobre como hacer esto, mientras tanto voy a buscar al respecto.
con un rapido vistazo, encontre que procmail es algo parecido al amavis-new,, la configuracion que yo tengo es postfix + amavis-new +spassassin +clamav +cyrus se puede hacer el filtro que menciona Josep con amavis..? sabe alguien como hacerlo..? 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
Podrias por favor darme mas informacion de como hago esto..? no se nada de procmail ni como se integra con postfix, te agradeceria me enviaras algun link o algun ejemplo que tengas sobre como hacer esto, mientras tanto voy a buscar al respecto.
Desde consola "man procmail" :-) Sip, ya está instalado en el sistema por defecto. En Postfix creo que hay que añadirle la orden mailbox_command = /usr/bin/procmail Procmail es, a mi entender, fundamentalmente un filtro de correo que puede funcionar a nivel del servidor de correo y a nivel de cada usuario localmente. La única diferencia entre ambas configuraciones (compatibles) radica en el lugar donde se pone el fichero con las reglas de filtrado Un tutorial muy directo lo tienes en: http://pegasus.rutgers.edu/~elflord/unix/procmail.html Ten en cuenta que la primera regla que debe contener es la llamada a SpamAssassin.
Saludos y gracias
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
-- Salutacions - Saludos, Josep M. Queralt
Podrias por favor darme mas informacion de como hago esto..? no se nada de procmail ni como se integra con postfix, te agradeceria me enviaras algun link o algun ejemplo que tengas sobre como hacer esto, mientras tanto voy a buscar al respecto.
Se me olvidaba. Para usarlo en el servidor a nivel global hay que crear el fichero con las reglas en el directorio /etc. Sería: /etc/procmailrc (sin atributo de oculto) Mientras que para cada usuario sería: $HOME/.procmailrc (con el atrubuto de oculto) Fíjate que en el primer caso se ejecuta con privilegios de "root". En el fichero procmailrc la primera orden tiene que ser llamar al SA. :0fw | /usr/bin/spamassassin O, en recuerdo de Carlos ya que ese tema ya salió en la lista hace muchas lunas: :0fw | /usr/bin/spamd (creo que era así) En cuanto a las demás reglas date una vuelta por el Google ya que hay muchas páginas de ejemplos. También puedes pasarte por el principio http://www.procmail.org/ y el "man" que ya te decía en otro mensaje. -- Salutacions - Saludos, Josep M. Queralt
On 04/04/07, Josep M. Queralt
Podrias por favor darme mas informacion de como hago esto..? no se nada de procmail ni como se integra con postfix, te agradeceria me enviaras algun link o algun ejemplo que tengas sobre como hacer esto, mientras tanto voy a buscar al respecto.
Se me olvidaba. Para usarlo en el servidor a nivel global hay que crear el fichero con las reglas en el directorio /etc.
Sería: /etc/procmailrc (sin atributo de oculto)
Mientras que para cada usuario sería: $HOME/.procmailrc (con el atrubuto de oculto)
Fíjate que en el primer caso se ejecuta con privilegios de "root".
En el fichero procmailrc la primera orden tiene que ser llamar al SA.
:0fw | /usr/bin/spamassassin
O, en recuerdo de Carlos ya que ese tema ya salió en la lista hace muchas lunas:
:0fw | /usr/bin/spamd
(creo que era así)
En cuanto a las demás reglas date una vuelta por el Google ya que hay muchas páginas de ejemplos.
También puedes pasarte por el principio http://www.procmail.org/ y el "man" que ya te decía en otro mensaje.
Ok Josep, gracias por la informacion, ya lo estoy revisando. otras dudas que se me presentan son: - cuando pongo a nivel de todo el servidor, tambien hay que poner el archivo .forward en el home de cada usuario..? -no tiene nada que ver que este usando cyrus..? -aparte de realizar la llamada al spamassassin es necesario configurar algo en el archivo local de spamassassin..? estoy viendo un ejemplo en http://bulma.net/body.phtml?nIdNoticia=1562 que opinas de lo que se habla en el comentario 6 perdon por hacer tantas preguntas, comprenderan que el tiempo esta jugando en mi contra con todos los correos en una cuenta de cuarentena y sin poder reenviarlos con exito.. Saludos y gracias 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
- cuando pongo a nivel de todo el servidor, tambien hay que poner el archivo .forward en el home de cada usuario..?
No. Simplemente el fichero ".procmailrc" con las reglas en el directorio raiz del usuario. Si ".procmailrc" no existe, no filtra. (Tampoco lo hace el SA)
-no tiene nada que ver que este usando cyrus..?
No, cyrus es para la autentificación.
-aparte de realizar la llamada al spamassassin es necesario configurar algo en el archivo local de spamassassin..?
No, porque la secuencia es Postfixt->PROCMAIL->SA Recuerda que SA es la primera regla debería ejecutar Procmail y lo que hace es precisamente ejecutarlo.
estoy viendo un ejemplo en http://bulma.net/body.phtml?nIdNoticia=1562 que opinas de lo que se habla en el comentario 6
Que es un ejemplo un pelín complicado de un fichero procmailrc. :-) Efectivamente puedes usar comandos del sistema como en el ejemplo "egrep" o también "formail" y otros para aumentar la potencia del filttrado Las líneas que empiezan por "#" no se ejecutan. Si se usara /dev/null borrarias directamente los mensajes. El ejemplo es muy variado, porque da una idea muy aproximada de todo lo que se puede hacer. También se puede enviar correo de rechazo .... :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 /etc/rejected.txt) | $SENDMAIL -t :0: /dev/null } Este ejemplo manda a la basura los correos con ejecutables enviando una respuesta de rechazo El texto estaría en "rejected.txt" en el directorio /etc. Si lo mandara un usuario en lugar de /etc sería $HOME. Fíjate que aquí se usa formail y cat para generar la respuesta y se añade una cabecera X-Loop para evitar un bucle infinito.
perdon por hacer tantas preguntas, comprenderan que el tiempo esta jugando en mi contra con todos los correos en una cuenta de cuarentena y sin poder reenviarlos con exito..
Cuando acabes vete de vacaciones. :-) -- Salutacions - Saludos, Josep M. Queralt
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2007-04-04 a las 17:23 -0500, Juan Carlos Bravo Celis escribió:
Ok Josep, gracias por la informacion, ya lo estoy revisando. otras dudas que se me presentan son:
- cuando pongo a nivel de todo el servidor, tambien hay que poner el archivo .forward en el home de cada usuario..?
No.
-no tiene nada que ver que este usando cyrus..?
Si.
-aparte de realizar la llamada al spamassassin es necesario configurar algo en el archivo local de spamassassin..?
Depende.
estoy viendo un ejemplo en http://bulma.net/body.phtml?nIdNoticia=1562 que opinas de lo que se habla en el comentario 6
Yo nunca usaría procmail para eso. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFGFDCotTMYHG2NR9URAhRFAJ9fttpINuT8PzipavExwax1NEBqzACff/K8 AABYcplW97vLruomHPekcRs= =8B2a -----END PGP SIGNATURE-----
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 El 2007-04-04 a las 15:00 -0500, Juan Carlos Bravo Celis escribió:
Es mejor que te lo curres en el spamassassin. Por ejemplo, en "/etc/mail/spamassassin/20_MyPhrases.cf" tengo:
lo que pasa es que la orden es que cualquier correo que sea, tanto valido o no valido deben ir a una cuenta de cuarentena,, pero el tema es que este filtro solo debe ser aplicable a los correos que ingresan y no a los que se envian entre mis usuarios.
El spamassassin sólo actua con la entrada. Puede actuar llamado mediante amavis-new, que entiendo ya lo tienes puesto, luego no tienes que cambiar nada más. En mi opinión, lo mejor es jugar con las reglas del SA y olvidarse de sistemas de todo o nada como una regla en procmail o en postfix, y menos con esto. Date cuenta que si pones una regla para que tire a la basura cualquier correo que mencione a "http://basura", simplemente tus correos a nosotros sobre ese tema irían también a la basura... eso es muy drástico. Ya que tienes amavis-new, que usa a spamassassin, usa el sistema que tiene de puntuaciones para valorar los grises.
Vaya dolor de cabeza esto, pero la orden es esa, ya revise que tengo en /etc/mail/spamassassin/ y solo veo el archivo locol y nada mas, y si creo ese archivo que mencionas, en que parte del local hay que decirle que lo use..?
Lo creas sin más ni más. Si tuvieras que hacer algo más ya te lo hubiera dicho :-p
tambien estuve viendo si el amavis lo hace, pero otra vez estoy contra el tiempo, mientras tanto la cuenta de cuarentena esta que se llena increiblemente, y me estoy soplando el dia en reeviarlo a sus destinatarios, y muchas veces sin exito...
Bueno... que quieres que te diga... en esto tendrías que ser tú el que mandase. Y las prisas son muy malas. La gestión de la cuarentena es otra historia, pero en efecto, una de las opciones del amavis es mandar los correos peligrosos a otro sitio. En mi opinión, lo mejor es ponerles a cada usuario una carpeta de "posible spam" y meterles ahí el correo sucio. Que se encarguen ellos de borrarlo. De hecho, yo me cabreo si en una cuenta de correo el sistema me borra correos porque crea que son spam o por lo que sea. Mi correo es mío, nadie tiene derecho a borrarmelo. Fíjate en gmail... así es como se hacen bien las cosas. - -- Saludos Carlos E.R. -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.5 (GNU/Linux) Comment: Made with pgp4pine 1.76 iD8DBQFGFCzLtTMYHG2NR9URAjMpAJ996DXhExe/DUs+Qe+zohlOZKvYSgCeMP4V 5q1eWkNqrWNv76Ykqtb/kuY= =3rHZ -----END PGP SIGNATURE-----
participants (3)
-
Carlos E. R.
-
Josep M. Queralt
-
Juan Carlos Bravo Celis