Организация IP брандмауэра встроенными средствами Windows 2000 и XP
ОГЛАВЛЕНИЕ
Каждый из этих вариантов имеет свои плюсы и минусы, но с точки зрения гибкости управления и учета деятельности пользователей я предпочитаю второй. В любом случае нужно ясно понять – сервер придется защищать. Самое удивительное – Windows 2000 (равно как и XP) обладают богатыми встроенными возможностями по защите, и в этой статье я постараюсь вам объяснить, как ими пользоваться. Но для начала давайте вспомним базовые концепции стека протоколов TCP/IP.
Особенности стека TCP/IP
Основной протокол стека TCP/IP – это IP (Internet Protocol). Он работает на сетевом уровне и занимается доставкой пакетов. У отправителя и получателя должны существовать уникальные IP адреса, которые указываются в заголовках каждого пакета. То есть первый критерий фильтрации – мы можем пропускать пакеты только от нужных (или только к нужным) IP адресам. Это самая примитивная фильтрация.
Но помимо протокола IP в сети работают несколько других протоколов. Каждый из них добавляет в пакет свой заголовок, то есть в момент передачи по сети пакет представляет собой «слоеный пирог», где помимо данных помещены заголовки различных протоколов. Один из этих заголовков вы уже знаете – это заголовок протокола IP.
Выше протокола IP находятся протоколы транспортного уровня – это TCP (Transmission Control Protocol) и UDP (User Datagram Protocol). Обычно используется либо TCP, либо UDP. Каждый из этих протоколов тоже добавляет в пакет свой заголовок. У UDP и TCP есть своя специфика – они, в отличие от IP, уже умеют работать с сетевыми службами. Причем адресация сетевых служб происходит по адресу службы – номеру порта. Отсюда вытекает вторая возможность фильтрации – мы можем ограничивать доступ по номеру порта. При этом номер порта можно комбинировать с IP адресом – к примеру, разрешать доступ на веб-сайт сервера (стандартно TCP порт 80) только с определенных IP адресов. Учтите, что хотя номера портов для TCP и UDP похожи, это разные протоколы и номера портов у них тоже разные. Номера портов большинства служб стандартизированы, и вы можете посмотреть их в файле "services", который размещается в каталоге %systemroot%system32driversetc. %Systemroot% - это каталог, где у вас установлена Windows. Кстати, комбинация «IP адрес» + «номер порта» называется сокетом. Сокет позволяет уникально адресовать службу в Интернете.
Когда вы обращаетесь к удаленному серверу по протоколу TCP, то происходит процесс установления связи. К примеру, вы обратились к веб-серверу узла 192.168.1.1 (стандартно – на TCP порт 80). При этом ваш компьютер (клиент) тоже должен выделить порт, чтобы сервер знал, куда отправлять ответ. Порт клиента выделяется случайным образом – к примеру, пусть это будет TCP 29334.
Кстати, очень полезно использовать утилиту "netstat.exe", которая входит в стандартную поставку Windows – она показывает все текущие TCP соединения и открытые порты.
Как правило, все сетевые службы общаются через TCP или UDP. TCP сегодня используется наиболее часто. Так что практически в любом пакете вы обнаружите заголовки TCP и UDP, по которым мы и будем осуществлять фильтрацию.
Осталось упомянуть протокол ICMP (Internet Control Message Protocol). Он использует IP, но не задействует ни TCP, ни UDP. ICMP предназначен для диагностики компьютерной сети, и его, в принципе, можно разрешать с любого IP адреса на любой IP адрес. По ICMP работает утилита "ping.exe", также стандартно поставляющаяся с Windows. С помощью утилиты ping вы сможете проверить доступность любого узла в Интернете. А с помощью еще одной утилиты – tracert.exe – проверить маршрут до выбранного узла.
Теперь после небольшого теоретического введения давайте перейдем собственно к построению защиты. Я буду иллюстрировать статью английской версией операционной системы, поскольку использовать русскую версию сервера Windows 2000 я настоятельно не рекомендую. Вряд ли «база знаний» на русском языке столь же информационно наполнена, как knowledge base на английском – а ведь это именно тот ресурс, который жизненно необходим всякому уважающему себя администратору. Для непосвященных отмечу – "knowledge base" содержит ответы практически на все вопросы, там указаны практически все ошибки Windows, а также даны рекомендации по их решению и различные советы.