WinRoute - руководство пользователяБезопасностьСодержаниеОбзорТерминология Трансляция сетевого адреса (Network Address Translation (NAT)) Как работает NAT Критические моменты работы NAT Настройка NAT Пример сложной настройки NAT Переназначение портов (Port Mapping) Как работает Port Mapping Настройка Port Mapping Фильтрация пакетов(Packet Filtering) Что такое пакет Какие номера портов используются приложениями Политика безопсаности Запрещение доступа пользователя к некоторым службам интернет Настройка фильтрации пакетов Верификация пакетов Настройка верификации пакетов Пример настройки верификации пакетов Поименованные адресные группы и временные интервалы Поименованные адресные группы Временные интервалы
ОбзорWinRoute предоставляет следующие способы манипуляции пакетами (в модели OSI сетевых протоколов):
Трансляция сетевых пакетов (NAT) - это технология, которая преобразует пакеты, посланные из ЛВС (одного из компьютеров в ЛВС) таким образом, что они выглядят так, будто их отсылает WinRoute-сервер (это присходит путем замены адресов инициаторв пересылки в пакетах на адрес WinRoute-сервера). Приходящие в ответ пакеты рассылаются инициаторам обмена в ЛВС. Назначение портов обеспечивает доступ к избранным службам, защищенным посредством NAT. Фильтр пакетов является базовым модулем безопасности любого брандмауэра. Используя данные из пакета (такие как IP-адреса источника и приемника, тип сетевого протокола, порты источника и приемника, и т.д.), он либо позволяет прохождение пакетов, либо блокирует их. Если применяются правила фильтрации (зависит от толкования правила), производится запись информации о пакете. Верификация пакетов - это надстройка к фильтру пакетов, призванная защищать ЛВС от атак, в продолжении которых атакующий фальсифицирует IP-адрес источника пакета. Для достижения высокого уровня безопасности, WinRoute содержит т.н. модуль инспектирования. Это специальный драйвер, осуществляющий связь между линией и сетевым протоколом модели OSI, и использующий специальную технологию, обеспечивающую получение WinRout'ом пакетов непосредственно от драйвера сетевой карты, до того как пакет будет доступен для любого компонента операционной системы. Положение модуля инспекции WinRoute (проверяющего содержимое пакетов) в сетевой архитектуре Windows показано на рисунке ниже: The location of the WinRoute's inspection module (which checks the contents of packets) in the network architecture of Windows operating systems is shown in the figure bellow.
ТерминологияВ конце нижележащего текста используются некоторые термины, относящиеся к сетевым технологиям. Мы предлагаем вам ознакомиться с этими терминами, в особенности это будет полезно, если вы намереваетесь настраивать фильтрацию пакетов, т.к. это позволит вам знать значение информации, содержащейся в заголовках пакетов.Протоколы TCP/IP Сетевой интерфейс IP-адрес Маска подсети Порты Пакеты
Трансляция сетевых адресов (Network Address Translation (NAT)))NAT может быть использована для следующих целей:
Работа целой ЛВС, с использованием единственного IP-адреса возможно потому, что NAT заменяет в пакетах адрес источника (компьютера в ЛВС) на IP-адрес компьютера, на котором запущен WinRoute. Соединение с Интернет прозрачно, т.е. компьютеры в ЛВС используют WinRoute как шлюз (роутер). С точки зрения локального компьютера все выглядит так, как будто он соединен с Интернет, используя зарегистрированный IP-адрес. Таким образом, практически все приложения работают с NAT без дополнительной настройки. Это главная особенность, отличающая NAT от других разнообразных прокси-серверов и шлюзов уровня приложений, которые в принципе не могут поддерживать некоторые протоколы. Как работает NATМодуль NAT содержит таблицу, в которую записывается информация о каждом соединении. Это информация об: IP-адресе и номере порта источника, IP-адресе и номере порта применика, IP-адрес и номере порта, используемых для модификации пакетов. Мы можем продемонстрировать работу NAT следующим примером: Компьютер в ЛВС с адресом 192.168.1.22 устанавливает соединение через порт 7658 с WWW-сервером по адресу 194.196.16.43 порт 80. Связь проходит через WinRoute, который использует для внешнего интерфейса адрес 195.75.16.75. Итак, компьютер 192.168.1.22 отсылает пакет с порта 7358 на компьютер 194.196.16.43, порт 80. Пакет проходит через WinRoute, который сравнивает данные пакета со своей таблицей. Если в таблице есть запись для пакетов с этой машины и порта, следуем дальше, если нет, - такая запись создается. Затем, WinRoute модифицирует пакет, заменяя адрес источника на свой собственный, а также изменяя номер порта. Теперь адрес источника стал 195.75.16.75, и порт, скажем, 61001. После внесения изменений пакет отсылается. Когда приходит ответный пакет, он содержит 195.75.16.75 как адрес приемника, и 61001 как порт приемника. WinRoute просматривает свою таблицу для порта 61001 и находит запись для этого соединения. В соответствии с записью, он изменяет адрес и порт цели назад на 192.168.1.22 и 7658. Примечание: Критические моменты работы NATПриложения работают с NAT без каких-либо проблем, если транзакция инициирована из защищенной ЛВС (в большинстве случаев так оно и есть). Однако, существуют приложения, при разработке которых допущены ошибки, и которые не соответствуют полностью модели "клиент-сервер". Такие приложения могут не работать с NAT или некоторые их функции могут быть недоступны. Причиной может быть использование такими приложениями более одного соединения и дополнительными соединениями, инициированными сервером (расположенным где-то в Интернете). NAT, совершенно естественно, блокирует такие транзакции.Настройка NATОсновная настройкаВ WinRoute NAT просто включается/выключается опцией в панели настройки сетевого интерфейса. Естественно, имеется в виду интерфейс, посредством которого осуществляется доступ ЛВС в Интернет. (Елы-палы, или этот мануал писал конченый кретин, или для оных же :)NAT конфигурируется следующим меню:
Расширенные настройкиРасширенные настройки NAT могут применяться если вы хотите, чтобы NAT работал не со всей ЛВС, а с определенными ее частями (сегментами). Нужда в этом может появиться если часть машин в вашей ЛВС имеют IP-адреса и доступны из интернет, в то время как остальные машины используют незарегистрированные IP-адреса (192.168.*.*). Также эти настройки пригодятсе для создания демилитаризованных зон (DMZ), в которых работают серверы, доступные из интернет. Еще одной возможностью является выбор IP-адреса, который будет использоваться для модификации проходящих пакетов (IP-адрес сетевого интерфейса вашего компьютера используется лишь по умолчанию :) Чтобы применять расширенные настройки NAT, необходимо, чтобы он был включен для интерфейса. То есть мы сначала устанавливаем NAT для интерфейса, а затем, в расширенных настройках, определяем, где NAT не будет применяться. Расширенные настройки NAT определены в таблице правил. Таблица просамтривается всегда с начала до конца. Поиск заканчивается после того, как найдено первое подходящее правило. Правило исполняется, если адреса источника и приемника соответствуют набору данных в правиле. Расширенные настройки NAT производятся в меню:
Пример расширенных настроек NATРисунок ниже показывает три ЛВС:
Назначение портовWinRoute использует NAT, который делает защищенную ЛВС закрытой для доступа снаружи. Используя назначение портов, возможно создавать коммуникационные каналы, через которые может быть организован доступ к службам внутри ЛВС. Таким образом возможно создавать публичные службы, такие как WWW-сервер или FTP-сервер и т.п.Как работает назначение портовДля каждого пакета, полученного из внешней сети (Интернет), проверяются его атрибуты (протокол, порт службы назначения, IP-адрес назначения) соответствие записи в таблице назначения портов, (Protocol, Listen Port, Listen IP). Если найдена запись, для которой все три атрибута совпадают с атрибутами пакета, производится модификация и отсылка пакета в защищенную ЛВС по адресу, определенному в "Destination IP" ("IP назначения") в табличной записи и на порт, определенный как порт назначения ("Destination port".)Настройка назначения портаНазначение портов производится в меню:
Некоторые полезные конфигурации порт-маппинга показаны в Приложении.
Фильтрация пакетовУстановка правил вильтрации пакетов для защиты ЛВС в особенности важна, если ЛВС имеет зарегистрированные IP-адреса напрямую доступные из Интернет. Если выиспользуете NAT для всей сети, нет нужды в фильтрации пакетов.Как выглядит пакетЧтобы настраивать фильтрацию пакетов, важно понимать, как происходит манипуляция пакетами в сетевых уровнях TCP/IP.В каждома уровне содержимое пакета разделено на две части: заголовок и данные. Заголовок содержит контрольные данные данного сетевого уровня. Данные относятся к высшим сетевым уровням. Каждый сетевой уровень добавляет свой собственный заголовок, так что в результате пакет выглядит следующим образом: Следующая информация используется при настройке правил фильтрации для заголовков соответствующих протоколов (сетевых уровней): IP (Интернет-протокол) (Уровень Internet) IP - базовый протокол передачи данных высшего уровня. Для фильтрации может использоваться следующая информация:
Протокол ICMP (Уровень Internet) Протокол контрольных сообщений Интернет (Internet Control Message Protocol) используется для пересылки между компьютерами сообщений об ошибках и контрольных сообщений. Для фильтрации может использоваться следующая информация:
Протокол TCP (транспортный уровень) Протокол управления передачей (Transmission Control Protocol)используется для надежной передачи данных между двумя компьютерами. Компьютеры обмениваются данными, используя "соединение". Установка соединения, передача данных и закрытие соединения управляется специальными влагами в TCP-заголовке пакета. Флаг, управляющий открытием соединения очень важен для фильтрации пакетов, так как данные могут быть переданы только после установки соединения (да что вы говорите! ;). Для фильтрации используется следующая информация:
Протокол UDP (транспортный уровень) Протокол датаграммы пользователя (User Datagram Protocol) работает на уровне приложения и предлагает ненадежную передачу данных на основе датаграмм. В отличие от TCP, UDP не устанавливает соединения между двумя компьютерами и пакеты могут быть посланы на любой IP-адрес и любой порт. Для фильтрации может использоваться следующая информация:
Какие номера портов используются приложениямиВ Интернет используются два главных типа приложений: серверные и клиентские. WWW-браузер - пример клиентского приложения, тогда как WWW-сервер - естественно - серверное приложение (надо же! :). Для передачи данных клиентские приложения устанавливают связь с серверными. Серверные приложения ожидают установки соединения на заданных номерах портов. Обычно это номера меньше 1024. С другой стороны, нет строгого определения номеров портов для клиентских приложений, поэтом им порт(ы) назначается динамически (приложение запрашивает у ОС номер свободного порта). Номера портов, используемые для динамического назначения, обычно выше 1024.Пример сообщения между браузером и WWW-сервером показан на рисунке: Политика безопасностиВыбор правил фильтрации напрямую зависит от того, какие сервисы Интернет вы хотите сделать доступными для пользователей вашей ЛВС. Также это зависит от того, какие сервисы в вашей ЛВС вы хотите сделать доступными из Интернет.Применение более строгих правил могут сделать недоступными для пользователей ваших ЛВС некоторых сервисов Интернет. Например, это тот случай, когда запущено приложение, которому необходимо установить дополнительное соединение с Интернет, или приложение, основанное на UDP. С другой стороны, применение более свободных правил увеличивает число приложений и уменьшает защищенность ЛВС. Основной принцип настройки фильтрации - блокирование доступа из Интернет в ЛВС и полный доступ в обратном направлении (из ЛВС в Интернет). Затем, в зависимости от того, какие службы вы хотите предоставить для доступа снаружи, вы производите настройку правил. Наиболее важным вопросом является защита жизненно важных служб вашей ЛВС Эти службы (файловые серверы, Интранет-серверы, SQL-серверы) обычно отслеживают соединения по портам с номерами меньшими 1024. Службы, использующие номера портов, меньшие 1024, могут выполняться не только на серверах, даже пользовательские машины могут их выполнять, например в случае разделения доступа к файлам (sharing). С другой стороны, клиентские приложения используют номера портов, превышающие 1024, так что это число является очень значимым для настройки политик безопасности. Осмысленной политикой является блокирование доступа из Интернет к портам, чей номер менее 1024, для протоколов TCP и UDP. После чего, вы можете настраивать службы, которые будут доступны мз Интернет. Например, для WWW вы разрешаете доступ на порт 80 (в общем случае). Более строгая политика также запрещает все входящие UDP-пакеты, а также TCP-пакеты, пытающиеся установить соединение из Интернет с портами, чей номер превосходит 1024. Так, подобная политика полностью запрещает установку соединения из Интернет с защищенной ЛВС, но разрешает все соединениния, инициируемые из ЛВС. При применении такой политики, некоторые приложения могут прекратить функционировать (частично или полностью - зависит от приложения). Проблемы могут возникнуть с приложениями, которые ожидают ответа от другой стороны на порт, чей номер превышает 1024. Также не будут работать приложения, использующие UDP. Приер политик: При настройке правил фильтрации важно помнить, что правила будут искаться в таблице в том порядке, в котором они были туда занесены, и поиск подходящего правила прекращается после его нахождения (поразительно! :). Следующие примеры показывают более и менее строгую политики, которые вы можете использовать при настройке правил: Менее строгая политика:Для входящих из Интернет пакетов мы делаем следующее:
Более строгая политика:Для входящих из Интернет пакетов мы делаем следующее:
Рисунок ниже показывает конфигурацию политики в фильтре пакетов: Запрет доступа пользователя к некоторым службам в ИнтернетеФильтрация пакетов может использоваться также для запрета доступа к некоторым службам Интернета из вашей ЛВС. Возможно настроить запрет доступа для некоторых компьютеров, основанный на IP-адресе инициатора. Тип службы, доступ к которой вы хотите закрыть, оопределяется номером порта этой службы.Например, чтобы запретить доступ к FTP (File Transfer Protocol), надо сделать следующее: Для исходящих пакетов:
Если у вас работает прокси-сервер, осуществляющий фильтрацию по URL и вы хотите, чтобы пользователи вашей ЛВС использовали прокси вместо прямого доступа в Интернет, используйте следующее: Для исходящих пакетов:
Конфигурация фильтра пакетовЕсть возможность настройки правил ввода-вывода для каждого интерфейса. Правила определяют, прохождение каких пакетов разрешено и каких запрещено. Правила определяются в терминах IP-адресов, портов и протоколов.Правила безопасности исполняются с использованием следующих методов:
ВерификацияНекоторые сетевые службы используют механизм безопасности, основанный на IP-адресе клиента, например в случае rlogin и NFS (Network File System). Взломщик может обойти этот механизм, используя подделку IP, технику, основанную на фальсификации IP-адреса источника (а вы говорите: "Фальсифицированная водка" :) Такая атака обычно комбинируется с TCP SYN флудингом или с рутингом источника. Взломщик может подвергнуть опасности правильное выполнение служб или даже получить несанкционированный доступ к ним.Верификация производится по прибытии пакета. Существует возможность определить, какие IP-адреса могут возникать в пакетах, полученных по каждому интерфейсу. Пакеты с адресом источника, отличающимся от разрешенных, игнорируются, и (опционально), записывается лог этих пакетов. Метод настройки верификации в WinRoute показан ниже:
Для каждого интерфейса мы определяем, что адрес источника входящих пакетов должен лежать в интервале адресов подключенной напрямую подсети. Если за роутером находятся другие сетевае сегменты, необходимо создать поименованную группу адресов для этих сегментов. Затем мы можем определить, что прохождение разрешено только для пакетов из подключенной напрямую сети или разрешенной поименованной группы адресов.
Очевидно, что невозможно поименовать адреса всех пакетов, приходящих на интерфейс, подключенный к Интернет. Пакету разрешено прохождение, если адрес его источника входит в число таковых, разрешенных для интерфейса, ведущего в защищенную ЛВС. Так что разрешается любой адрес, отличный от адресов, разрешенных для интерфейсов ЛВС. Это гарантирует блокирование пакетов с подделанным адресом источника (пакеты, выглядящие как посланные компьютером, входящим в ЛВС). Настройка верификации
Пример конфигурации верификацииВ примере ниже показаны три сети:
Верификация настроена, как показано на рисунке: Правила настройки таковы:
Диалоговые окна настройки:
Поименованные группы адресов и временные интервалыПоименованные группы адресов и временные интервалы могут использоваться в различных местах конфигурации.Поименованные группы адресовПоименованные группы адресов могут использоваться везде где необходимо указывать адреса источника и приемника, например в фильтрации пакетов, расширенной настройке NAT, и т.п.Использование поименованных групп адресов дает следующие преимущества:
Временные интервалыВременные интервалы могут быть использованы, например, для применения правила сетевой фильтрации в определенный период времени. Название интервала используется для ссылок на него.
Translation © 1999 Lechoix d'Ebousche |
---|
На правах рекламы: |