Evitar spam en los emails de nuestra web
Escrito por Cyrus_

Publicado: 30/01/2005
   Actualizado: 30/01/2005
      

Evitar spam en los emails de nuestra web

Introducción

En un principio, cuando apareció el correo electrónico, se protegió mucho el que nadie pudiera leer correos sin autentificación, pero a nadie le importaba que se pudieses mandar correos sin esta autorización, de forma que no era necesario un login y un password para mandar correo, total ¿que problema hay en que manden un correo desde mi servidor?.

Mail-bombers: esta técnica se basa en enviar muchos muchos correos, desde uno o varios servidores, de tal forma que cuando la otra persona quiera leerlos, tenga la cuenta saturada, y haga difícil la eliminación de los mensajes. A día de hoy, esto se usa ya muy poco, cualquier servidor detecta estos ataques, ya que llaman mucho la atención.

Spam: El es spam es el envío de publicidad no deseada, en resumen, un spammer, recoge direcciones de correo de muchas formas posibles, de las webs sobre todo, y manda e-mails a esas cuentas. Esto que parece una tontería, es un problema gravísimo, ya que en los servidores grandes de correo, se registran unas tasas de spam del 80% o mas, lo que hace que haya que buscar medidas para cortar esta fuente de basura.

Etc..

Mi web, ¿es segura?

La razón de que sea importante que protejamos las webs frente a spamers, es que así la gente que ponga sus direcciones en nuestra pagina, no se vera abordado de correo-basura.

Lo que tenemos que conseguir en que en el código fuente de nuestras paginas, no salga [email protected], ya que eso es justo lo que los spamers buscan, así que haya que ingeniárselas para que eso no aparezca. Hay algunas soluciones:

1) No escribir el carácter arroba, o no ponerlo en su lugar, de esta forma, no tendrá la dirección buena, sino otra falsa, ejemplo:

dirección correcta: [email protected]

falsa: lopez ARROBA terra PUNTO es

falsa: lopez [email protected] terra PUNTO es

falsa: lopez - terra - es

falsa: lopez @ terra . es

Cualquier forma que se nos ocurra sirve, siempre que no salga la dirección real.

Esto tiene un inconveniente, y es el siguiente: La mayoría de la gente no sabe mucho de informática, y no les gustan los cambios nada, ellos estan acostumbrados a tener un link, pinchar, y que se les abra automaticamente el outlook express, pero con esta solución eso no va a suceder, porque no es un link, es solo un texto, asi que lo que tiene que hacer es abrir él el outlook, darle a crear mensaje nuevo y meter la dirección de correo que ha visto en la página. Puede parecer una bobada, pero mucha gente tal vez porque no sepa, tal vez por pereza, pasaran de muestra página de largo, en ese caso nuestra página no ha sido útil.

2) Otra forma seria crear un código con javascript de tal forma que la linea <a href="mailto:......"> se cree dinámicamente, y no estáticamente. Para esto se usa document.write, que como no usa id ni nada, no hay problemas por los navegadores, el único problema que puede haber es que el usuario tenga desactivado el javascript, que aunque no es muy normal, puede ocurrir. En este caso no vería ningún link, pero tampoco daría ningún error, siempre que se pongan comentarios <!-- --> dentro del script.

Si se usa en la pagina asp, php, jsp, psp o cualquier tipo de paginas dinámicas, se puede introducir una funciona para que sea mucho mas fácil de hacer. ahora pongo un ejemplo de como podría ser en php:

esto seria un archivo encriptar_mail.inc, de forma que en las paginas que usen mails, se incluya este código con <?include (ruta)?>

// ******************************************************************

// ** EJEMPLO **

// ** echo encriptar_mail('[email protected]','texto a mostrar'); **

// ******************************************************************

function encriptar_mail($id_mail='[email protected]_server.es',$texto_mostrar='')

{

$array_mail=explode('@',$id_mail);

$id_user=$array_mail[0];

$id_server=$array_mail[1];

echo

" <script type='text/javascript'>

<!--

function encrypt_mail()

{

var cry0,cry1,cry2,cry3,cry4,cry5,cry6,cry7,cry8,cry9;

cry1='<a href=\"mai';

cry2='$id_user';

cry3='\">';

cry1+='lto:';

cry2+='@';

cry5='</a>';

cry6='$texto_mostrar';

cry2+='$id_server';

if (cry6) cry4=cry6;

else cry4=cry2 ;

document.write(cry1+cry2+cry3+cry4+cry5);

}

encrypt_mail();

-->

</script>";

}

?>

Autor: Cyrus_

Mail: cyrusnimda [email protected] terra PUNTO es