ОсновныекомпонентысистемыNetfilter — КиберПедия 

Папиллярные узоры пальцев рук - маркер спортивных способностей: дерматоглифические признаки формируются на 3-5 месяце беременности, не изменяются в течение жизни...

Поперечные профили набережных и береговой полосы: На городских территориях берегоукрепление проектируют с учетом технических и экономических требований, но особое значение придают эстетическим...

ОсновныекомпонентысистемыNetfilter

2022-10-10 15
ОсновныекомпонентысистемыNetfilter 0.00 из 5.00 0 оценок
Заказать работу

МЭ в ОС Linux представляет собой совокупность программных ком-понентов в ядре ОС и набора утилит, которые работают в пространствепользователя.

Принцип работы МЭ заключается в том, что при прохождении паке-том сетевого стека ОС в определенных точках, которые в Netfilter называ-ются ловушками (hooks), он подвергается анализу и обработке в соответ-ствии с правилами (rules), заданными администратором системы. В каждойловушке может быть зарегистрировано несколько функций-обработчиков,которые вызываются в порядке, определенным специальным параметром,задающимприоритет.Существуетпятьосновных ловушек:

- NF_IP_PRE_ROUTING. Компоненты ядра, зарегистрировавшие об-работчик в настоящей ловушке, получают уведомление о пакете сразу, кактолько пакет принимается сетевым интерфейсом. Обработчики срабаты-ваютдо того,какпринимаетсярешениео маршрутизациипакета;

- NF_IP_LOCAL_IN. Настоящая ловушка позволяет компонентам яд-ра зарегистрировать обработчик и получать уведомления о пакетах, кото-рые предназначены локальномухосту, тоестьпрограммам,работающимна нем (локальным приложениям). Обработка происходит после того, какприняторешение омаршрутизации пакета;

- NF_IP_FORWARD. Настоящаяловушкапозволяеткомпонентамядра зарегистрировать обработчик и получать уведомления о пакетах, ко-торые поступили локальному хосту, но предназначены другому хосту (этовозможно, если локальный хост выступает в качестве маршрутизатора, тоесть имеет несколько сетевых интерфейсов и передает пакеты между сетя-ми). Обработка происходит после того, как принято решение о маршрути-зациипакета;

- NF_IP_LOCAL_OUT. Компоненты ядра, зарегистрировавшие обра-ботчик в настоящей ловушке, получают уведомление о пакете сразу, кактолько пакет поступает всетевой стек локальногохоста от локальногоприложения, то есть отправляется в сеть локальной программой. Обработ-чики срабатывают до того, как принимается решение о маршрутизации па-кета;

- NF_IP_POST_ROUTING. Настоящая ловушка позволяет компонен-там ядра зарегистрировать обработчик и получать уведомления об исхо-дящих пакетах (сгенерированных локальными приложениями или прохо-дящими через хост) перед тем, как они будут отправлены в сеть. Обработ-капроисходитпослетого,какприняторешениеомаршрутизациипакета.


Правила обработки пакетов объединяются в цепочки (chains), которыевNetfilter могутбытьдвухвидов:

- базовые, или встроенные (built-in), которые существуют в системепоумолчаниюинемогутбытьудалены;

- пользовательские (user-defined), которые администратор может со-здаватьиудалять.

Цепочки размещаются в таблицах (tables), которые можно условносчитатькомпонентамиядра,регистрирующимисявловушках.Таблицыобъединяют правила по смыслу, то есть по типу операций, выполняемых спакетом. Например, правила, которые связаны с трансляцией сетевых ад-ресов, могут быть размещены только в таблице nat, а правила, с помощьюкоторых принимается решение, пропускать пакет дальше или нет, могутбыть размещены в таблице filter. Упрощенно говоря, от того, в какую таб-лицу добавлено правило, зависит, что будет сделано с пакетом, а от того, вкакую цепочку — когда. Базовые цепочки присутствуют в нескольких таб-лицах.

Существуютследующиебазовыецепочки(обратитевнимание,чтоименацепочек записываются вверхнемрегистре):

