Iptables Tutorial 1.1.19
Шрифт:
Шаг: 10
Таблица: –
Цепочка:–
Примечание: Выходной сетевой интерфейс (например, eth1).
Шаг: 11
Таблица: –
Цепочка:–
Примечание: Кабель (пусть будет LAN).
Как вы можете видеть, пакет проходит несколько этапов, прежде чем он будет передан далее. На каждом из них пакет может быть остановлен, будь то
А теперь рассмотрим порядок движения пакета, предназначенного локальному процессу/приложению:
Таблица 3-2. Для локального приложения
(Шаг – Таблица – Цепочка – Примечание)
Шаг: 1
Таблица: –
Цепочка:–
Примечание: Кабель (т.е. Интернет)
Шаг: 2
Таблица: –
Цепочка:–
Примечание: Входной сетевой интерфейс (например, eth0)
Шаг: 3
Таблица: mangle
Цепочка: PREROUTING
Примечание: Обычно используется для внесения изменений в заголовок пакета, например для установки битов TOS и пр.
Шаг: 4
Таблица: nat
Цепочка: PREROUTING
Примечание: Преобразование адресов (Destination Network Address Translation). Фильтрация пакетов здесь допускается только в исключительных случаях.
Шаг: 5
Таблица: –
Цепочка:–
Примечание: Принятие решения о маршрутизации.
Шаг: 6
Таблица: mangle
Цепочка: INPUT
Примечание: Пакет попадает в цепочку INPUT таблицы mangle. Здесь внесятся изменения в заголовок пакета перед тем как он будет передан локальному приложению.
Шаг: 7
Таблица: filter
Цепочка: INPUT
Примечание: Здесь производится фильтрация входящего трафика. Помните, что все входящие пакеты, адресованные нам, проходят через эту цепочку, независимо от того с какого интерфейса они поступили.
Шаг: 8
Таблица: –
Цепочка:–
Примечание: Локальный
Важно помнить, что на этот раз пакеты идут через цепочку INPUT, а не через FORWARD.
И в заключение мы рассмотрим порядок движения пакетов, созданных локальными процессами.
Таблица 3-3. От локальных процессов
(Шаг – Таблица – Цепочка – Примечание)
Шаг: 1
Таблица: –
Цепочка:–
Примечание: Локальный процесс (т.е., программа-сервер или программа-клиент).
Шаг: 2
Таблица: –
Цепочка:–
Примечание: Принятие решения о маршрутизации. Здесь решается куда пойдет пакет дальше – на какой адрес, через какой сетевой интерфейс и пр.
Шаг: 3
Таблица: mangle
Цепочка: OUTPUT
Примечание: Здесь производится внесение изменений в заголовок пакета. Выполнение фильтрации в этой цепочке может иметь негативные последствия.
Шаг: 4
Таблица: nat
Цепочка: OUTPUT
Примечание: Эта цепочка используется для трансляции сетевых адресов (NAT) в пакетах, исходящих от локальных процессов брандмауэра.
Шаг: 5
Таблица: Filter
Цепочка: OUTPUT
Примечание: Здесь фильтруется исходящий траффик.
Шаг: 6
Таблица: mangle
Цепочка: POSTROUTING
Примечание: Цепочка POSTROUTING таблицы mangle в основном используется для правил, которые должны вносить изменения в заголовок пакета перед тем, как он покинет брандмауэр, но уже после принятия решения о маршрутизации. В эту цепочку попадают все пакеты, как транзитные, так и созданные локальными процессами брандмауэра.
Шаг: 7
Таблица: nat
Цепочка: POSTROUTING
Примечание: Здесь выполняется Source Network Address Translation. Не следует в этой цепочке производить фильтрацию пакетов во избежание нежелательных побочных эффектов. Однако и здесь можно останавливать пакеты, применяя политику по-умолчанию DROP.
Шаг: 8
Таблица:–
Цепочка: –
Примечание: Сетевой интерфейс (например, eth0)