Межсетевой экран IMetfilter

Linux давно уже имеет возможность фильтрации пакетов, и сама эта ОС появилась, как только появились понятия «мощность» и «гибкость». Первое поколение программного кода фильтрации пакетов называлось ipfw (сокращение от IP firewall) и обеспечивало базовые возможности фильтрации. Из-за того что программа ipfw перестала соответствовать все более делающимся конфигурациям, в настоящее время она используется очень редко. Программа второго  поколения IP-фильтрации называлась IP chains. Она является значительно усовершенствованной ipfw и по-прежнему находит широкое применение. Программа новейшего поколения называется Netfilter. Она управляется командой iptables, используется исключительно с 2.4.x и последующими версиями ядра. Хотя Netfilter является компонентом ядра, a iptables — средством настройки пользователя, эти два понятия зачастую используются для обозначения одного и того же процесса.
Важной концепцией Netfilter является цепочка, которая состоит из списков правил, применяемых к пакетам, когда они вводятся в систему, проходят по ней или покидают ее. Ядро определяет три цепочки, используемые по умолчанию, но имеется возможность определять новые цепочки правил и связывать их с ранее определенными цепочками. Цепочка INPUT применяется к пакетам, получаемым локальной системой или предназначенным для нее. Цепочка OUTPUT применяется к пакетам, передаваемым локальной системой. И наконец, цепочка FORWARD применяется всякий раз, когда пакет переправляется системой из одного сетевого интерфейса (сетевого адаптера) в другой, когда система выполняет роль маршрутизатора пакетов или шлюза, а также во всех случаях, когда пакеты не исходят из этой системы и не предназначены ей.
Команда iptables используется для внесения изменений в цепочки и наборы правил Netfilter. Можно создать новую цепь, удалить существующую цепь или список правил в цепи, подавить цепь (то есть удалить все правила в цепи), а также установить для цепочки действие по умолчанию. Iptables также позволяет добавлять правила в цепочку, удалять и заменять их.