informatica
Linux contiene utilidades avanzadas para filtrado de paquetes, el proceso de controlar los paquetes de red cuando entran, se mueven o salen de su sistema dentro del kernel. Los kernels anteriores al 2.4 trabajaban con ipchains para efectuar el filtrado de paquetes y usaban listas de reglas que se aplicaban a los paquetes en cada paso del proceso de filtrado. Lapresentación del kernel 2.4 trajo consigo iptables (también llamado netfilter), que es parecido a ipchains pero con mejoras en el funcionamiento y en el control disponible a la hora de filtrar paquetes.
Este capítulo se centra en las bases del filtrado esencial de paquetes, define las diferencias entre ipchains e iptables, explica las diferentes opciones disponibles con comandos iptables, ymuestra cómo las reglas de filtrado se pueden conservar tras el reinicio del sistema.
Si necesita instrucciones para construir reglas de iptables o para configurar un firewall basado en estas reglas, consulte la sección de nombre Recursos adicionales para más información.
Advertencia
El mecanismo predeterminado del firewall en la versión 2.4 del kernel puede usar el comando iptables, perono se puede usar si ya se está ejecutando ipchains. Si ipchains está presente durante el arranque, el kernel avisará que hay un error y no podrá arrancar iptables.
Estos errores no afectan la funcionalidad del comando ipchains.
Filtrado de paquetes
El tráfico se mueve a través de una red en paquetes. Un paquete de red es una colección de datos en diferentes tamaños y formatos. Para enviar unfichero por red, el ordenador emisor debe en primer lugar partirlo en diferentes paquetes usando las reglas del protocolo de red. Cada uno de estos paquetes contiene una parte pequeña de los datos del fichero. Cuando recibe la transmisión, el ordenador receptor reensambla los paquetes y construye de nuevo el fichero el fichero.
Cada paquete contiene información que le ayuda a navegar por la red ymoverse hacia su destino. El paquete puede decirle a los ordenadores a lo largo del camino, así como al ordenador destino, de dónde viene, a dónde va, qué tipo de paquete es, y otras muchas cosas más. La mayoría de los paquetes se diseñan para transportar datos, pero algunos protocolos pueden usar los paquetes de forma especial. El protocolo Transmission Control Protocol (TCP), por ejemplo,utiliza un paquete SYN, que no contiene datos, para iniciar la comunicación entre dos sistemas.
El kernel de Linux contiene la característica interna de filtrado de paquetes, que le permite aceptar algunos de ellos en el sistema mientras que intercepta y para a otros. El filtro de red kernel 2.4 tiene tres tablas internas o listas de reglas. Son las siguientes:
filtro — ésta es la tabla por defectopara manejar paquetes de red.
nat — ésta tabla se usa para alterar paquetes que crean una nueva conexión.
mangle — Esta tabla se usa tipos específicos de alteración de paquetes.
Cada una de estas tablas tiene un grupo de cadenas internas que corresponden a las acciones llevadas a cabo por el filtro de red en el paquete.
Las cadenas internas para la tabla filtro son las siguientes:
INPUT— Esta cadena sirve solo para paquetes recibidos por medio de una interfaz de red.
OUTPUT — Esta cadena sirve para paquetes enviados por medio de la misma interfaz de red que recibió los paquetes.
FORWARD — Esta cadena sirve para paquetes recibidos en una interfaz de red y enviados en otra.
Las cadenas internas para la tabla nat son las siguientes:
PREROUTING — Esta cadena altera paquetesrecibidos por medio de una interfaz de red cuando llegan.
OUTPUT — Esta cadena altera paquetes generados localmente antes de que sean dirigidos por medio de una interfaz de red.
POSTROUTING — Esta cadena altera paquetes antes de que sean enviados por medio de una interfaz de red.
Las cadenas internas para la tabla mangle son las siguientes:
PREROUTING — Esta cadena altera paquetes...
Regístrate para leer el documento completo.