Самоучитель
системного администратора

5.1. Фильтрация трафика

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

Демилитаризованная зона

Традиционно существовало понятие демилитаризованной зоны (Demilitarized zone, DMZ), которым обозначали компьютеры, чьи ресурсы должны быть опубликованы в Интернете.

DMZ представляет собой специально организованную подсеть локальной сети, которая отделена межсетевыми экранами как от Интернета, так и от компьютеров локальной сети (рис. 5.2). При такой конфигурации сети злоумышленнику, сумевшему взломать компьютер с опубликованной службой, крайне сложно, если не совсем невозможно получить доступ к другим локальным ресурсам.

DMZ-зону можно создать с использованием двух межсетевых экранов (рис. 5.2, а) или одного, но имеющего три сетевых адаптера (рис. 5.2, б). Второй вариант хотя и несколько дешевле, но более трудоемок в настройке и требует повышенного внимания администратора.

Рис. 5.2.
Варианты создания демилитаризованной зоны: а — с использованием двух межсетевых экранов; б — с использованием одного межсетевого экрана

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

Межсетевой экран (брандмауэр)

Межсетевой экран (МСЭ), или брандмауэр (firewall), — это комплекс технических, программных и организационных мер по безопасному подключению одной сети к другой. В зависимости от решаемых задач и конфиденциальности защищаемой информации это может быть просто небольшая программа, установленная на компьютере, или же специализированные аппаратные средства, реализующие требования конкретной организации.

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

Что может межсетевой экран и чего не стоит от него ожидать?

Межсетевой экран осуществляет фильтрацию как передаваемых данных, так и принимаемой информации. Он позволяет отсечь те пакеты, которые нежелательны для данной сети, и направлять внешний трафик только к назначенным компьютерам. Межсетевые экраны скрывают внутреннюю структуру локальной сети.

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

Учитываемые параметры фильтрации

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

  • открывать или запрещать прохождение данных в зависимости от времени суток и дней недели;
  • разрешать прохождение явно заданных протоколов;
  • фильтровать информацию в зависимости от адреса отправителя/адреса получателя;
  • разрешать передачу данных в зависимости от результатов аутентификации отправителя;
  • фильтровать получение данных в зависимости от содержания информации.

Возможны различные комбинации этих параметров: можно запретить работу с определенным перечнем хостов Интернета некоторому кругу сотрудников в рабочее время или заменить рекламу, формируемую баннерными системами, "пустыми" местами на страницах. В качестве примера на рис. 5.3 представлено окно настройки параметров межсетевого экрана Kerio WinRoute Firewall, в котором определяются ключевые слова, по которым будут блокированы запросы к страницам Интернета.

Рис. 5.3.
Фильтрация контента средствами межсетевого экрана

Кроме того, обычно межсетевые экраны имеют ряд дополнительных сервисных возможностей: позволяют организовать протоколирование работы (учет трафика Интернета по пользователям, адресам, объему и т. п.), выявлять атаки со стороны внешней сети и направлять сообщения об этом администратору для принятия соответствующих мер, управлять используемой полосой доступа в Интернет и т. п.

Варианты организации межсетевых экранов

Все способы фильтрации, применяемые в традиционных межсетевых экранах, условно можно разделить на фильтрацию пакетов и использование шлюзов уровня сессии или уровня приложения. В большинстве случаев реальные системы комбинируют эти варианты.

Фильтрация пакетов

При фильтрации пакетов разрешения на прием/передачу данных выдаются только на основе анализа IP-адреса и номера порта источника пакета и его назначения. Данный вариант является самым простым и быстрым способом реализации межсетевого экрана.

    Примечание

    Принципиально существуют возможности "обмануть" такой межсетевой экран, например, фальсифицируя адреса в пакетах.

Шлюзы

Шлюзы уровня сессии организуют временные соединения между клиентом и хостом Интернета на основе некоторых заданных правил. После создания такого канала вся информация, передаваемая по нему, свободно пропускается. После завершения сессии канал уничтожается.

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

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

