.

Breaking News
recent

-

Ejemplos IPtables (Lectura Exteeensa)



Si sos fiaca para la lectura este no es tu post



netfilter es un conjunto de hooks dentro del kernel de Linux que permite a los módulos del núcleo registrar las funciones de devolución de llamadas con la pila de red. Una función de devolución de llamadas registradas entonces se llamó de nuevo para cada paquete que atraviese el hooks correspondiente dentro de la pila de red.

Este firewall basado en Linux está controlada por el programa llamado iptables para el filtrado para IPv4 e ip6tables. Recomiendo que primero leas este tutorial rápido que explica cómo configurar un firewall basado en host llamado Netfilter (iptables) en CentOS / RHEL / Fedora / Red Hat Enterprise Linux. Este post muestra las listas más comunes de iptables con las soluciones requeridas por un nuevo usuario de Linux que quiera asegurar su sistema operativo Linux de intrusos.

#1 Iptables Las reglas de ejemplo:
•La mayor parte de las acciones enumeradas en este post están escritos con la suposición de que será ejecutado por el usuario root o cualquier otro con usuario con privilegios. No escriba los comandos en un sistema remoto, ya que desconecte el acceso.
•Para propósito de la demostración que he usado Red Hat Enterprise Linux 6.x, pero el siguiente comando debería funcionar con cualquier distribución de Linux moderna.
•Esto no es un tutorial sobre cómo configurar iptables. Se trata de una hoja de trucos rápido a los comandos comunes de iptables.



Escribe el siguiente comando como root:

iptables -L -n -v


Salidas de la muestra:

