Problemas con iptables + thunderbird [solucionado]

Iniciado por dato000, 7 Agosto 2012, 17:56 PM

0 Miembros y 1 Visitante están viendo este tema.

dato000

Bueno, después de un rato buscando y mirando algunas soluciones, encontre una que finalmente me funciono

dejo la configuración enterita por si hay gente que necesita dejar un blindaje completo con iptables, dejando funcionando el thunderbird, que usa sendmail, POP3/POP3S, IMAP/IMAP2/IMAPS, SMTP, y hasta le deje funcionando el ICMP para hacer pings a otras maquinas, y con un bonito seguro para los ataques DDoS, ahora todo funciona perfecto y me siento bien segurito.

Citar
#!/bin/sh
## SCRIPT de IPTABLES - ejemplo del manual de iptables
## Ejemplo de script para proteger la propia máquina con DROP por defecto
## Pello Xabier Altadill Izura
## www.pello.info - pello@pello.info
## MODIFICADO POR dato000

echo -n Aplicando Reglas de Firewall...

## FLUSH de reglas
iptables -F
iptables -X
iptables -Z
iptables -t nat -F

## Establecemos politica por defecto: DROP
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

## Empezamos a filtrar? no! empezamos a abrir! porque ahora esta TODO denegado.
## Debemos decir de manera explicita qué es lo que queremos abrir

# Operar en localhost sin limitaciones
/sbin/iptables -A INPUT -i lo -j ACCEPT
/sbin/iptables -A OUTPUT -o lo -j ACCEPT

# A nuestra IP le dejamos todo
iptables -A INPUT -s 195.168.0.5 -j ACCEPT
iptables -A OUTPUT -d 195.168.0.5 -j ACCEPT

# Este es el servicio que DA la maquina a internet, por tanto todo paquete entrante se acepta para
# ese puerto y los salientes vinculados se aceptan.
/sbin/iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -m tcp --sport 80 -m state --state RELATED,ESTABLISHED -j ACCEPT

# Permitimos que la maquina pueda salir a la web
/sbin/iptables -A INPUT -p tcp -m tcp --sport 80 -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -m tcp --dport 80 -j ACCEPT

# Ya tambien a webs seguras
/sbin/iptables -A INPUT -p tcp -m tcp --sport 443 -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -m tcp --dport 443 -j ACCEPT

# Reglas necesarias para FTP pasivo y activo. Se permiten conexiones entrantes YA establecidas
/sbin/iptables -A INPUT -p tcp -m tcp --sport 20:21 -m state --state RELATED,ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -m tcp --dport 20:21 -j ACCEPT
/sbin/iptables -A INPUT -p tcp -m tcp --sport 1024:65535 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -m tcp --dport 1024:65535 -m state --state NEW,RELATED,ESTABLISHED -j ACCEPT

# Permitimos la consulta a un primer DNS
/sbin/iptables -A INPUT -s 200.75.51.132 -p udp -m udp --sport 53 -j ACCEPT
/sbin/iptables -A OUTPUT -d 200.75.51.132 -p udp -m udp --dport 53 -j ACCEPT

# Permitimos la consulta a un segundo DNS
/sbin/iptables -A INPUT -s 200.75.51.133 -p udp -m udp --sport 53 -j ACCEPT
/sbin/iptables -A OUTPUT -d 200.75.51.133 -p udp -m udp --dport 53 -j ACCEPT

#Permitimos que nos hagan ping y responder a este:
/sbin/iptables -A INPUT -p ICMP --icmp-type 8 -m limit --limit 1/s -j ACCEPT
/sbin/iptables -A OUTPUT -p ICMP --icmp-type 0 -m limit --limit 1/s -j ACCEPT

#Permitimos hacer ping a otras maquinas
/sbin/iptables -A INPUT -i eth0 -p icmp -m icmp --icmp-type 8 -j ACCEPT
/sbin/iptables -A OUTPUT -o eth0 -p icmp -m icmp --icmp-type 8 -j ACCEPT
/sbin/iptables -A INPUT -i wlan0 -p icmp -m icmp --icmp-type 8 -j ACCEPT
/sbin/iptables -A OUTPUT -o wlan0 -p icmp -m icmp --icmp-type 8 -j ACCEPT

