Spam y "open proxy";al parecer mi servidor de correo esta siendo usado para spam

Forums: 

Hola,

hasta el dia de hoy tuve mi servidor de correo funcionando bien; pero me notifico el ISP que iba a bloquear mi puerto SMTP (25) porque estaban recibiendo reporte de spamcop de que se estaba generando spam desde el servidor. Este es el primer encabezado por el cual se marca a mi IP como spammer: (sustituyo mi ip real por 1.2.3.4):

[ SpamCop V640 ]
This message is brief for your comfort. Please use links below for details.

Email from 1.2.3.4 / 24 Jul 2007 01:08:24 -0000
http://www.spamcop.net/w3m?i=z2401337274z70727a0de09f8b50b38a034ee74edb4fz
1.2.3.4 is open proxy, see: http://www.spamcop.net/mky-proxies.html

y luego se desglozan los mails enviados con contenido spam y las bandejas a donde salio. Por lo que veo el problema es un proxy abierto. Me gustaría saber que directivas debo cambiar o incluir tanto en la configuracion de apache como en la configuracion de squid para evitar este problema; resulta que este servidor tiene 3 funciones: 1. es el servidor web de la pagina de la empresa 2. es el servidor de correo de la empresa y 3. es el servidor proxy transparente de internet para las PCs de la empresa. Estuve viendo el link que incuyó spamcop sobre los proxies en la sección para apache pero tengo duda acerca de cual implementar pues quiero que el sitio pueda seguir siendo visitado y que la red de la empresa pueda seguir saliendo a internet de forma normal. Y bueno tambien ver que tengo que añadir a squid en caso que fuera problema por squid(es mejor proteger ambos flancos, nunca se sabe).

Gracias por cualquier ayuda.

Seguramente no tienes declarado quien va a usar tu proxy server

Imagen de juandarcy2000

Trate de traducirte lo mas que pude de este documento, mi ingles no es tan bueno es muy tecnico pero creo que bastara para que veas por donde tienes el problema
si quieres ver la info original miralo aqui

proxy server.
en squid tienes las listas de control de acceso.
Para un spammer solo con usar el metodo CONNECT generalmente toma el hostname y el puerto como argumento. ej CONNECT myproxy.example.com:80 HTTP/1.0

Observa este ejemplo de coneccion:
Aqui el proxy esta correctamente configurado.


>> $ telnet tudominio.com 8080
<<< Trying 200.10.10.12...
<<< Connected to 200.10.10.12
<<< Escape character is '^]'.
>>> CONNECT 200.10.10.12:25 HTTP/1.0
>>>
<<< HTTP/1.0 403 Forbidden
<<< Server: Squid/2.4.STABLE4
<<< Mime-Version: 1.0
<<< Date: Tue, 15 Oct 2002 00:24:57 GMT
<<< Content-Type: text/html
<<< Content-Length: 696
<<< Expires: Tue, 15 Oct 2002 00:24:57 GMT
<<< X-Squid-Error: ERR_ACCESS_DENIED 0
<<< X-Cache: MISS from 200.10.10.12
<<< Proxy-Connection: close

.
. HTML Cut for clarity.
.

<<< Connection closed by foreign host.
<<< $

aqui un servidor proxy mal configurado y por lo tanto abierto.


>>> $ telnet tudominio 8080
<<< Trying 200.10.10.12...
<<< Connected to tudominio.com.
<<< Escape character is '^]'.
>>> CONNECT smtp.tudominio.com:25 HTTP/1.0
>>>
<<< HTTP/1.0 200 Connection established
<<<
<<< 220 tudominio.com ESMTP Sendmail 8.9.3/8.9.3; Tue, 15 Oct 2002 10:46:23 (GMT)
>>> QUIT
<<< 221 tudominio.com closing connection
<<< Connection closed by foreign host.
<<< $

como puedes observar se a conectado al servidor de correos sendmail, si el servidor de correo es cuidadosamente escogido este metodo puede comprometer las reglas anti-relay de cualquier compania de correos incluso si el servidor de correos es cuidadosamente administrador.
En este caso el programa cache SQUID fue usado afortunadamente este programa por defecto biene asegurado pero hay algunos administradores que no tienen ni idea de lo que tocan y lo comprometen enormente.

Creo que ya matamos el 50%

Imagen de luiyirockero

Creo que ya matamos el 50% del problema,

chequé el documento este y definitivamente tenia algo mal en squid...tenia un http_acces allow all debajo del deny all y encima de eso el deny all estaba comentado :O :jawdrop: alguno de los administradores debio trastear todo porque los demas servidores estan como los puse...

bien ahora, sabes sobre como chequear el mod_proxy para esto del open proxy atraves del apache? para verificar si no hay algun agujero por ahi tambien ?

gracias por tu ayuda.

proxys abiertos

Imagen de acl

Lo que yo haria como primera cosa con los proxys es simplemente permitir conexion a sus puertos (cadena de INPUT) solamente desde la red privada y negar cualquier otra cosa.

En lo que se refiere a apache, verifica las directivas de access y order dentro del contexto del proxy. Todo esta en el sitio de apache.org, pero basicamente deberias tener algo similar a:

Order Deny,Allow
Deny from all
Allow from 192.168.0