Чтение онлайн

на главную - закладки

Жанры

Iptables Tutorial 1.1.19
Шрифт:

Таблица 6-10. Ключи критерия Mark

(Ключ – Пример – Описание)

Ключ: –mark

Пример: iptables -t mangle -A INPUT -m mark –mark 1

Описание: Критерий производит проверку пакетов, которые были предварительно «помечены». Метки устанавливаются действием MARK, которое мы будем рассматривать ниже. Все пакеты, проходящие через netfilter имеют специальное поле mark. Запомните, что нет никакой возможности передать состояние этого поля вместе с пакетом в сеть. Поле mark является целым беззнаковым, таким образом можно создать не более 4294967296 различных меток. Допускается использовать маску с меткам. В данном случае критерий будет выглядеть подобным образом: –mark 1/1. Если указывается маска, то выполняется логическое AND метки и маски.

6.4.3.4. Критерий Multiport

Расширение multiport позволяет указывать в тексте правила несколько портов и диапазонов портов.

ПРИМЕЧАНИЕ: Вы не сможете использовать стандартную проверку портов и расширение – m multiport (например –sport 1024:63353 -m multiport –dport 21,23,80) одновременно. Подобные правила будут просто отвергаться iptables.

Таблица 6-11. Ключи критерия Multiport

(Ключ – Пример – Описание)

Ключ: –source-port

Пример: iptables -A INPUT -p tcp -m multiport –source-port 22,53,80,110

Описание: Служит для указания списка исходящих портов. С помощью данного критерия можно указать до 15 различных портов. Названия портов в списке должны отделяться друг от друга запятыми, пробелы в списке не допустимы. Данное расширение может использоваться только совместно с критериями – p tcp или – p udp. Главным образом используется как расширенная версия обычного критерия –source-port.

Ключ: –destination-port

Пример: iptables -A INPUT -p tcp -m multiport –destination-port 22,53,80,110

Описание: Служит для указания списка входных портов. Формат задания аргументов полностью аналогичен – m multiport –source-port.

Ключ: –port

Пример: iptables -A INPUT -p tcp -m multiport –port 22,53,80,110

Описание: Данный критерий проверяет как исходящий так и входящий порт пакета. Формат аргументов аналогичен критерию –source-port и –destination-port. Обратите внимание на то что данный критерий проверяет порты обеих направлений, т.е. если вы пишете – m multiport –port 80, то под данный критерий подпадают пакеты, идущие с порта 80 на порт 80.

6.4.3.5. Критерий Owner

Расширение owner предназначено для проверки «владельца» пакета. Изначально данное расширение было написано как пример демонстрации возможностей iptables. Допускается использовать этот критерий только в цепочке OUTPUT. Такое ограничение наложено потому, что на сегодняшний день нет реального механизма передачи информации о «владельце» по сети. Справедливости ради следует отметить, что для некоторых пакетов невозможно определить «владельца» в этой цепочке. К такого рода пакетам относятся различные ICMP responses. Поэтому не следует применять этот критерий к ICMP responses пакетам.

Таблица 6-12. Ключи критерия Owner

(Ключ – Пример – Описание)

Ключ: -uid-owner

Пример: iptables -A OUTPUT -m owner –uid-owner 500

Описание: Производится проверка «владельца» по User ID (UID). Подобного рода проверка может использоваться, к примеру, для блокировки выхода в Интернет отдельных пользователей.

Ключ: –gid-owner

Пример: iptables -A OUTPUT -m owner –gid-owner 0

Описание: Производится проверка «владельца» пакета по Group ID (GID).

Ключ: –pid-owner

Пример: iptables -A OUTPUT -m owner –pid-owner 78

Описание: Производится проверка «владельца» пакета по Process ID (PID). Этот критерий достаточно сложен в использовании, например, если мы хотим позволить передачу пакетов на HTTP порт только от заданного демона, то нам потребуется написать небольшой сценарий, который получает PID процесса (хотя бы через ps) и затем подставляет найденный PID в правила. Пример использования критерия можно найти в Pid-owner.txt.

Ключ: –sid-owner

Пример: iptables -A OUTPUT -m owner –sid-owner 100

Описание: Производится проверка Session ID пакета. Значение SID наследуются дочерними процессами от «родителя», так, например, все процессы HTTPD имеют один и тот же SID (примером таких процессов могут служить HTTPD Apache и Roxen). Пример использования этого критерия можно найти в Sid-owner.txt. Этот сценарий можно запускать по времени для проверки наличия процесса HTTPD, и в случае отсутствия – перезапустить «упавший» процесс, после чего сбросить содержимое цепочки OUTPUT и ввести ее снова.