/sbin/iptables -A OUTPUT -o wlan0 -p ICMP --icmp-type 0 -j ACCEPT
/sbin/iptables -A OUTPUT -o eth0 -p ICMP --icmp-type 8 -j ACCEPT
/sbin/iptables -A INPUT -i wlan0 -p ICMP --icmp-type 0 -m limit --limit 10/s -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p ICMP --icmp-type 8 -m limit --limit 1/s -j ACCEPT

##Permitir SSH
#para eth0, conexión cableada
/sbin/iptables -A OUTPUT -o eth0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A INPUT -i eth0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
/sbin/iptables -t nat -A PREROUTING -p tcp -d 195.168.0.5 --dport 422 -j DNAT --to 195.168.0.5:22
/sbin/iptables -A INPUT -i eth0 -p tcp --dport 422 -m state --state NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -o eth0 -p tcp --sport 422 -m state --state ESTABLISHED -j ACCEPT

#para wlan0, conexión inalambrica
/sbin/iptables -A OUTPUT -o wlan0 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A INPUT -i wlan0 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT
/sbin/iptables -t nat -A PREROUTING -p tcp -d 195.168.0.5 --dport 422 -j DNAT --to 195.168.0.5:22
/sbin/iptables -A INPUT -i wlan0 -p tcp --dport 422 -m state --state NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -o wlan0 -p tcp --sport 422 -m state --state ESTABLISHED -j ACCEPT

##Configuración para thunderbird
##Configuración de SMTP
#Hotmail
/sbin/iptables -A OUTPUT -p tcp --sport 1024:65535 -d 0/0 --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A INPUT -p tcp --sport 25 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --sport 1024:65535 -d 0/0 --dport 587 -m state --state NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A INPUT -p tcp --sport 587 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT

#Gmail
/sbin/iptables -A OUTPUT -p tcp --sport 1024:65535 -d 0/0 --dport 465 -m state --state NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A INPUT -p tcp --sport 465 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT

##Configuración Recepción de Correos
#Hotmail - POP3/POP3S
/sbin/iptables -A INPUT -p tcp --sport 995 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --sport 1024:65535 -d 0/0 --dport 995 -m state --state NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A INPUT -p tcp --sport 110 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --sport 1024:65535 -d 0/0 --dport 110 -m state --state NEW,ESTABLISHED -j ACCEPT

#Gmail - IMAP/IMAP2/IMAPS
/sbin/iptables -A INPUT -p tcp --sport 993 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --sport 1024:65535 -d 0/0 --dport 993 -m state --state NEW,ESTABLISHED -j ACCEPT
/sbin/iptables -A INPUT -p tcp --sport 143 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --sport 1024:65535 -d 0/0 --dport 143 -m state --state NEW,ESTABLISHED -j ACCEPT

#Sendmail
/sbin/iptables -A INPUT -p tcp --sport 25 --dport 1024:65535 -m state --state ESTABLISHED -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp --sport 1024:65535 -d 0/0 --dport 25 -m state --state NEW,ESTABLISHED -j ACCEPT


##DDoS
#The following iptables rule will help you prevent the Denial of Service (DoS) attack on your webserver.
#La siguiente regla  de iptables ayudara a prevenir el ataque de denegación de servicio en tu servidor.
iptables -A INPUT -p tcp --dport 80 -m limit --limit 25/minute --limit-burst 100 -j ACCEPT

# Barrera de backup por si cambiamos a modo ACCEPT temporalmente
# Con esto protegemos los puertos reservados y otros well-known
#/sbin/iptables -A INPUT -p tcp -m tcp --dport 1:1024 -j DROP
#/sbin/iptables -A INPUT -p udp -m udp --dport 1:1024 -j DROP
/sbin/iptables -A INPUT -p tcp -m tcp --dport 1723 -j DROP
/sbin/iptables -A INPUT -p tcp -m tcp --dport 3306 -j DROP
/sbin/iptables -A INPUT -p tcp -m tcp --dport 5432 -j DROP

