Прежде чем приступить к чтению этой статьи, обратите внимание, что Microsoft Forefront TMG (Threat Management Gateway) все еще находится на стадии бета версии, и что-нибудь может измениться в конечной версии Microsoft Forefront TMG.
Также следует учитывать, что многое из этой статьи можно применить к ISA Server 2004 и ISA Server 2006, поскольку режим блокировки брандмауэра (Firewall Lockdown mode) практически одинаков во всех версиях. Лишь функция очередей логов (TMG Log queue) доступна только в Forefront TMG.
Первый вопрос, который вы можете задать, будет звучать так: что такое режим блокировки брандмауэра Firewall Lockdown Mode? Ответ прост. Все версии ISA Server имеют функцию, которая отключает службу брандмауэра ISA Server Firewall, когда запись логов с ISA в место назначения прерывается. Это также относится и к Microsoft Forefront TMG, за исключением того, что TMG идет с новой версией, расширяющей возможности режима блокировки, эта функция называется функцией очередей логов (Log queue feature). Чуть позже в этой статье я расскажу подробнее о данной функции.
Следующий вопрос, который вы можете задать, будет: Для чего ISA/TMG оснащены функцией блокировки брандмауэра ‘ разве она не препятствует производительности?
Нет, не препятствует. Критической функцией TMG является реагирование на атаки. Если есть атака, логи TMG будут заполняться и заполняться, и заполняться, потребуется лишь непродолжительное время после того, как TMG перезапишет более старые журналы, и если вы проанализируете атаку после ее завершения, вы не найдете никакой информации в журнале регистрации событий (логе) об атакующем. Эта и некоторые другие ситуации являются причиной, по которой TMG включается в режиме блокировки брандмауэра, когда запись логов прерывается, за исключением новой функции очереди логов.
Forefront TMG пытается сочетать необходимость в неподключенном TMG Server к интернету во время сбоев записи логов с необходимостью администраторов TMG удаленно администрировать машину по доверенной локальной сети LAN.
Когда Forefront TMG входит в режим блокировки, происходит следующее:
- Событие запускает предупреждение для отключения службы брандмауэра. Можно задавать другие действия, когда TMG не может записать журналы в место назначения.
- Отключение брандмауэра записывается в разделе предупреждения в функции мониторинга Microsoft Forefront TMG.
Когда TMG работает в режиме блокировки, применяются следующие функции:
FWENG.SYS (драйвер фильтрации пакетов Kernel Mode) применяется к политике брандмауэра.
Исходящий трафик с сети LOCAL HOST во все сети разрешен.
Следующие правила системной политики разрешают входящий трафик в сеть LOCAL HOST, если администратор TMG не отключил ее:
- Разрешить удаленное управление с выбранных компьютеров с помощью консоли MMC.
- Разрешить удаленное управление с выбранных компьютеров с помощью сервера терминала (Terminal Server).
- Разрешить DHCP ответы с DHCP серверов на Forefront TMG.
- Разрешить ICMP (PING) запросы с выбранных компьютеров на Forefront TMG.
- Клиенты удаленного доступа VPN не могут получать доступ к Forefront TMG. Также доступ не предоставляется к удаленным сетям сайтов в сценариях сайт к сайту VPN.
DHCP (Dynamic Host Configuration Protocol) трафик всегда разрешен. DHCP запросы на порт 67 UDP разрешены с сети LOCAL HOST всем сетям, а также DHCP ответы на порт UDP 68.
Любые изменения этой сетевой конфигурации, внесенные в режиме блокировки, применяются только после того, как служба брандмауэра перезапущена и Forefront TMG выходит из режима блокировки. Forefront TMG не генерирует никаких предупреждений.
Выход из режима блокировки
Выход из режима блокировки брандмауэра является простым. Вам нужно лишь перезапустить службу брандмауэра. Это автоматически выводит брандмауэр из режима блокировки и возвращает TMG к нормальному рабочему состоянию. Любые изменения в конфигурации Forefront TMG применяются после его выхода из режима блокировки.
Большие очереди записи логов
LLQ (Large Logging Queue) – это новая функция в Microsoft Forefront TMG, которая помогает снизить количество раз, когда TMG входит в режим блокирования брандмауэра из-за сбоев записи логов. LLQ представляет собой локальную директорию логов на сервере TMG Server, которая используется для сохранения записей логов TMG, когда TMG не может записывать их в целевой каталог ‘ по умолчанию в версию SQL Server Express.
LLQ содержит два основных компонента, которые работают в режиме Kernel с TMG (FWENG.SYS) и в режиме Пользователь (User (Dispatcher)). Процесс в пользовательском режиме лишь читает данные с жесткого диска, а в режиме Kernel процесс Fweng производит запись на жесткий диск.
В следующей схеме показаны компоненты, используемые функцией Large Logging Queue.
Увеличить
Рисунок 1: Новая функция очередей логов
LLG храниться в оперативной памяти и на жестком диске. Если диспетчер (компонент чтения) не видит задержек в записи журналов, данные логов будут непосредственно записываться в базу данных журналов регистрации. Можно настроить продолжительность и количество данных, которые могут содержаться в памяти с помощью системного реестра. Есть два настраиваемых параметра реестра:
HKEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Fweng\Parameters\LogQueueMaxLossCount
HKYEY_LOCAL_MACHINE\System\CurrentControlSet\Services\Fweng\Parameters\LogQueueMaxLossTimeInSeconds
Заметка: Компания Microsoft в открытую не рекомендует изменять эти параметры без обращения в поддержку Microsoft PSS!
Можно настроить папку Log Queue Storage в консоли TMG Management в закладке Журналы и отчеты (Logs & Reports). Можно использовать папку Стандартные (Standard) в каталоге установки TMG или другую директорию на сервере TMG Server. Если вы используете свою папку, она должна существовать до того, как вы измените директорию LLQ по этому пути.
Рисунок 2: Папка хранения очереди логов
В этой же закладке консоли TMG Management можно просматривать статус логов LLQ. Очередь логов должна быть пустой, когда запись логов осуществляется корректно.
Рисунок 3: Отображение очереди логов Forefront TMG
Обслуживание файлов логов
Во время атаки на ваш сервер TMG Server или внутреннюю сеть, количество записей в журналах значительно увеличивается, именно здесь и начинается проблема. Если запись логов сервера TMG Server дает сбой, генерируется стандартное сообщение об ошибке записи логов, что отключает службу брандмауэра Microsoft TMG и вводит TMG Server в режим блокировки. Такое поведение является отличной отправной точкой для атак с целью нарушения нормального обслуживания (Denial of Service attacks – DoS).
Для снижения потенциального риска нарушения записи логов вы можете оптимизировать систему в нескольких местах:
- Используйте службу дефрагментации диска для оптимизации доступа чтения и записи на жестком диске
- Используйте быструю и надежную систему
- Оптимизируйте данные логов
- Следует знать, для каких правил брандмауэра вы включаете службу записи логов
- Следует также понимать, какие поля SQL нужно регистрировать в логах. Можно настроить поля логов в свойствах ведения логов в брандмауэре (смотрите рисунок 4 для дополнительной информации)
- Создайте отрицающее правило с отключенной функцией ведения логов, которое отсеивает ненужный трафик, такой как NetBIOS и DHCP, заполняющий файлы логов этой ненужной информацией
- Настройте папки логов брандмауэра и веб прокси сервера на различных дисках.
- Если вы используете службу ведения логов SQL, измените размер роста файла или процент роста файлов для базы данных логов.
На следующем рисунке показаны свойства службы записи логов брандмауэра:
Рисунок 4: Служба ведения логов SQL Express
Снижение риска подверженности лавинным атакам
Начиная с ISA Server 2000, компания Microsoft применила некоторые рудиментарные функции антиспуфинга и определения вторжений. В ISA Server 2004 были представлены дополнительные функции обнаружения атак вторжения. В ISA Server 2006 были добавлены некоторые методики борьбы со спамом. Новые технологии были включены в настройки защиты от лавинных атак (Flood Mitigation) и должны помочь в защите от угроз. С помощью этих настроек можно снизить количество генерируемых записей логов. Защита от лавинных атак должна настраиваться в зависимости от ваших потребностей, а вам следует постоянно следить за обновлением этих параметров.
Оповещения записи логов TMG
В закладке Мониторинг в консоли TMG Management можно настроить параметры оповещений для всех уведомлений TMG и в данном случае для ошибки записи логов. В закладке действий оповещений можно останавливать службу брандмауэра. Это стандартный параметр в Microsoft Forefront TMG.
Увеличить
Рисунок 5: Forefront TMG ‘ действия при ошибке лога
Симуляция сбоев записи логов
Для симуляции ошибки записи логов вам потребуется лишь остановить службу Microsoft SQL Server Express, и после ее остановки видно, что служба брандмауэра Microsoft Firewall продолжает работать.
Рисунок 6: SQL Server Express Logging остановлена
Если перейти в закладку логов и отчетов, чтобы посмотреть статус LLQ, то вы увидите, какой из журналов непрерывно заполняется.
Рисунок 7: Статус очереди логов ‘ очередь логов заполняется
Стандартным параметром оповещения, при котором запускается использование Log Queue, является запись отчета об этом в журнал регистрации событий Windows. Вам необходимо создать триггер события (Event trigger) или что-то подобное, что будет посылать вам уведомление об использовании LLQ.
Рисунок 8: Оповещения очереди логов
Заключение
В этой статье я попытался предоставить вам обзор новой функции очереди логов Microsoft Forefront TMG, чтобы вы смогли избежать или хотя бы свести к минимуму ситуации, в которых брандмауэр входит в режим блокировки во время прерывания записи логов. Я также предоставил вам обзор механизма ведения логов в Forefront TMG и того, как настраивать и работать с очередью логов в Microsoft Forefront TMG.
Дополнительные ссылки