Intrusion Prevention Systems

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

Для предотвращения подобных вторжений в инфраструктуру предприятия стали применяться аппаратные и программные решения, контролирующие содержание передаваемых по сети пакетов с целью обнаружения подозрительной активности. Первоначально такие системы контролировали сеть параллельно основным устройствам и выдавали сигналы опасности при обнаружении подозрительных данных. Они получили название Intrusion Detection Systems (IDS).

Современные системы предотвращения атак — Intrusion Prevention Systems (IPS) — выполняют активную функцию. Они не только обнаруживают атаку, но и сразу же блокируют подозрительный трафик. Подобные системы могут обнаружить подготовку DoS-атаки, блокировать трафик программ, используемых для передачи данных между пользователями (типа Kazaa, Gnutella, ICQ и т. п.), обнаруживать сетевые черви, активность эксплойтов и т. п. (рис. 5.4).

Рис. 5.4.
Программа Norton Internet Security блокировала вторжение на пользовательский компьютер

Принцип действия IPS основан, прежде всего, на сравнении информации, передаваемой по сети, с заранее известными сигнатурами, которые присутствуют в пакетах, передаваемых червями, в пакетах программ, использующих те или иные уязвимости программного обеспечения, и т. п. Состав сигнатур постоянно обновляется с сайтов разработчиков IPS. Кроме того, IPS могут обнаруживать аномальные изменения трафика (например, резкое увеличение пакетов определенного типа) и сохранять пропускную способность канала для "полезных" данных.

Понятно, что с увеличением количества сигнатур, учитываемых при анализе содержимого пакета данных, растет нагрузка на устройство и, в конечном итоге, снижается его пропускная способность, поэтому надежно защитить весь сетевой трафик организации практически невозможно. Например, функция Cisco Intrusion Detection Systems включена в ПО коммутаторов Cisco, начиная с IOS Software Release 12.0.(5), но производитель предупреждает о снижении производительности устройства при увеличении числа сигнатур в используемых политиках предотвращения атак. IPS применяют в пограничных точках: на стыке Интернета и локальной сети организации, между серверным сегментом и пользовательской частью.

Как уже говорилось, технологии предотвращения атак могут быть программными или аппаратно-программными. Можно отметить, например, новое поколение Check Point — межсетевой экран, используемый большинством крупнейших компаний мира для защиты своих ресурсов, который включает в себя технологию SmartDefense, предназначенную для анализа проходящего трафика. Существуют и специализированные решения от Tipping Point (www.tippingpoint.com), Internet Security Systems (www.iss.net), Radware (www.radware.com), TopLayer (www. toplayer.com) и др.

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

Варианты межсетевых экранов

В распоряжении администраторов имеются как аппаратные межсетевые экраны, так и программные решения. Различие между этими двумя вариантами достаточно условно. Аппаратный модуль — это фактически специализированная под определенную задачу та или иная вычислительная система. Обычно для него создается операционная система (например, IOS у Cisco) или используется бесплатная версия Linux.

Программные варианты предполагают установку на типовые операционные системы, например: на Linux, операционные системы от Microsoft и т. п.

Аппаратные решения

На сегодня для малых предприятий наиболее дешевым решением являются аппаратные межсетевые экраны (стоимость их менее $200).

Такие модели выпускают практически все производители коммутационного оборудования. Имеются комплексные решения, например ADSL-модем и межсетевой экран в одном корпусе.

В зависимости от сложности устройства доступны различные уровни защиты сети. Но даже самые дешевые модели включают в себя такие функции, как статическую фильтрацию пакетов, наличие DMZ-портов, возможность создания VPN-подключений, NAT-трансляцию с сервером DHCP, средства предупреждения администратора (отправка e-mail и т. п.).

Встроенный межсетевой экран Windows XP/7/Server 2003/2008

В операционных системах Windows имеется встроенный межсетевой экран.