- PREROUTING. Правила срабатывают при вызове обработчика, за-регистрированноговловушкеNF_IP_PRE_ROUTING;

- INPUT. Правила срабатывают при вызове обработчика, зарегистри-рованного вловушке NF_IP_LOCAL_IN;

- FORWARD. Правила срабатывают при вызове обработчика, зареги-стрированного вловушкеNF_IP_FORWARD;

- OUTPUT. Правила срабатывают при вызове обработчика, зареги-стрированного вловушкеNF_IP_LOCAL_OUT;

- POSTROUTING. Правила срабатывают при вызове обработчика, за-регистрированноговловушкеNF_IP_POST_ROUTING.

Пользовательские цепочки создаются администратором и могут при-сутствовать только в одной таблице. Таким цепочкам рекомендуется да-вать имена, с помощью которых их легко отличить от базовых цепочек(есливверхнемрегистре,тосопределеннымпрефиксом,например,USER_MARK или USER_CHECK). С помощью специальных правил пере-ходов пользовательские цепочки встраиваются в базовые цепочки. Базовыецепочкитакжеимеют действиепоумолчанию (defaultpolicy),котороеприменяется к пакетам, которые не были обработаны ни одним правилом вбазовой цепочке или правилами в пользовательских цепочках, вызванныхизбазовой.

Таблицы хранят правила базовых и пользовательских цепочек, объ-единенныхобщимфункциональнымназначением.Существуютследую-щие таблицы (обратите внимание, что имена таблиц записываются в ниж-немрегистре):


- filter — таблица, предназначенная для размещения правил, с помо-щью которых выполняются проверки атрибутов пакета и его принадлеж-ности к соединению и принятие решения относительно дальнейшего про-движенияпакета;

- nat — таблица, предназначенная для размещения правил, управля-ющихпроцессом трансляции сетевыхадресов;

- mangle — таблица, предназначенная для размещения правил, мо-дифицирующих пакет или его атрибуты (например, какие-либо поля заго-ловкаIP-пакета),атакжепозволяющихдобавитьспециальнуюметку(mark) к пакету, с помощью которой его можно идентифицировать в дру-гих таблицахили компонентахядра;

- raw — таблица, предназначенная для размещения правил, позво-ляющих выполнить некоторые операции с пакетом в обход системы от-слеживаниясоединений (conntrack);

- rawpost — таблица, предназначенная для размещения правил под-мены адреса источника в обход системы отслеживания соединений. Насто-ящаятаблицастановитсядоступнойпослеустановкипакетаxtables-addons.

- security — таблица, предназначенная для размещения правил, поз-воляющих установить отметку контекста безопасности на пакеты или со-единения для дальнейшего использования в рамках подсистемы SELinux.Таблицастановитсядоступнойпослеустановкипакета SELinux.

Сетевой пакет, в зависимости от того, предназначен ли он локальномухосту, сгенерирован им или является транзитным, проходит через опреде-ленный набор базовых цепочек различных таблиц. При прохождении паке-том цепочки к нему последовательно применяются все правила этой це-почки до тех пор, пока не найдется правило, под действие которого пакетподпадет, или не будет достигнут конец базовой цепочки в текущей табли-це.Впоследнем случаекпакетуприменяетсядействиепоумолчанию.

 


Поделиться с друзьями:

Археология об основании Рима: Новые раскопки проясняют и такой острый дискуссионный вопрос, как дата самого возникновения Рима...

Кормораздатчик мобильный электрифицированный: схема и процесс работы устройства...

Особенности сооружения опор в сложных условиях: Сооружение ВЛ в районах с суровыми климатическими и тяжелыми геологическими условиями...

Наброски и зарисовки растений, плодов, цветов: Освоить конструктивное построение структуры дерева через зарисовки отдельных деревьев, группы деревьев...



© cyberpedia.su 2017-2024 - Не является автором материалов. Исключительное право сохранено за автором текста.
Если вы не хотите, чтобы данный материал был у нас на сайте, перейдите по ссылке: Нарушение авторских прав. Мы поможем в написании вашей работы!

0.011 с.