El uso de cortafuegos para la protección de sistemas es una de las principales medidas de seguridad que se establecen en el mundo informatico-tecnologico. En el Software Libre, sobre todo en GNU/Linux existe una inmensa variedad de herramientas que permiten realizar las funciones de un cortafuego (o FireWall), dentro de ellas estan Uncomplicated Firewall (UFW) que viene por defecto en Ubuntu, SuSeFirewall que viene dentro de OpenSuse pero toda la gama Suse lo lleva y otros como el que veremos hoy Iptables que viene por defecto en Centos, Debian y otras distribuciones. Una lista mas extensa puede ser encontrada en un excelente articulo publicado en The geek stuff sobre los 5 principales cortafuegos en Linux.
iptables es un programa que permite el filtrado de paquetes para IPv4, permite la traduccion de direcciones y traslación de puertos. Cuando iptables recibe un paquete puede aceptarlo, rechazarlo, eliminarlo o mantenerlo en cola según las reglas que establezcamos.
La configuración de iptables se hace a través de reglas, las mismas deben ser escritas utilizando una sintaxis establecida, pero pueden interpretarse como si establacieramos una regla común. Por ejemplo, la política por defecto es denegar todas las conexiones entrantes, escrito en una regla quedaría
-A INPUT -j REJECT
Si lo que queremos es restringir las entradas a una determinada interfaz de red como por ejemplo el eth0 la regla quedaría:
-A INPUT -i eth0 -j REJECT
Veamos cuales son las partes que conforman las reglas. La opción -A o –append adiciona una regla, específicando a que lista se adiciona, que puede ser de entrada, salida o reenvío. La segunda opción -i permite establecer sobre que interfaz se aplicará la regla y la opción -j la acción a realizar que puede ser aceptar, denegar, o rechazarlo.
Las opciones comunes para usar en iptables son:
- -A ó –append para agregar una nueva regla.
- -i ó –in-interface para establecer la interfaz de red de entrada
- -o ó –out-interface para establecer la interfaz de red de salida
- -s ó –source para establecer la subred o IP para el cual se va a cumplir la regla
- -p ó –proto para establecer el protocolo para el cual se va a cumplir la regla
- -j ó –jump para especificar la acción a realizar con el paquete que cumpla con la regla.
- –dport para establecer el puerto para el cual se va a cumplir la regla.
¿Dónde se escriben las reglas?
Donde escribir las reglas para el iptables varía en dependencia del sistema. Por ejemplo en Centos el archivo donde escribir las reglas es /etc/sysconfig/iptables, en Debian y derivados se puede modificar el archivo /etc/init.d/iptables, pero el proceso para hacerlo no es así. Las reglas se escriben en un archivo cualquiera pero que empiece con *filter y termine con un COMMIT como por ejemplo este:
*filter
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp --dport 80 -s 10.0.0.0
/8
-j ACCEPT
-A INPUT -j REJECT
-A OUTPUT -j ACCEPT
COMMIT
Despues con el comando iptables-restore especificamos el archivo que contiene las reglas
iptables-restore <
/etc/reglas-iptables
.rules
Podemos comprobar las reglas usando el comando:
iptables -L
Para guardar las reglas en otro archivo se puede utilizar el comando iptables-save, especificando donde se van a guardar las reglas
iptables-save >
/etciptables-up
.rules
Esto no quiere decir que se ejecutará cuando inicie el sistema, para ello debemos crear un fichero dentro del directorio /etc/network/if-pre-up.d/y en su contenido poner
#!/bin/bash
/sbin/iptables-restore
<
/etc/iptables
.up.rules
Ya con esto garantizamos que las reglas que establecimos se apliquen cuando inicie el sistema. De esta forma queda protegido el sistema filtrando los paquetes y decidiendo que hacer con ellos.
Algo muy importante y en lo que si somos muy celosos en GUTL, tratar de no copiar y se se copie referenciar los articulos…. @KairOS mira esto
https://humanos.uci.cu/2014/05/entrevistas-a-henry-y-deivi-en-el-espacio-enterate/#comment-54988
Brother, trata de referenciar cada articulo que publiques aca… Mira, yo mismo a veces me copio cosas aca que he publicado yo mismo en SWL-X y nunca dejo de referenciarlo no vaya a ser que un dia me de por demandarme a mi mismo
el problema maikel fue q eso o hable directamente con osiel…de todas maneras se a lo que te refieres…no obstante ya hablare con ale…
estuve unos dias fuera porque me opere de la mano…imaginate el trabajo que estoy pasando pa escribir…ademas que fue de mi mano d la q me opere…por eso casi no hago nada de mi autoria…y tomo otros post d interes «con el permiso de los autores» y lo edito