По сравнению с Windows XP, в Windows 7 расширены возможности фильтрации трафика встроенными средствами. Теперь пользователи могут создавать правила не только для входящего, но и для исходящего трафика. Кроме того, в системе существуют три профиля межсетевого экрана. Один соответствует подключению к частной сети, другой — к публичной сети, третий используется при работе в составе домена Windows. Профили представляют собой наборы правил, оптимизированные для работы в условиях соответствующей сети (профиль выбирается в зависимости от характеристик сети, в которой в текущий момент работает компьютер). Количество профилей изменить нельзя, но пользователь может изменить состав и настройку правил, составляющих тот или иной профиль.

Каждый профиль имеет правила по умолчанию для входящего и исходящего трафиков. Они применяются в случае отсутствия для пакета данных явно определенного правила. Для исходящего трафика правило по умолчанию для всех профилей разрешает все, для входящего трафика — все блокирует. Вы можете изменить эти установки, например, запретить передачу данных из компьютера в сеть. В этом случае необходимо создать разрешающее правило для передачи необходимых данных вовне.

По умолчанию в профиле созданы наборы разрешающих правил, которые обеспечивают работу компьютера в составе сети Microsoft. Наборы правил довольно объемны, но на начальных этапах настройки Windows можно сохранить предложенные изготовителем настройки.

Операции выполняются под руководством мастера (рис. 5.5); их выполнение не представляет особой сложности.

Рис. 5.5.
Мастер создания правила для исходящего трафика в Windows Vista

Хотелось бы обратить особое внимание на следующие моменты.

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

    Примечание

    Межсетевой экран может использовать эти настройки только для программ, работающих через Windows Socket. Поскольку особенности построения конкретной программы заранее не известны, то после создания правила следует проверить его работоспособность и при наличии ошибок выполнить настройку на основе протокола (порта).

Выбор настраиваемого правила необходимо сделать, если предполагается фильтровать трафик в зависимости от адресов источника и назначения. Правило позволяет определить как один адрес, так и диапазон IP-адресов. Кроме того, можно указать в правиле группу компьютеров по их функциональному назначению: WINS-, DHCP- или DNS-серверы, шлюз или локальная подсеть. Такое назначение позволяет более точно настроить правила с учетом возможного переноса данных ролей на другие компьютеры сети.

Программные комплексы

На рынке существует большое количество предложений межсетевых экранов. Администратор имеет возможность выбрать решения, обладающие большей или меньшей функциональностью. В любом случае перед тем, как внедрять решение, администратор должен тщательно взвесить желаемые требования и возможные стоимостные оценки реализации.

В Сети существует большое количество программ, предназначенных для защиты индивидуальных компьютеров. Например, можно отметить такие персональные межсетевые экраны, как AtGuard, BlackICE Defender, Jammer, Kerio Personal Firewall, Outpost Firewall, Sygate Personal Firewall, Tiny personal firewall, Zone Alarm и др. Часть этих продуктов — коммерческие программы, часть имеет версии, доступные для бесплатного использования.

Обычно такие программы сочетают в себе возможности блокировки трафика с дополнительными сервисами: например, запрет всплывающих окон, отсечение рекламных баннеров, фильтрация по вызывающему приложению и т. п. Часто программы имеют так называемый режим обучения, позволяющий неопытному пользователю осуществить точную настройку защиты. В этом режиме программа сообщает обо всех попытках передачи информации в Интернет. Анализируя представленную межсетевым экраном информацию, пользователь принимает решение о полной блокировке передачи, о разовом или постоянном разрешении. Таким образом, можно в результате обучения создать нужную конфигурацию доступа в Интернет.

Продукты, предназначенные для использования на уровне предприятий (Microsoft Forefront Threat Management Gateway, Check Point, Trend Micro Internet Gateway и т. п.), обычно носят комплексный характер: с их помощью можно создавать правила, фильтровать контент, предотвращать атаки определенного типа и т. д.

Фильтрация пакетов средствами операционной системы

В Windows предусмотрена возможность фильтрации пакетов. Например, с помощью фильтров легко защитить специализированный сервер (почтовый или аналогичный), разрешив прохождение пакетов только на определенный порт от конкретных устройств.