echo " OK . Verifique que lo que se aplica con: iptables -L -n"

# Fin del script

Creo que la clave era abrir un número determinado de puertos para la entrada de paquetes tcp, en lo que vi, se abrian desde el 1024 hasta el puerto 65535 (1024:65535), no se que tan bien estara, pero creo que va bien la cosa. Asignando un Input y un Output determinando hacia donde tenia que salir, con un parametro dport y sport que hacian el filtrado, o así es como lo veo, aún sigo investigando.

Que bien se siente que uno sea capaz de hacer estas cosas, se siente muy bien, capto un bonito olor, huele a victoria.



Jenag

CitarQue bien se siente que uno sea capaz de hacer estas cosas, se siente muy bien, capto un bonito olor, huele a victoria.
Me alegro dato000 que te sientas así y yo misma tomaré o estudiaré de tu post para adquirir conocimientos cómo tú.Pués cómo todo hay cosas que desconozco , gracias por tu aporte. :-*
Para comentarme algo : Evamr1991@openmailbox.org : Válido para Bots y Robots..

dato000

naaaaaa al contrario fue por vos  :silbar: :silbar: :silbar: :silbar: :silbar: por la parte de seguridad, al menos al nivel escritorio ya estoy seguro hasta nuevo llamado. Los tutos que dejaste fueron excelentes, dejalos por aqui por si alguien más esta interesado.

voy a identificar caracteristicas para explicarlas luego.



marybal

Holaaa....me pueden ayudar, tambien tengo un problema al configurar un correo en thunderbird, pero lo raro es que si me funciona pero solo a veces y si no sale el siguiente mensaje.
CitarOcurrió un erro al enviar: el servidor de correo envio un saludo incorrecto: Cannot connect to SMTP server 190.152.124.162  (190.152.124.162:25), connect error 10060

Con hotmail si funciona bien, el que no funciona a veces es un correo configuracon con sendmail.


dato000

Ummm el puerto predeterminado para conectar por smtp es el 25, tu firewall debe estar bloqueando la conexión saliente, seguro puedes revisar correo (POP3 o IMAP que funcionan por otros puertos) pero el puerto debe estar cerrado por tu firewall.

Usas iptables o un software, algún antivirus??



marybal

Si tengo iptables de linux, tambien antivirus, el problema esq solo a veces me sale ese error, tengo configurado correos entrantes IMAP puerto 147 y saliente SMTP puero 587....y funciona pero envio unos 5 mails...y ya sale ese error.

dato000

intentaste con mi script, lo hice especialmente para que trabajara con los puertos por defecto de thunderbird, ese antivirus cual es, tiene su propio firewall??

Solo funciona después de 5 correos enviados???? o.O que raro, de verdad, no habia visto eso nunca. Probaste a reinstalar thunderbird??



marybal

En el servidor que salgo a internet si tengo firewall, pero le cuento que ahora estaba viendo y el firewalll de windows ha estado desactivado, volvi a configurar hasta aqui esta funcionando, espero q haya sido por eso, gracias por responder...

dato000

Cita de: marybal en 22 Enero 2013, 21:29 PM
En el servidor que salgo a internet si tengo firewall, pero le cuento que ahora estaba viendo y el firewalll de windows ha estado desactivado, volvi a configurar hasta aqui esta funcionando, espero q haya sido por eso, gracias por responder...

tu servidor??? tu router??? o usas proxy???

uyy no creo que sea eso del proxy, porque hacer correr thunderbird en proxy es algo más complicado, maldita sea, siempre recuerdo del fucking proxy de la universidad, que solo deja operar outlook (maldita araña esa de outlook, no es más que un nido de virus) y me restringe de todo, hacer correr tor y ftp como clientes es francamente con ese proxy, pero pude y es un logro  :silbar: :silbar: bueno puro diciendo  :) :)



marybal

El problema es solo cuando configuro desde windows thunderbird, pero por squirrelmail si envio y recibo normalmente, pero como no se puede dar formato al texto esq quiero cambiar a thunderbird.

Si tengo servidor proxy en centos.