miércoles, 16 de enero de 2013

Chuleta avanzada iptables


#!/bin/bash
#Borrar todas las reglas
iptables -F

#Politica general.Cerramos todo.Dejamos entrar y salir lo solicitado
iptables -P INPUT DROP
iptables -P OUTPUT ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT

###OTRAS PROTECCIONES####

# Quitamos los pings.
/bin/echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_all

# No respondemos a los broadcast.
/bin/echo "1" > /proc/sys/net/ipv4/icmp_echo_ignore_broadcasts

# Para evitar el spoofing nos aseguramos de que la dirección
# origen del paquete viene del sitio correcto.
for interface in /proc/sys/net/ipv4/conf/*/rp_filter; do
/bin/echo "1" > ${interface}
done

# Los ICMPs redirigidos que pueden alterar la tabla de rutas.
for interface in /proc/sys/net/ipv4/conf/*/accept_redirects; do
/bin/echo "0" > ${interface}
done

# No guardamos registros de los marcianos.
/bin/echo "1" > /proc/sys/net/ipv4/conf/all/log_martians

# Asegurar, aunque no tenga soporte el nucleo, q no hay forward.
/bin/echo "0" > /proc/sys/net/ipv4/ip_forward

###Reglas de los puertos####

# A nuestra IP le dejamos todo <-- reemplaza los ceros por tu #num de IP
iptables -A INPUT -s 000.000.000.000 -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

# Azureus <-- pon el puerto correcto de tu azureus o cualquier otro torrent client
/sbin/iptables -A INPUT -p tcp -m tcp --dport 22875 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -m tcp --sport 22875 -j ACCEPT

# Abrimos los puertos del amule <-- pon el puerto de amule
/sbin/iptables -A INPUT -p tcp -m tcp --dport 7662 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -m tcp --sport 7662 -j ACCEPT

/sbin/iptables -A INPUT -p tcp -m tcp --dport 7665 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -m tcp --sport 7665 -j ACCEPT

/sbin/iptables -A INPUT -p tcp -m tcp --dport 7672 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -m tcp --sport 7672 -j ACCEPT

# Ahora para el amsn
/sbin/iptables -A INPUT -p tcp -m tcp --dport 6891:6895 -j ACCEPT
/sbin/iptables -A OUTPUT -p tcp -m tcp --sport 6891:6895 -j ACCEPT


# Permitimos que se conecten a nuestro servidor web.

#iptables -A INPUT -m state --state NEW -p TCP --dport 80 -j ACCEPT

#Abrimos ssh a la red.
#iptables -A INPUT -s 172.26.0.3 -p TCP --dport 22 -j ACCEPT
#iptables -A INPUT -s 172.26.0.4 -p TCP --dport 22 -j ACCEPT
#iptables -A INPUT -s 172.26.0.5 -p TCP --dport 22 -j ACCEPT

#iptables -A INPUT -p TCP --dport 22 -j ACCEPT

# Permitimos la comunicación con el servidor dns
iptables -A INPUT -p UDP --dport 53 -j ACCEPT
iptables -A INPUT -p TCP --dport 53 -j ACCEPT

#Permitimos uso de ftp.
#iptables -A INPUT -p TCP --dport 21 -j ACCEPT

#Permitimos acceso pop3.
#iptables -A INPUT -p TCP --dport 110 -j ACCEPT

# Permitimos uso de smtp
#iptables -A INPUT -p TCP --dport 25 -j ACCEPT

#Permitimos acceso imap.
#iptables -A INPUT -p TCP --dport 143 -j ACCEPT
#iptables -A INPUT -p UDP --dport 143 -j ACCEPT

#Permitimos todo el trafico de la LAN
#iptables -A INPUT -s 0.0.0.0 -j ACCEPT
#iptables -A INPUT -s 0.0.0.0 -j ACCEPT
#iptables -A INPUT -s 0.0.0.0 -j ACCEPT

#Dejamos a localhost, para mysql, etc..
iptables -A INPUT -i lo -j ACCEPT

No hay comentarios:

Publicar un comentario