При помощи настройки фильтров политики IPSec легко создать правила, запрещающие или разрешающие трафик на конкретные узлы сети (рис. 5.6). При этом политики IPSec могут быть распространены на компьютеры сети с помощью групповой политики. Таким способом штатными средствами можно создать инструмент быстрого повышения уровня безопасности системы: достаточно предварительно разработать групповые политики IPSec, сводящие к минимуму сетевое взаимодействие, и включить их в случае вирусной атаки или признаков вторжения в сеть.

Рис. 5.6.
Фильтры IPSec позволяют очень точно настроить разрешения на передачу того или иного трафика системы

Настройка параметров межсетевого экрана при помощи групповой политики

Версии Windows с последними обновлениями безопасности предусматривают включение межсетевого экрана по умолчанию. При этом используются параметры, оптимальные для некоторого "среднего" варианта: защита активна, но задействованы исключения, обеспечивающие работу компьютера в локальной сети. Это, с одной стороны, неудобно в локальной сети с развернутыми системами управления: межсетевой экран (МСЭ) блокирует доступ таких программ к компьютерам, а с другой, — не обеспечивает должного уровня защиты в публичных сетях. Поэтому встроенные межсетевые экраны Windows нуждаются в централизованной настройке с помощью групповых политик.

Групповые политики межсетевого экрана

Параметры настройки групповой политики межсетевого экрана Windows расположены по следующему пути: Конфигурация компьютера | Административные шаблоны | Сеть | Сетевые подключения | Брандмауэр Windows (рис. 5.7). Настройки снабжены подробным пояснением, поэтому обратим внимание только на основные моменты конфигурирования.

Рис. 5.7.
Настройка параметров МСЭ при помощи групповых политик

В политике предусмотрено два контейнера: профиль домена и стандартный профиль. Параметры профиля домена используются в случае работы компьютера в сети домена (работа в составе домена определяется по параметрам сетевого адреса и доступности контроллера домена). Если компьютер, например ноутбук, включен в другую сеть, то настройки межсетевого экрана будут выполнены согласно параметрам, содержащимся в контейнере стандартного профиля.

