Comandos frecuentes IPTables
Comandos frecuentes iptables
-- Ver las reglas actuales
iptables -L
-- Archivo de scripts para iptables
/etc/sysconfig/iptables
--reiniciar iptables
service iptables restart
--Bloquear un host específico iptables
iptables -I INPUT -s 192.168.16.8 -j DROP
--Permitir acceso a un puerto específico e IPs específicas, bloquear el resto
iptables -A INPUT -p tcp --destination-port 22 -m iprange --src-range 192.168.16.100 -j ACCEPT
-- Permitir acceso a un puerto en especifico
iptables -A INPUT -p tcp --destination-port 22 -m iprange --src-range 192.168.16.100 -j ACCEPT
-- Permitir acceso a puerto 80 abrir puerto 80
iptables -A INPUT -p tcp -m tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 80 -m conntrack --ctstate NEW,ESTABLISHED -j ACCEPT iptables -A OUTPUT -p tcp --sport 80 -m conntrack --ctstate ESTABLISHED -j ACCEP
Despues de agregar la politica reiniciar el servicio "service iptables restart" y probar
--src-range puede ser representado como 192.168.16.100-192.168.16.200
-- Digamos que deseas hacer permitir que un cliente se conecte al servidor FTP pero solo por un momento o una descarga tienes que modificar tus filtros de iptables de la siguiente forma: (lo mismo aplicaría para otro protocolo SSH puerto 21, http puerto 80, etc)
Permitir momentáneamente una IP para que acceda al servidor FTP
/sbin/iptables -I INPUT -s 200.52.66.116/32 -p tcp --dport 21 -j ACCEPT
-- listar reglas por número
iptables -L --line-numbers
--Para borrarla después de las pruebas
/sbin/iptables -t filter -D INPUT 1 /sbin/iptables -D INPUT 1
-- Bloquear una IP
iptables -A INPUT -s 61.216.2.15 -j DROP iptables -A OUTPUT -d 61.216.2.15 -j DROP
-- guardar permanentemente las reglas iptables para ubuntu
apt-get install iptables-persistent
Después de instalarlo es posible guardar y recargar las reglas con:
sudo /etc/init.d/iptables-persistent save sudo /etc/init.d/iptables-persistent reload
Para guardarlas de forma más manual
1. sudo su 2. iptables-save > /etc/iptables.rules 3. In /etc/network/if-pre-up.d/iptables,put:
Restaurar tablas
#!/bin/sh iptables-restore < /etc/iptables.rules exit 0
4. Después en /etc/network/if-post-down.d/iptables, pon:
#!/bin/sh iptables-save -c > /etc/iptables.rules if [ -f /etc/iptables.rules ]; then iptables-restore < /etc/iptables.rules fi exit 0
5. Dale permisos a los scripts:
sudo chmod +x /etc/network/if-post-down.d/iptables sudo chmod +x /etc/network/if-pre-up.d/iptables