Escolar Documentos
Profissional Documentos
Cultura Documentos
Muchas de las acciones que se listan abajo requieren ejecutarse como usuario root.
Los siguientes comandos deberían funcionar en cualquier distro linux moderna.
Esto NO es un tutorial de como configurar iptables. Puedes ver un tutorial aquí. Es más bien una referencia rápida de los comandos
más comunes de iptables.
iptables -L -n -v
Ejemplos de salidas:
El resultado de arriba indica que el firewall no está activo. La siguiente salida es la del firewall activado:
Donde,
iptables -n -L -v --line-numbers
Salida:
Podemos usar los números de línea para borrar o añadir nuevas reglas al firewall.
iptables -L INPUT -n -v
iptables -L OUTPUT -n -v --line-numbers
También se puede usar propio comando iptables para detenerlo y borrar todas las reglas.
iptables -F
iptables -X
iptables -t nat -F
iptables -t nat -X
iptables -t mangle -F
iptables -t mangle -X
iptables -P INPUT ACCEPT
iptables -P OUTPUT ACCEPT
iptables -P FORWARD ACCEPT
Donde:
Obtendrendremos la lista de IPs. Miramos el número de la izquierda y lo usamos para borrarla. Por ejemplo para borrar la línea 4:
iptables -D INPUT 4
Salida:
Salida:
Para borrar todos los paquetes entrantes / enviados pero permitir el tráfico saliente:
host -t a cyberciti.biz
Salida:
Una vez conocida la dirección ip, bloqueamos todo el tráfico saliente para dicha ip así:
host -t a www.facebook.com
Salida:
Salida:
CIDR: 69.171.224.0/19
tail -f /var/log/messages
grep --color 'IP SPOOF' /var/log/messages
iptables -A INPUT -i eth1 -s 10.0.0.0/8 -m limit --limit 5/m --limit-burst 7 -j LOG --log-prefix "IP_SPOOF A: "
iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP
## open cups (printing service) udp/tcp port 631 for LAN users ##
iptables -A INPUT -s 192.168.1.0/24 -p udp -m udp --dport 631 -j ACCEPT
iptables -A INPUT -s 192.168.1.0/24 -p tcp -m tcp --dport 631 -j ACCEPT
## allow time sync via NTP for lan users (open udp port 123) ##
iptables -A INPUT -s 192.168.1.0/24 -m state --state NEW -p udp --dport 123 -j ACCEPT
donde:
man iptables
netstat -tulpn
Es recomendable instalarse un sniffer como tcpdupm y ngrep para probar la configuración de nuestro firewall.
Conclusión
Esta entrada solo lista las reglas básicas para los usuarios nuevos en linux. Se pueden crear reglas más complejas. Requiere una buena
comprensión de TCP/IP, tunning del kernel linux via sysctl.conf y un buen conocimiento de nuestra configuración.
sudo su
iptables -F
iptables -t nat -F
iptables -t mangle -F
iptables -X
b)b. Configura la máquina para que sólo se pueda acceder desde ella a las webs http://www.google.es y http://www.iesgoya.com y a ninguna
otra.
iptables -A OUTPUT -d http://www.google.es -j ACCEPT
iptables -A OUTPUT -d http://www.iesgoya.com -j ACCEPT
iptables -A OUTPUT -p tcp –dport 80 -j DROP # Mas exigente –> iptables -A OUTPUT -p all -j DROP
##como google tiene muchas IPs puede que tengamos un problema para ello realizamos lo siguiente antes de la regla EXIGENTE:
iptables -D OUTPUT 5
c)c. Cierra todos los puertos bien conocidos menos los necesarios para acceder a estas dos webs.
d)d. Investiga de qué forma podrías hacer que las peticiones entrantes a tu máquina virtual al puerto 81 por http vayan mediante NAT al
puerto 80 de la máquina local (arranca WAMP para comprobar que funciona).
Arrancamos wamp en la maquina fisica y comprobamos que accedemos a wamp desde localhost.
Comprobamos que podemos acceder desde la maquina virtual y se encuentra cortado
e)e. Permite sólo los mensajes entrantes desde la IP del compañero de tu máquina física (prueba desde otro sitio para ver si funciona).
f) #Activa el log sobre todas las reglas y verifica que se anotan los mensajes.
gedit /etc/rsyslog.d/50-default.conf
#E incluimos al final:
kern.warning /var/log/iptables.log