Chain INPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
Chain FORWARD (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
Chain OUTPUT (policy ACCEPT 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination



Por encima de la producción indica que el firewall no está activa. 
El siguiente ejemplo muestra un firewall activo:


Escribe el siguiente comando como root:

iptables -L -n -v


Chain INPUT (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           state INVALID
  394 43586 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
   93 17292 ACCEPT     all  --  br0    *       0.0.0.0/0            0.0.0.0/0
    1   142 ACCEPT     all  --  lo     *       0.0.0.0/0            0.0.0.0/0
Chain FORWARD (policy DROP 0 packets, 0 bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 ACCEPT     all  --  br0    br0     0.0.0.0/0            0.0.0.0/0
    0     0 DROP       all  --  *      *       0.0.0.0/0            0.0.0.0/0           state INVALID
    0     0 TCPMSS     tcp  --  *      *       0.0.0.0/0            0.0.0.0/0           tcp flags:0x06/0x02 TCPMSS clamp to PMTU
    0     0 ACCEPT     all  --  *      *       0.0.0.0/0            0.0.0.0/0           state RELATED,ESTABLISHED
    0     0 wanin      all  --  vlan2  *       0.0.0.0/0            0.0.0.0/0
    0     0 wanout     all  --  *      vlan2   0.0.0.0/0            0.0.0.0/0
    0     0 ACCEPT     all  --  br0    *       0.0.0.0/0            0.0.0.0/0
Chain OUTPUT (policy ACCEPT 425 packets, 113K bytes)
 pkts bytes target     prot opt in     out     source               destination
Chain wanin (1 references)
 pkts bytes target     prot opt in     out     source               destination
Chain wanout (1 references)
 pkts bytes target     prot opt in     out     source               destination



Cuando,

-L: Lista de reglas.
-V: Muestra información detallada. Esta opción hace que el comando de la lista muestra el nombre de la interfaz, las opciones de la regla, y las máscaras TOS. Los contadores de bytes y de paquetes también están en la lista, con 'K' el sufijo 'M' o 'G' para 1000, 1.000.000 y multiplicadores de 1,000,000,000, respectivamente.
-N: la dirección IP y el puerto de visualización en formato numérico. No utilizar DNS para resolver nombres. Esto acelerará la lista.


Para inspeccionar firewall con los números de línea escribe:

iptables -n -L -v --line-numbers



Salidas de la muestra:

Chain INPUT (policy DROP)
num target prot opt source destination
1 DROP all -- 0.0.0.0/0 0.0.0.0/0 state INVALID
2 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
4 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
Chain FORWARD (policy DROP)
num target prot opt source destination
1 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
2 DROP all -- 0.0.0.0/0 0.0.0.0/0 state INVALID
3 TCPMSS tcp -- 0.0.0.0/0 0.0.0.0/0 tcp flags:0x06/0x02 TCPMSS clamp to PMTU
4 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state RELATED,ESTABLISHED
5 wanin all -- 0.0.0.0/0 0.0.0.0/0
6 wanout all -- 0.0.0.0/0 0.0.0.0/0
7 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0
Chain OUTPUT (policy ACCEPT)
num target prot opt source destination
Chain wanin (1 references)
num target prot opt source destination
Chain wanout (1 references)
num target prot opt source destination



Puede utilizar los números de línea para eliminar o insertar nuevas reglas en el cortafuegos.


Para mostrar los datos o de reglas de salida de cadena, escribe:

iptables -L INPUT -n -viptables -L OUTPUT -n -v --line-numbers



# 2: Detener / iniciar / reiniciar el servidor de seguridad
Si utiliza CentOS / Linux Red Hat Enterprise Linux / Fedora, escriba:

service iptables stopservice iptables startservice iptables restart



Puede utilizar el comando iptables sí mismo para detener el firewall y eliminar 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 ACCEPTCuando,

•-F: La eliminación (rubor) todas las reglas.
•-X: Eliminar la cadena.
•-T table_name: mesa de selección (llamado nat o mangle) y borrar / normas de descarga.
•-P: Establece la política por defecto (como DROP, REJECT, o aceptar).

#3: Eliminar reglas de Firewall
Para mostrar el número de línea junto con otra información por las normas existentes, entre:

iptables -L INPUT -n --line-numbers iptables -L OUTPUT -n --line-numbers iptables -L OUTPUT -n --line-numbers | less iptables -L OUTPUT -n --line-numbers | grep 202.54.1.1



Recibirás la lista de IP. Mira el número de la izquierda, a continuación, utilizar el número para eliminarlo. Por ejemplo, borrar el número de línea 4, escribe:


iptables -D INPUT 4O buscar IP de origen 202.54.1.1



y eliminar del dominio:

iptables -D INPUT -s 202.54.1.1 -j DROP



Cuando,

-D: Eliminar una o más reglas de la cadena seleccionada

# 4: Coloque las reglas del cortafuegos
Para insertar una o más reglas en la cadena seleccionado como el número de la regla dada, utilice la siguiente sintaxis. En primer lugar saber los números de línea, escriba:

Iptables-L INPUT-n - line-numbers



Salidas de la muestra:

Chain INPUT (policy DROP)
num target prot opt source destination
1 DROP all -- 202.54.1.1 0.0.0.0/0
2 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state NEW,ESTABLISHED



Para insertar la regla entre el 1 y 2, escribe:

iptables -I INPUT 2 -s 202.54.1.2 -j DROP



Para ver las reglas actualizadas, escribe:

iptables -L INPUT -n --line-numbers



Salidas de la muestra:

Chain INPUT (policy DROP)
num target prot opt source destination
1 DROP all -- 202.54.1.1 0.0.0.0/0
2 DROP all -- 202.54.1.2 0.0.0.0/0
3 ACCEPT all -- 0.0.0.0/0 0.0.0.0/0 state NEW,ESTABLISHED



# 5: Guardar las reglas del cortafuegos
Para guardar las reglas de firewall en CentOS / RHEL / Fedora Linux, escriba:

service iptables save



En este ejemplo, colocar un IP y guarda las reglas de firewall:

iptables -A INPUT -s 202.5.4.1 -j DROP service iptables save



Para el resto de distros utilizar el comando iptables-save: iptables-save > /root/my.active.firewall.rules cat /root/my.active.firewall.rules

# 6: Reglas de restaurar el cortafuegos
Para restaurar las reglas del cortafuegos formar un archivo llamado / root / my.active.firewall.rules, escriba:

iptables-restore < /root/my.active.firewall.rules



Para restaurar las reglas del firewall en CentOS / RHEL / Fedora Linux, escriba:

service iptables restart


# 7: Establecer las políticas de firewall por defecto

Para eliminar todo el tráfico:


iptables -P INPUT DROP # iptables -P OUTPUT DROP iptables -P FORWARD DROPiptables -L -v -n
#### you will not able to connect anywhere as all traffic is dropped ###
# ping cyberciti.biz wget http://www.kernel.org/pub/linux/kernel/v3.0/testing/linux-3.2-rc5.tar.bz2



Sólo a bloquear el tráfico entrante
Para eliminar todos los paquetes entrantes / enviado, pero permitir el tráfico saliente, escriba:

iptables -P INPUT DROP iptables -P FORWARD DROP iptables -P OUTPUT ACCEPT iptables -A INPUT -m state --state NEW,ESTABLISHED -j ACCEPTiptables -L -v -n
### *** now ping and wget should work *** ###
# ping cyberciti.biz wget http://www.kernel.org/pub/linux/kernel/v3.0/testing/linux-3.2-rc5.tar.bz2



# 8: Caída de direcciones de red privada En la interfaz pública
IP spoofing no es más que para detener a los siguientes rangos de direcciones IPv4 para redes privadas en sus interfaces públicas. Los paquetes con direcciones de origen no se pueden enrutar debe ser rechazado con la siguiente sintaxis:

iptables -A INPUT -i eth1 -s 192.168.0.0/24 -j DROP iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP



Rangos de direcciones IPv4 para redes privadas (asegúrese de que se bloquean en la interfaz pública)
[quote]•10.0.0.0/8 -j (A)
•172.16.0.0/12 (B)
•192.168.0.0/16 (C)
•224.0.0.0/4 (MULTICAST D)
•240.0.0.0/5 (E)
•127.0.0.0/8 (LOOPBACK)
[/quote]

# 9: El bloqueo de una dirección IP (direcciones IP bloqueadas)

Para bloquear una dirección IP atacantes llamados 1.2.3.4, escriba:

iptables -A INPUT -s 1.2.3.4 -j DROP# iptables -A INPUT -s 192.168.0.0/24 -j DROP



# 10: bloquear las solicitudes de puertos entrantes (BLOQUE DE PUERTO)
Para bloquear todas las solicitudes de servicio en el puerto 80, escriba:

iptables -A INPUT -p tcp --dport 80 -j DROP iptables -A INPUT -i eth1 -p tcp --dport 80 -j DROP



Para bloquear el puerto 80 sólo para una dirección IP 1.2.3.4, escriba:

iptables -A INPUT -p tcp -s 1.2.3.4 --dport 80 -j DROP iptables -A INPUT -i eth1 -p tcp -s 192.168.1.0/24 --dport 80 -j DROP



# 11: Bloque de direcciones IP de salida
Para bloquear el tráfico saliente a un host en particular o de dominio, como cyberciti.biz, escriba: # host -ta cyberciti.biz
Salidas de la muestra:

cyberciti.biz tiene la dirección 75.126.153.206 Anota su dirección IP y escribe lo siguiente para bloquear todo el tráfico saliente a 75.126.153.206:

iptables -A OUTPUT -d 75.126.153.206 -j DROP



Puede utilizar una subred de la siguiente manera:

iptables -A OUTPUT -d 192.168.1.0/24 -j DROP iptables -A OUTPUT -o eth1 -d 192.168.1.0/24 -j DROP


Ejemplo – Bloque de dominio Facebook.com
En primer lugar, saber todas las direcciones ip de facebook.com, escriba:

host -ta www.facebook.com



Salidas de la muestra:

www.facebook.com tiene la dirección 69.171.228.40



Buscar CIDR para 69.171.228.40, escribe:

whois 69.171.228.40 | grep CIDR



Salidas de la muestra:

CIDR: 69.171.224.0/19



Para prevenir el acceso externo a www.facebook.com, escribe:

iptables -A OUTPUT -p tcp -d 69.171.224.0/19 -j DROP

También puede usar el nombre de dominio, escribe:

iptables -A OUTPUT -p tcp -d www.facebook.com -j DROP iptables -A OUTPUT -p tcp -d facebook.com -j DROP



# 12: Los paquetes de registro y soltar
Escriba lo siguiente para iniciar la sesión y bloquear el IP spoofing en la interfaz pública denominada eth1

iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j LOG --log-prefix "IP_SPOOF A: " iptables -A INPUT -i eth1 -s 10.0.0.0/8 -j DROP



Por defecto todo lo que se registra en / var / log / messages.

tail -f /var/log/messages grep --color 'IP SPOOF' /var/log/messages



# 13: registrar y descartar paquetes con un número limitado de entradas de registro
El módulo M-límite puede limitar el número de entradas de registro creadas por el tiempo. Esto se utiliza para prevenir la inundación de su archivo de registro. Para registrar y descartar la suplantación por 5 minutos, en ráfagas de más de 7 entradas.

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





Conclusión:
Este mensaje sólo una lista de reglas básicas para los nuevos usuarios de Linux. Puedes crear y construir reglas más complejas. Esto requiere una comprensión adecuada de TCP / IP, optimización del kernel de Linux a través de sysctl.conf, y un buen conocimiento de su propia configuración.









No hay comentarios:

Publicar un comentario

-

Con la tecnología de Blogger.