6.4.3.6. Критерий State

Критерий state используется совместно с кодом трассировки соединений и позволяет нам получать информацию о признаке состояния соединения, что позволяет судить о состоянии соединения, причем даже для таких протоколов как ICMP и UDP. Данное расширение необходимо загружать явно, с помощью ключа – m state. Более подробно механизм определения состояния соединения обсуждается в разделе Механизм определения состояний .

Таблица 6-13. Ключи критерия State

(Ключ – Пример – Описание)

Ключ: –state

Пример: iptables -A INPUT -m state –state RELATED,ESTABLISHED

Описание: Проверяется признак состояния соединения (state) На сегодняшний день можно указывать 4 состояния: INVALID, ESTABLISHED, NEW и RELATED. INVALID подразумевает, что пакет связан с неизвестным потоком или соединением и, возможно содержит ошибку в данных или в заголовке. Состояние ESTABLISHED указывает на то, что пакет принадлежит уже установленному соединению через которое пакеты идут в обеих направлениях. Признак NEW подразумевает, что пакет открывает новое соединение или пакет принадлежит однонаправленному потоку. И наконец, признак RELATED указывает на то что пакет принадлежит уже существующему соединению, но при этом он открывает новое соединение Примером тому может служить передача данных по FTP, или выдача сообщения ICMP об ошибке, которое связано с существующим TCP или UDP соединением. Замечу, что признак NEW это не то же самое, что установленный бит SYN в пакетах TCP, посредством которых открывается новое соединение, и, подобного рода пакеты, могут быть потенциально опасны в случае, когда для защиты сети вы используете один сетевой экран. Более подробно эта проблема рассматривается ниже в главе Механизм определения состояний.

Поделиться:
Популярные книги

Воевода

Ланцов Михаил Алексеевич
5. Помещик
Фантастика:
альтернативная история
5.00
рейтинг книги
Воевода

Неправильный лекарь. Том 4

Измайлов Сергей
4. Неправильный лекарь
Фантастика:
городское фэнтези
попаданцы
альтернативная история
аниме
5.00
рейтинг книги
Неправильный лекарь. Том 4

Кукловод

Злобин Михаил
2. О чем молчат могилы
Фантастика:
боевая фантастика
8.50
рейтинг книги
Кукловод

Я еще не царь

Дрейк Сириус
25. Дорогой барон!
Фантастика:
юмористическое фэнтези
аниме
попаданцы
5.00
рейтинг книги
Я еще не царь

Царь царей

Билик Дмитрий Александрович
9. Бедовый
Фантастика:
фэнтези
мистика
5.00
рейтинг книги
Царь царей

Вернувшийся: Первые шаги. Том II

Vector
2. Вернувшийся
Фантастика:
боевая фантастика
космическая фантастика
рпг
5.00
рейтинг книги
Вернувшийся: Первые шаги. Том II

Локки 4 Потомок бога

Решетов Евгений Валерьевич
4. Локки
Фантастика:
аниме
фэнтези
5.00
рейтинг книги
Локки 4 Потомок бога

Андер Арес

Грехов Тимофей
1. Андер Арес
Фантастика:
рпг
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Андер Арес

Шайтан Иван 4

Тен Эдуард
4. Шайтан Иван
Фантастика:
попаданцы
альтернативная история
8.00
рейтинг книги
Шайтан Иван 4

Мы друг друга не выбирали

Кистяева Марина
1. Мы выбираем...
Любовные романы:
остросюжетные любовные романы
прочие любовные романы
современные любовные романы
5.00
рейтинг книги
Мы друг друга не выбирали

Академия

Сай Ярослав
2. Медорфенов
Фантастика:
юмористическая фантастика
попаданцы
аниме
5.00
рейтинг книги
Академия

Тринадцатый

NikL
1. Видящий смерть
Фантастика:
фэнтези
попаданцы
аниме
6.80
рейтинг книги
Тринадцатый

Неверный

Тоцка Тала
Любовные романы:
современные любовные романы
5.50
рейтинг книги
Неверный

Хозяин Стужи 3

Петров Максим Николаевич
3. Злой Лед
Фантастика:
аниме
фэнтези
попаданцы
7.00
рейтинг книги
Хозяин Стужи 3