Что придет на смену ICF?
После атаки «червей» Blaster в 2003 г. Microsoft отложила выпуск Windows XP Service Pack 2 (SP2), чтобы дополнить пакет обновлений новыми средствами защиты. Одна из мер, которая будет реализована в SP2, — автоматическая активизация брандмауэра Windows Firewall (в прошлом известного как Internet Connection Firewall, ICF) для всех сетевых адаптеров.
В результате реализации этой функции XP работает иначе, чем ожидают пользователи, будь то члены корпоративного домена или домашней рабочей группы. Под словами «работает иначе» я имею в виду, что пользователям не удается выполнить ранее доступные операции. И без того перегруженные заботами администраторы встретят эту новость печальным вздохом и, возможно, просто отключат Windows Firewall — что было и моим первым желанием. Однако, поразмыслив, я решил оставить Windows Firewall активным. Тем не менее я считаю, что его ограничения следует несколько ослабить, так как принимаемые по умолчанию параметры Windows Firewall блокируют все функции дистанционного управления и удаленные вспомогательные инструменты.
Независимо от того, будет ли Windows Firewall блокирован или будут изменены его параметры, администратору необходимо реализовать свое решение на десятках, сотнях или тысячах машин с наименьшими затратами. В данной статье речь пойдет о том, как активизировать и отключить Windows Firewall и настроить доменный и мобильный профили брандмауэра.
Как работает Windows Firewall
Начнем с пояснения, в чем именно заключаются функции Windows Firewall. Он анализирует и может блокировать входящий трафик, но не влияет на исходящий. По умолчанию Windows Firewall блокирует весь входящий трафик, за исключением тех случаев, когда данные пересылаются в ответ на предшествующий исходящий запрос.
Например, если открыть Microsoft Internet Explorer (IE) на машине XP и ввести адрес
www.cnn.com,
IE запросит на сайте CNN домашнюю страницу. Windows Firewall не блокирует исходящий трафик, но запоминает источник трафика. Спустя несколько мгновений Web-сервер CNN начнет пересылать в IE запрошенные данные. Windows Firewall обнаруживает входящий трафик, определяет, что он исходит из www.cnn.com — сайта, на который был послан запрос, — и разрешает передачу данных. В сущности, Windows Firewall допускает обмен данными с Internet и корпоративной сетью в случаях, когда взаимодействие инициировано защищенной системой.
Предположим, что внешняя машина — возможно, зараженная «червем» Blaster — пытается установить связь с компьютером XP. Внешняя система пытается послать пакет на порт 135 компьютера, чтобы заразить его «червем». Windows Firewall не воспринимает это обращение как ответ на запрос со стороны компьютера XP и поэтому блокирует пакет. По сути, Windows Firewall говорит сети: «Отвечай только на мои запросы».
Что произойдет, если активизировать Windows Firewall на системе внутри корпоративной сети, подключенной к домену? Сначала может показаться, что блокирование всех соединений, кроме инициированных клиентом, помешает нормальному участию рабочей станции в домене — таким было мое первое, поспешное заключение. Однако после некоторых размышлений я понял, что все соединения в домене инициируются клиентом: клиент отправляет запрос для регистрации, клиент запрашивает обновления Group Policy, клиент запрашивает перемещаемые профили (roaming profile) и т. д. Чтобы проверить эту теорию, в сентябре 2003 г. я активизировал Windows Firewall на нескольких рабочих станциях XP в своем домене на базе Active Directory (AD). С тех пор я не потерял никаких доменных функций. Однако, как упоминалось выше, мой инструментарий дистанционного администрирования работал, только если Windows Firewall был отключен или его режим изменялся.
В других сетях могут возникнуть проблемы, которых не было у меня. Так, мне известен пример, когда после активизации брандмауэра из предварительной версии SP2 была потеряна возможность просматривать сетевое окружение и отображать разделяемые диски. Каждому сегменту сети необходим мастер-браузер (browse master) — компьютер, который составляет список серверов в сегменте сети. Любой сервер может играть роль мастер-браузера, и во многих сетях каждая рабочая станция выступает в роли сервера. В сегменте, не имеющем настоящего сервера, такого как файл-сервер или принт-сервер, роль мастер-браузера выполняет какая-нибудь рабочая станция. Но в сегменте, «населенном» только рабочими станциями с активными персональными брандмауэрами, ни одна машина не сможет взять на себя роль мастер-браузера, и просмотр сетевого окружения будет невозможен. То же самое произойдет в сегменте, содержащем только системы XP с пакетом SP2, если не изменить параметры брандмауэра хотя бы на одной машине в сегменте, чтобы открыть порт и позволить этой машине функционировать в качестве файл- и принт-сервера.
Рассмотрим основные процедуры управления Windows Firewall: его включение и отключение. Отключить или активизировать Windows Firewall в среде SP2 можно тремя способами: через графический интерфейс, из командной строки и с помощью групповой политики.
Использование графического интерфейса
Интерфейс XP немного изменился по сравнению с интерфейсом, существовавшим до появления SP2, по крайней мере в отношении Windows Firewall. В зависимости от настройки можно щелкнуть на кнопке Start, Панель управления, и на экране появится категория с именем Network Connections или Network and Internet Connections. Если категория называется Network Connections, то в левой панели может находиться раздел Network Tasks, содержащий ссылку Configure Internet Connection Firewall. Если это так, следует щелкнуть на данной ссылке. Если же указана ссылка Local Area Connection (к проводному адаптеру Ethernet) или ссылка Wireless Network Connection, то нужно щелкнуть на ссылке правой кнопкой мыши, выбрать пункт Properties, щелкнуть на вкладке Advanced и, наконец, на кнопке Settings. Если в панели управления вместо категории Network Connections присутствует категория Network and Internet Connections, то следует щелкнуть на этой категории, а затем в разделе Pick a task в левой панели щелкнуть на кнопке Configure your firewall.
Независимо от выбранного способа, на экране появится страница Connection Firewall Properties. В окончательной редакции SP2 она может называться Windows Firewall Properties. На странице имеются вкладки с именами General, Exceptions, Network Connections, Log Settings и ICMP. На вкладке General расположены три кнопки: On (recommended), On with no exceptions и Off. Нужно щелкнуть на кнопке Off, затем нажать OK. Далее следует закрыть панель управления, и брандмауэр Windows Firewall будет отключен.
Командная строка
Windows Firewall можно отключить с помощью командной строки. Или может потребоваться изменить режим Windows Firewall на многих машинах, а применить групповую политику по какой-то причине невозможно (например, потому, что на предприятии пока не используется AD). И без того мощная команда Netsh дополнена в SP2 новыми параметрами для управления Windows Firewall. Брандмауэр можно отключить совсем, введя в командной строке
netsh firewall ipv4 set opmode
mode=disable
Эта команда отключает брандмауэр на всех сетевых адаптерах компьютера или на любом из них.
Но администратору не всегда приходится отключать Windows Firewall на всех сетевых адаптерах. Например, иногда удобно активизировать брандмауэр для беспроводного адаптера и отключить для платы Ethernet. В этом случае можно воспользоваться командой Netsh Set Opmode с параметром interface=name. Если беспроводная плата имеет имя wireless network connection, а плата Ethernet — имя local area connection, то с помощью следующих команд можно включить Windows Firewall на беспроводной плате и блокировать на плате Ethernet:
netsh firewall ipv4
set opmode mode=enable
interface=»wireless network
connection»
netsh firewall ipv4 set opmode
mode=disable interface=»local
area connection»
Опытные пользователи Netsh заметят, что, в отличие от других параметров Netsh, в параметре interface=name требуется ввести полное имя интерфейса. Если бы параметр interface=name действовал, как другие параметры Netsh, то interface=w было бы достаточно, чтобы отличить беспроводной сетевой интерфейс от интерфейса проводной локальной сети. Но, по крайней мере, в бета-версии SP2, с которой я работал при подготовке данной статьи, необходимо вводить полное имя интерфейса.
Использование групповой политики
Помимо графического интерфейса и командной строки, отключить Windows Firewall в XP SP2 можно из редактора Group Policy Editor (GPE) с помощью локальной или доменной политики. Брандмауэр всегда можно было отключить из объекта Group Policy Object (GPO), но этот метод очень ограниченный — отключение брандмауэра было фактически единственной функцией. В SP2 появилась новая категория (папка) объектов GPO для управления Windows Firewall.
Экран 1. Использование GPE для доступа Windows Firewall |
В GPE следует перейти к Computer Configuration, Administrative Templates, Network, Network Connections, Internet Connection Firewall (экран 1). В папке Internet Connection Firewall находятся еще две подпапки: Domain Profile и Mobile Profile. Наличие у Windows Firewall двух профилей — важная особенность; отвлечемся от основной темы статьи, чтобы подробнее рассмотреть ее.
Два профиля Windows Firewall
Многие пользователи не хотят активизировать Windows Firewall на системах внутри сети, но готовы применить его, если компьютер находится вне сети. Поэтому брандмауэр спроектирован как достаточно интеллектуальное устройство, чтобы определить, зарегистрирована ли машина в домене. Если она зарегистрирована, то Windows Firewall следует инструкциям в папке Domain Profile. Но если машина не зарегистрирована в домене (следует обратить внимание, что Windows Firewall определяет принадлежность к домену компьютера, а не пользователя), то Windows Firewall обращается за инструкциями в папку Mobile Profile.
Как уже отмечалось, Group Policy в SP2 представляет эти два набора параметров политик в виде папок или «категорий», в терминах Group Policy. Каждая папка содержит одни и те же девять параметров политики, один из которых называется Operational Mode. С помощью параметра Operational Mode брандмауэр Windows Firewall можно отключить. Чтобы это сделать, следует изменить значение параметра на Disabled и применить политику.
Operational Mode может находиться в двух состояниях: Enabled и Shielded. В состоянии Enabled брандмауэр активизирован, и любой порт может быть открыт. Если нужно включить Windows Firewall, когда компьютер к домену не присоединен, следует присвоить параметру Operational Mode в папке Domain Profile значение Disabled, а параметру Operational Mode в папке Mobile Profile — значение Enabled.
В состоянии Shielded брандмауэр включен и игнорирует запросы на открытие входных портов. Идея такого подхода состоит в том, чтобы активизировать режим Shielded в случае атаки «червя», блокируя все непрошеные входящие данные и не позволяя вирусу заразить системы.
Замечание относительно GPE. Чтобы построить GPO на базе домена для управления Windows Firewall, необходимо сделать некоторые приготовления. Все параметры политики Windows Firewall — новые, поэтому экземпляры GPE (gpedit.msc) на контроллерах домена (DC) на базе Windows Server 2003 и Windows 2000 почти наверняка не будут показывать параметры политики Windows Firewall. «Почти наверняка», так как система Windows 2003 с пакетом Windows 2003 SP1, который планируется выпустить в 2004 г. должна распознавать эти параметры. Данный пакет обновлений внесет в брандмауэр Windows 2003 такие же изменения, как XP SP2 — в брандмауэр XP.
Для того чтобы создать GPO на базе домена с новыми параметрами Windows Firewall, следует загрузить административные инструменты Windows 2003 на компьютере XP с установленным пакетом SP2. Затем нужно открыть оснастку Active Directory Users and Computers консоли Microsoft Management Console (MMC) (для политики сайта следует открыть оснастку MMC Active Directory Sites and Services) на компьютере XP. Затем можно создать или отредактировать GPO, содержащий новые параметры политики.
Настройка мобильного и доменного профилей из командной строки
Политики Windows Firewall на базе домена очень полезны, но пользователям, не работающим с AD, лучше обратиться к командным файлам. Благодаря мобильным и доменным профилям ценность Windows Firewall возрастает, но можно ли управлять ими из командной строки? Да, с помощью командной строки можно даже организовать мобильный и доменный профили.
Чтобы управлять Windows Firewall в конкретном профиле, достаточно дополнить команду Netsh Set Opmode параметром profile= с ключевым словом current, all, corporate или other. Ключ current указывает системе на необходимость изменить активный профиль. Ключ all вносит данное изменение в оба профиля. Менее очевидно назначение ключа corporate, который изменяет доменный профиль, и ключа other, служащего для изменения мобильного профиля. Иногда мне кажется, что в Microsoft над Windows Firewall работает множество программистов, которые мало общаются между собой.
Предположим, что требуется отключить Windows Firewall из командной строки, когда система подключена к домену, а в остальных случаях активизировать брандмауэр. Сделать это можно с помощью следующих команд:
netsh firewall ipv4 set opmode
mode=disable profile=corporate
netsh firewall ipv4 set opmode
mode=enable profile=other
Вооружившись базовыми знаниями, можно приступать к использованию Windows Firewall. Но мне бы хотелось подчеркнуть две вещи. Во-первых, я не рекомендую отключать брандмауэр в мобильном режиме. Во-вторых, даже внутри домена полезно активизировать брандмауэр.
В данной статье мы лишь поверхностно рассмотрели возможности Windows Firewall, в то время как они заслуживают более пристального изучения.
Марк Минаси — редактоp Windows NT Magazine MCSE и автор книги «Mastering Windows NT Server 4.0» (издательство Sybex). С ним можно связаться по адресу: mark@minasi.com