Какие настройки могут быть рекомендованы для применения в обоих случаях? Во-первых, наиболее безопасным вариантом является использование межсетевого экрана как в условиях работы в домене, так и в публичной сети. Во-вторых, должна быть определена политика исключений защиты. При работе в домене, естественно, должны быть включены правила, относящиеся к работе в локальной сети. Кроме того, необходимо создать исключения и отразить их в групповой политике для тех программ управления, которые эксплуатируются на предприятии. Например, если вы используете корпоративную антивирусную программу, то должны разрешить доступ к компьютерам по тем портам, которые она использует (например, для антивируса от Symantec используемые порты описаны в документе http://service1.symantec.com/SUPPORT/ent-security.nsf/docid/2005033011582148? OpenDocument&src=ent_hot&dtype=corp&seg=ent&prod=Symantec%20Client% 20Firewall&ver=8.0&tpre=).

А если на предприятии внедрена система удаленного мониторинга, то должны быть открыты порты для данной программы или включена опция Разрешать исключения для удаленного управления для возможности управления через удаленную консоль. В каждом конкретном случае перечень таких исключений индивидуален, а их количество должно быть минимально разумным.

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

В табл. 5.1 приведены возможные настройки параметров групповой политики для межсетевого экрана Windows.

Таблица 5.1.
Рекомендуемые параметры настройки МСЭ

Параметр

Рекомендуется для профиля

домена

стандартного

Защитить все сетевые подключения

Включен

Включен

Не разрешать исключения

Не задан

Включен, и настроены исключения для используемых программ

Задать исключения для программ

Включен, и настроены исключения для используемых программ

Включен, и настроены исключения для используемых программ

Разрешать локальные исключения для программ

Отключен

Отключен

Разрешать исключения для удаленного управления

Отключен

Отключен

Разрешать исключения для общего доступа к файлам и принтерам

Отключен

Отключен

Разрешать исключения ICMP

Отключен

Отключен

Разрешать исключения для удаленного рабочего стола

Включен

Включен

Разрешать исключения для UPnP-инфраструктуры

Отключен

Отключен

Запретить уведомления

Отключен

Отключен

Разрешать ведение журнала

Не задан

Не задан

Запретить одноадресные ответы на многоадресные или широковещательные запросы

Включен

Включен

Задать исключения портов

Отключен

Отключен

Разрешать локальные исключения для портов

Отключен

Отключен

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

Операционные системы Linux содержат развитые функции управления сетевым трафиком. Наиболее широко используется межсетевой экран iptables. Программа позволяет осуществить настройки фильтрации пакетов существенно более точно, чем межсетевые экраны в Windows. Это объясняется тем, что в Linux имеется больше возможностей управления трафиком на низком уровне, чем доступно пользователям Windows.

Настройки запуска

Межсетевой экран iptables входит в состав практически всех современных выпусков Linux. Обычно при установке операционной системы задается вопрос, хотите-ли вы задействовать сетевой экран по умолчанию или нет. В зависимости от вашего выбора, программа будет либо запущена, либо выключена. Для того чтобы узнать, работает программа межсетевого экрана или нет, достаточно вывести на экран список процессов командой ps -а и отфильтровать его по названию службы командой grep. При этом набор правил фильтрации пакетов по умолчанию запретит доступ к ресурсам компьютера извне и ограничит некоторые функции работы в локальной сети.

Запуск межсетевого экрана в Red Hat можно осуществить командой:

/sbin/service iptables start

Для остановки демона в качестве параметра следует указать stop, для перезапуска (необходимо после редактирования конфигурации) — restart.

Для автоматического запуска программы межсетевого экрана при каждом старте системы достаточно выполнить команду

/sbin/chkconfig —level 345 iptables on

    Примечание

    В Linux существует несколько вариантов (уровней) загрузки. Они определяют, будет система стартовать в однопользовательском режиме, надо ли загружать графическую среду и т. п. Нормальному режиму работы соответствуют уровни 3 и 5; отличие между ними состоит только в том, что на уровне 3 не загружается графическая подсистема.

    Примечание

    В зависимости от используемого дистрибутива вы можете выполнить настройку служб специальными утилитами. Например, на рис. 5.8 представлен вариант настройки за-пуска службы утилитой ntsysv в Red Hat.

Рис. 5.8.
Утилита для настройки параметров служб, работающая в текстовом режиме

Использование iptables в Ubuntu

Ubuntu является одним из наиболее популярных клонов Linux, поддерживаемым многими вендорами. В Ubuntu основным является упрощенный вариант межсетевого экрана, поэтому в системе нет сценария автозапуска программы iptables, отсутствуют соответствующие файлы настроек. Для использования iptables необходимо выполнить специальные шаги:

  1. Создать необходимые правила фильтрации трафика с использованием команды iptables;
  2. Экспортировать настройки в какой-либо файл командой iptables-save;
  3. Настроить автоматическую загрузку настроек из этого файла при каждом запуске Ubuntu.

Автоматическую загрузку проще всего сделать через возможности настройки конфигурации сетевого интерфейса путем добавления строк, описывающих действия, которые следует выполнить перед включением сетевого интерфейса и при его отключении. Для этого достаточно настроить и сохранить действующие на данный момент правила (например, командой sudo bash -c "iptables-save > /etc/iptables.rules"), после чего открыть для редактирования файл /etc/network/interfaces и добавить в конец блока настроек, описывающих сетевой интерфейс, следующие строки:

pre-up iptables-restore < /etc/iptables.rules
post-down iptables-save -c > /etc/iptables.rules2

Эти команды будут выполняться каждый раз при включении и выключении сетевого интерфейса и активировать созданные ранее правила (сохранять в файл действующие настройки).

Обратите внимание, чтобы файл /etc/iptables.rules существовал перед перезагрузкой системы, в противном случае сетевой интерфейс не будет включен.

Программы графического управления iptables

Для точной настройки межсетевого экрана требуется обращение к командной строке и добавление соответствующих правил с полным набором параметров — условий, которым должен удовлетворять пакет, чтобы к нему было применено данное правило. Для пользователя, только начинающего работать в Linux, подобная настройка может вызвать существенные затруднения.

В большинстве случаев, чтобы обеспечить необходимый уровень безопасной работы в сети, достаточно применить стандартные ограничения. В таких ситуациях можно рекомендовать использовать для настройки межсетевого экрана графические утилиты. Их легко найти среди бесплатного программного обеспечения на сайте Surceforge.net. В качестве примера на рис. 5.9 показан интерфейс одной из таких программ.

Рис. 5.9.
Графическая настройка параметров межсетевого экрана

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

Принципы работы iptables

Любой пакет несколько раз анализируется на соответствие некоторым условиям каждым сетевым интерфейсом компьютера. При удовлетворении условиям к пакету применяется соответствующее правило, и дальнейший анализ на данном этапе не проводится. Если ни одно из правил не содержит условий, соответствующих пакету, к нему применяются правила по умолчанию. Подобные наборы правил носят названия таблиц.

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

На рис. 5.10 показана последовательность анализа пакета при его приеме или отправке. Для настройки межсетевого экрана следует создать правило по пути следования пакетов. Например, для фильтрации входящего трафика правила нужно создавать в цепочке INPUT, исходящего — OUPTUT. В цепочке FORWARD можно фильтровать трафик, маршрутизируемый системой (проходящий через сервер), PREROUTING используется для маршрутизации внешнего трафика на опубликованный внутренний ресурс и т. д.

Рис. 5.10.
Последовательность анализа пакета данных в фильтрах iptables

    Примечание

    Правила исполняются в порядке их списка. Поэтому обращайте внимание на их последовательность (команда А добавляет правило в конец списка, I <номер> — помещает в заданную позицию списка).

К пакетам, удовлетворяющим условиям фильтров, можно применить несколько действий: они могут быть пропущены (ACCEPT), удалены с сообщением источнику об ошибке передачи данных (REJECT) или уничтожены без оповещения (DROP). Существует также возможность настройки и применения пользовательского варианта обработки (QUEUE).

Создание правил межсетевого экрана

В общем виде команда редактирования правил межсетевого экрана выглядит следующим образом:

Параметр table-name позволяет выбрать используемую таблицу. Command определяет выполняемое действие: добавление или исключение правила. Chain-name — это название соответствующего правила. Далее следует набор пар parameter-n option-n, которые, собственно говоря, и определяют конкретные действия программы.

Описания параметров команды легко можно найти в Интернете. Более подробно процесс настройки iptables приведен в моей другой книге (см. Практическое руководство системного администратора. — СПб.: БХВ-Петербург, 2010. — 464 с.). Здесь же кратко рассмотрим пример команд, выполняющих минимальную настройку Linux-системы для работы в сети Интернета:

Первое правило разрешает внешнему интерфейсу (eth1) прием пакетов, которые являются ответом на исходящий трафик (состояние RELATED и ESTABLISHED).

Второе и третье правила разрешают весь входящий трафик по внутреннему и локальному интерфейсам.

Четвертое правило разрешает подключение из Интернета к серверу для управления по протоколу ssh (на практике желательно разрешать доступ не со всех систем, а только с конкретных адресов). Пятое правило переключает политику по умолчанию на DROP: никакие пакеты, кроме явно перечисленных ранее, не будут пропускаться.

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

Аутентификация доступа в Интернет

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

Подобные межсетевые экраны предлагают, как правило, коммерческие клиенты для систем на основе Windows. Вы можете приобрести такой продукт, но существуют и иные способы решения.

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

Другой способ заключается в предоставлении доступа к Интернету путем организации VPN-подключения к межсетевому экрану. Такой подход часто используется небольшими интернет-провайдерами, поскольку дает возможность легко подсчитать объем трафика каждого клиента.


Рейтинг@Mail.ru