Чтобы маршрутизатор мог выполнять пересылку трафика группового вещания (multicast forward), на нем необходимо активизировать компонент маршрутизации протокола IGMP.
Рис. 15.14. Выбор режима функционирования интерфейса при пересылке трафика группового трафика
Кроме того, отдельные (или все) сетевые интерфейсы маршрутизатора должны быть переведены в соответствующие режимы работы (IGMP-маршрутизатора или IGМР-посредника).
Для активизации компонента маршрутизации протокола IGMP необходимо в контекстном меню объекта General (Общие) выбрать пункт New Routing Protocol (Новый протокол маршрутизации). В открывшемся окне нужно выбрать из списка элемент IGMP Router and Proxy. Система выполнит установку всех необходимых компонентов, и в пространстве имен оснастки появится новый контейнер — IGMP.
На следующем этапе следует выбрать сетевые интерфейсы, на которых данный компонент будет активизирован, и определить режим их работы. В процессе добавления интерфейса система предложит определить параметры функционирования IGMP на уровне интерфейса (рис. 15.14). В поле Mode (Режим) необходимо выбрать режим, в котором будет функционировать интерфейс.
Все требуемое аппаратное обеспечение должно быть подключено и активизировано еще до того, как будет выполнено развертывание служб маршрутизации Windows. В зависимости от архитектуры корпоративной сети и требований к ней могут понадобиться следующие аппаратные средства:
сетевой адаптер с сертифицированным NDIS-драйвером (Спецификация интерфейса сетевого драйвера, Network Driver Interface Specification);
один или несколько совместимых модемов и доступный СОМ-порт;
многопортовый адаптер для повышения производительности при наличии нескольких одновременных удаленных соединений;
интеллектуальная плата Х.25 (для сетей Х.25);
ISDN-адаптер или модем (для линий ISDN).
Совместимость всех аппаратных средств компьютера, работающего под управлением Windows Server 2003, можно проверить по списку совместимости аппаратных средств (Hardware Compatibility List, HCL) в Интернете на веб-сервере Microsoft (http://www.microsoft.com.hcl).
Для принятия решения о передаче пакетов через межсетевую среду при помощи маршрутизаторов, способных передавать групповой трафик, применяются механизмы групповой маршрутизации. Основанием для принятия решения служит информация о членстве компьютеров в группах. Для обмена между маршрутизаторами информацией о членстве в группах вещания используются специальные протоколы групповой маршрутизации.
Очень легко запутаться в терминологии, применяемой при рассмотрении принципов группового вещания. Под групповой маршрутизацией (multicast routing) понимается процесс взаимодействия маршрутизаторов, в результате которого происходит обмен информацией о хостах, принадлежащих к различным группам вещания. В результате этого обмена каждый маршрутизатор обладает информацией о распределении в рамках корпоративной сети хостов, принадлежащих к некоторой группе вещания. Благодаря этому маршрутизатор может отправлять пакеты группового вещания в направлении, в котором находятся хосты, принадлежащие к требуемой группе (даже если прилегающая подсеть непосредственно этих хостов не содержит).
Примеры протоколов групповой маршрутизации — Distance Vector Multicast Routing Protocol (Групповой протокол маршрутизации на основе вектора расстояния, DVMRP), Multicast Extensions to OSPF (Групповые расширения к OSPF, MOSPF), Protocol Independent Multicast-Spare Mode (Разреженный режим группового вещания, не зависящего от протокола, PIM-SM), Protocol Independent Multicast-Dense Mode (Плотный режим группового вещания, не зависящего от протокола, PIM-DM).
В среде Windows Server 2003 поддержка протоколов групповой маршрутизации не реализована.
Стандартный способ доставки (одноадресный) предполагает установку соединения "точка-точка", когда пакет доставляется одному получателю. В случае, когда один и тот же пакет должен быть доставлен нескольким получателям, установка нескольких точечных соединений оказывается неэффективным решением (с одной стороны, происходит увеличение сетевого трафика, а с другой, — увеличиваются затраты вычислительных ресурсов на поддержание списка конечных точек). Использование широковещательных рассылок также не является эффективным решением, поскольку широковещательные сообщения не транслируются маршрутизаторами. В качестве альтернативы можно использовать другой метод доставки, когда получателем пакета выступает не один, а несколько получателей. Данный принцип лежит в основе группового вещания (multicasting).
Каждый хост, входящий в группу вещания, помимо уникального IP-адреса. однозначно идентифицирующего хост в пределах сети, получает также некоторый групповой IP-адрес. Этот адрес идентичен для всех хостов, являющихся членами группы. Этот адрес может быть указан в качестве получателя пакета. В этом случае пакет будет получен всеми хостами, входящими в состав группы вещания. Все другие узлы просто проигнорируют данный пакет. В этом заключается существенное отличие группового вещания от широковещательных рассылок — групповой трафик не "беспокоит" хосты, не принадлежащие к группе вещания и не ожидающие группового трафика.
Групповое вещание может использоваться для следующих целей:
обнаружения ресурсов в межсетевом пространстве;
поддержки распределенных сетевых приложений;
поддержки групповых приложений мультимедиа, предполагающих передачу потоковых данных (например, цифрового аудио и видео). В качестве примера приложения, использующего групповое вещание, можно привести Microsoft Media Services.
В приведенном на рис. 15.4 примере три хоста, расположенные в разных подсетях, принадлежат к одной группе вещания. Следует обратить внимание на то, что хотя каждый хост уникально идентифицируется посредством IP-адреса, каждому из них выделен общий групповой адрес. В данном примере предполагается, что трафик группового вещания распространяется свободно в обоих подсетях. На самом деле, задача распространения трафика группового вещания (так же как и в случае одноадресной маршрутизации) в условиях межсетевого взаимодействия решается на уровне маршрутизаторов.
Рассмотрим следующую ситуацию. Корпоративная сеть состоит из нескольких подсетей, соединенных между собой одним маршрутизатором, реализованным на базе Windows Server 2003.
Рис. 15.5. Организация группового вещания в сценарии "интрасеть с одним маршрутизатором"
Поскольку в данном сценарии используется всего один маршрутизатор, проблема взаимодействия маршрутизаторов, участвующих в маршрутизации группового трафика, попросту отсутствует. Как следствие, процесс группового вещания может быть реализован средствами службы маршрутизации и удаленного доступа Windows Server 2003. Групповое вещание в данном сценарии может быть реализовано путем использования механизма пересылки трафика группового вещания (multicast forwarding). Для этого все сетевые интерфейсы маршрутизатора переводятся в режим IGМР-маршрутизатора (предварительно должен быть активизирован компонент маршрутизации протокола IGMP) (рис. 15.5).
Рассмотрим процесс настройки службы маршрутизации и удаленного доступа Windows Server 2003 в качестве маршрутизатора. Прежде чем приступить непосредственно к процедуре настройки, администратор должен решить следующие вопросы:
выбрать протокол, для которого необходимо организовать маршрутизацию. Механизмы маршрутизации Windows Server 2003 позволяют организовать маршрутизацию протоколов IP и AppleTalk;
определить, какой способ построения таблиц маршрутизации будет использоваться в корпоративной сети. В небольшой, редко изменяющейся сети наиболее простым и эффективным будет использование статической маршрутизации. В больших распределенных сетях с часто меняющейся структурой, предпочтительно использовать динамическую маршрутизацию;
выбрать протоколы маршрутизации (в случае если используется динамическая маршрутизация). Данный пункт актуален для IP-трафика. Администратор может выбирать из двух протоколов маршрутизации — RIP и OSPF.
Задача поддержания таблицы групповой маршрутизации осуществляется в Windows Server 2003 посредством специального компонента маршрутизации протокола IGMP, который реализован в рамках службы маршрутизации и удаленного доступа. С точки зрения протокола 1GMP каждый сетевой интерфейс, для которого активизирован этот компонент, может функционировать в одном из двух режимов:
режим IGMP-маршрутизатора (IGMP router mode). В режиме IGMP-маршрутизатора сетевой интерфейс способен прослушивать подсети в ожидании специальных объявлений хостов об их членствах в группах вещания (IGMP Host Membership Report);
режим IGMP-посредника (IGMP proxy mode). Сетевой интерфейс, находящийся в режиме IGMP-посредника, осуществляет ретрансляцию сообщений о членстве (IGMP Host Membership Report), приходящих на другие интерфейсы системы, находящиеся в режиме IGMP-маршрутизатора. Вышестоящий маршрутизатор, находящийся в подсети, в которой расположен IGMP-proxy, получает сообщения о членстве хостов в различных группах вещания от IGMP-proxy и добавляет его к собственным таблицам групп. Таким образом, вышестоящий маршрутизатор получает информацию о том, что пакеты, адресованные определенным группам вещания, необходимо передавать через IGMP-proxy.
Режимы IGMP-маршрутизатора и IGMP-посредника не обеспечивают выполнение всех функций, реализуемых протоколами групповой маршрутизации, которые могут потребоваться для групповой пересылки и поддержки маршрутизации в ин-трасетях с несколькими маршрутизаторами. Маршрутизатор и посредник могут обеспечить групповую пересылку в указанных условиях, однако ряд ограничений на расположение источников группового трафика не позволяет рекомендовать их использование. В большинстве случаев следует развертывать конфигурацию с применением протоколов групповой маршрутизации.
Согласно терминологии службы маршрутизации и удаленного доступа, под устройством (device) понимается аппаратное или программное обеспечение, предоставляющее порты для установки соединений "точка-точка". Протоколы РРТР или L2TP — примеры виртуальных многопортовых устройств. Чтобы служба маршрутизации и удаленного доступа могла использовать конкретное устройство (порт), нужно разрешить ее функционирование для этого устройства. Для этого необходимо вызвать окно свойств объекта Ports (Порты), расположенного в пространстве имен оснастки Routing and Remote Access. На вкладке Devices (Устройства) следует выбрать требуемое устройство с вызовом по требованию, а затем нажать кнопку Configure (Настроить).
В окне Configure Device (Настройка устройства) (рис. 15.11) необходимо установить флажок Demand-dial routing connections (inbound and outbound) (Подключения по требованию (входящие и исходящие)), а затем нажать кнопку ОК.
Рис. 15.11. Разрешение использования устройства для организации маршрутизации с вызовом по требованию
Служба маршрутизации и удаленного доступа (Routing and Remote Access Service, RRAS) устанавливается автоматически в процессе установки Windows Server 2003. Однако при этом она остается в неактивном состоянии. Прежде чем эта служба сможет быть использована для маршрутизации сообщений, необходимо ее активизировать и должным образом сконфигурировать. Активизация службы выполняется при помощи специального мастера Routing and Remote Access Server Setup Wizard. Этот мастер кроме собственно активизации позволяет выполнить настройку службы в соответствии со стоящими перед администратором задачами. Если служба уже была активизирована ранее (например, при развертывании сервера удаленного доступа), администратор должен выполнить ручную настройку службы.
В процессе организации межсетевого взаимодействия важное место занимает маршрутизация сообщений между отдельными подсетями. При этом под маршрутизацией понимается процесс доставки сообщения из одной подсети в другую. Данная задача может решаться различными способами. При этом, чем сложнее рассматриваемая система, чем больше подсетей ее образуют, тем более нетривиальным является решение задачи доставки сообщений. Сетевой компонент, выполняющий маршрутизацию пакетов, называется маршрутизатором (router). Маршрутизатор может быть реализован на базе компьютера с несколькими сетевыми интерфейсами, на котором установлено специальное программное обеспечение. В этом случае говорят о программном маршрутизаторе. В другом случае маршрутизатор может быть выполнен в виде отдельного сетевого устройства. Разумеется, наиболее эффективным решением является использование специальных аппаратных маршрутизаторов. В настоящее время лидером на рынке корпоративных маршрутизаторов является компания Cisco, предлагающая высокопроизводительные и надежные устройства. В небольших сетях (таких как сеть небольшого офиса или домашняя сеть), использование аппаратного маршрутизатора может быть экономически необоснованно.
Системы Windows Server 2003 включают в себя механизмы, позволяющие серверу, находящемуся под ее управлением, выступать в качестве программного маршрутизатора. Эти механизмы реализованы в составе Службы маршрутизации и удаленного доступа (Routing and Remote Access Service, RRAS). Хотя в архитектуре Windows Server 2003 основной упор делается на стек протоколов TCP/IP, в состав указанной службы также включена поддержка механизмов маршрутизации стека протоколов AppleTalk.
В рамках службы маршрутизации и удаленного доступа Windows Server 2003 реализованы механизмы, позволяющие организовать маршрутизацию трафика протокола AppleTalk. Данный протокол используется в качестве транспортного механизма в сетях, построенных на базе Apple Macintosh. Благодаря наличию механизмов маршрутизации AppleTalk-трафика компьютер, находящийся под управлением операционной системы Windows Server 2003, может выступать в качестве программного маршрутизатора в среде AppleTalk. Возможности маршрутизации AppleTalk-трафика включают в себя поддержку протокола маршрутизации Routing Table Maintenance Protocol (RTMP).
Поддержка протокола AppleTalk реализована в Windows Server 2003 с целью предоставления возможности сосуществования двух различных платформ в одной сети. Использовать стек протоколов AppleTalk в других ситуациях (например, как средство организации сетевого взаимодействия Windows-хостов) не рекомендуется.
Поддержка маршрутизации AppleTalk-трафика не реализована на 64-разрядных версиях операционных систем семейства Windows Server 2003.
До этого момента при обсуждении вопросов маршрутизации сообщений мы предполагали, что все сетевые подключения маршрутизатора являются постоянными. Тем не менее, достаточно часто администраторам приходится иметь дело с коммутируемыми подключениями. В случае использования коммутируемых подключений у администратора имеется две возможности организации маршрутизации.
Рассматривать коммутируемые подключения как постоянные. Администратор устанавливает соединение с удаленным сервером и после этого оно рассматривается как постоянное (вплоть до момента его разрыва). При этом действуют все те принципы маршрутизации, что были описаны ранее. Недостатками данного способа являются высокая удельная стоимость аренды канала связи (после установки соединения канал может не использоваться в течение длительного периода времени), необходимость изменения конфигурации маршрутизаторов до и после создания подключения.
Использовать механизм маршрутизации с вызовом по требованию (demand-dial routing, dial-on-demand routing). Этот механизм реализован в рамках службы маршрутизации и удаленного доступа Windows Server 2003. Данный механизм позволяет осуществлять маршрутизацию сообщений через интерфейс с вызовом по требованию (demand-dial interface). Использование механизма маршрутизации с вызовом по требованию позволяет существенно снизить затраты на аренду коммутируемых канатов связи и упростить процесс маршрутизации сообщений через коммутируемые соединения.
Рассмотрим более подробно принципы, лежащие в основе данного механизма. Подключение с вызовом по требованию (demand-dial connection) устанавливается в ситуации, когда на интерфейс приходит пакет, предназначенный хосту, находящемуся в удаленной подсети (к которой этот интерфейс подключен). Если в течение определенного времени других данных для передачи удаленному хосту не поступает, соединение прерывается. Соединение с вызовом по требованию позволяет эффективно использовать коммутируемые телефонные линии.
Администратор может контролировать процесс установки соединения с вызовом по требованию при помощи двух механизмов.
В зависимости от способа формирования содержимого таблицы маршрутизации различают два вида маршрутизации.
Статическая маршрутизация. Все маршруты прописываются и изменяются администратором системы вручную. Это самый простой способ организации маршрутизации. Однако он подходит только для небольших сетей, изменения в структуре которых происходят достаточно редко. Кроме того, данный способ маршрутизации не годится в случае, когда важно обеспечить высокую надежность межсетевого взаимодействия. Если один из маршрутов окажется по каким-либо причинам недоступен, администратору необходимо будет вручную изменить таблицу маршрутизации на всех маршрутизаторах в сети. До этого момента межсетевое взаимодействие на отдельных участках сети будет невозможно.
Динамическая маршрутизация. Построение таблицы маршрутизации осуществляется посредством специальных протоколов маршрутизации. Участие администратора в этом процессе минимально и сводится к изначальной конфигурации маршрутизаторов. Два наиболее распространенных протокола IP-маршрутизации, используемых в интрасетях, — протоколы RIP (Routing Information Protocol) и OSPF (Open Shortest Path First). Посредством указанных протоколов маршрутизаторы способны информировать друг друга об изменениях в структуре сети. В случае недоступности одного из маршрутов, маршрутизаторы автоматически перестроят свои таблицы маршрутизации и, при возможности, выберут другой маршрут доставки сообщений.
Под многоадресной маршрутизацией понимается маршрутизация трафика группового вещания. Групповое вещание (multicasting) предполагает отправку пакетов, адресованных не одному получателю, а целой группе. Механизм многоадресной маршрутизации позволяет каждому получателю, принадлежащему к определенной группе, получить пакет группового вещания независимо от того, в какой подсети он находится. Прежде чем детально рассмотреть механизмы многоадресной маршрутизации, необходимо ознакомиться с принципами группового вещания.
В то время как маршрутизация с вызовом по требованию может уменьшать издержки на соединение, типичные протоколы маршрутизации полагаются на периодический процесс объявлений, которыми обмениваются маршрутизаторы извещая друг друга о содержимом собственных таблиц маршрутизации. Например, RIP для IP объявляет содержание таблицы маршрутизации каждые 30 секунд на всех интерфейсах. Такое поведение не является проблемой для постоянно подключенных каналов ЛВС или ГВС. В случае коммутируемого соединения подобные периодические объявления будут заставлять маршрутизатор вызывать другой маршрутизатор каждые 30 секунд. Такой подход может свести на нет всю выгоду от использования соединений с вызовом по требованию (поскольку приводит к нежелательному увеличению затрат на аренду коммутируемого канала связи). Выходом из сложившейся ситуации является отказ от использования протоколов маршрутизации в случае использования коммутируемых соединений.
Если для обновления таблиц маршрутизации не используются протоколы маршрутизации, то маршруты должны быть введены в маршрутизатор как статические маршруты. Статические маршруты, соответствующие подсетям, доступным через интерфейс с вызовом по требованию, могут быть созданы администратором вручную или автоматически. Автоматическое создание статических маршрутов для интерфейсов с вызовом по требованию известно как автоматическое статическое обновление (auto-static updates). Механизм автоматического статического обновления реализован в рамках службы маршрутизации и удаленного доступа Windows Server 2003. Этот механизм может использоваться совместно с протоколом маршрутизации RIP для IP, но не может быть использован совместно с OSPF.
По команде администратора маршрутизатор отправляет с интерфейса с вызовом по требованию, сконфигурированного для автоматического статического обновления, специальный запрос через активное соединение маршрутизатору, находящемуся на другой стороне. Запрос включает в себя требование предоставить информацию обо всех маршрутах, содержащихся в его таблице маршрутизации. Получив ответ на запрос, маршрутизатор извлекает из него сведения о маршрутах и автоматически обновляет таблицу маршрутизации, добавляя новые маршруты в качестве статических. Следует заметить, что статические маршруты постоянны. Это означает, что они сохраняются в таблице маршрутизации при любых обстоятельствах, даже в случае отключения интерфейса или перезапуска маршрутизатора.
Рассмотрим другой сценарий. Допустим, корпоративная сеть, так же как и в предыдущем случае, состоит из нескольких подсетей, соединенных между собой одиночным маршрутизатором. При этом один из интерфейсов маршрутизатора связывает корпоративную подсеть с Интернетом (в более общем случае вместо Интернета может выступать любая внешняя сеть). В данном сценарии проблема организации группового вещания осложняется тем фактом, что источником трафика группового вещания могут выступать хосты, расположенные в Интернете. При этом встает вопрос об объявлении членства в группах вещания хостами, расположенными в корпоративной интрасети. Как маршрутизатор Интернета "узнает" об этих хостах и о том, что в корпоративную подсеть должен быть передан определенный трафик группового вещания?
В данном случае задача может быть также решена средствами службы маршрутизации и удаленного доступа Windows Server 2003. Все интерфейсы. соединяющие маршрутизатор с локатьными подсетями, должны быть переведены в режим ЮМР-маршрутизатора. Сетевой интерфейс, соединяющий корпоративный маршрутизатор с маршрутизатором интернет-провайдера, должен быть переведен в режим IGMP-посредника (IGMP-proxy) (рис. 15.6).
При этом предложенная схема работает следующим образом. Хосты объявляют о своей принадлежности к некоторой группе вещания. Эти объявления передаются IGMP-посредником маршрутизатору интернет-провайдера. Маршрутизатор использует данные объявления для построения своей таблицы групповой маршрутизации. Используя некоторый протокол групповой маршрутизации, маршрутизатор интернет-провайдера сообщает эти сведения другим маршрутизаторам. Таким образом, становится возможным передача требуемого группового трафика маршрутизатору интернет-провайдера. Маршрутизатор провайдера передает групповой трафик корпоративному маршрутизатору, который, в свою очередь, передает его хостам интрасети, принадлежащим к требуемым группам вещания.
Рис. 15.6. Организация группового вещания в сценарии "интрасеть и Интернет"
Под одноадресной маршрутизацией понимается процесс передачи сообщений между подсетями, в котором сообщение адресовано только одному заданному получателю. Вся задача маршрутизации в этом случае сводится к доставке пакета получателю и выбору оптимального маршрута из множества возможных.
Окончательная конфигурация маршрутизируемой сети с вызовом по требованию изображена на рис. 15.8. Указаны все интерфейсы с вызовом по требованию, статические маршруты и учетные записи Windows для офисов в Москве и Санкт-Петербурге.
Рис. 15.8. Результирующая конфигурация
При помощи пересылки группового трафика маршрутизатор передает пакеты группового вещания в подсети, где имеются хосты, ожидающие групповой трафик, или в том направлении, где имеются хосты, ожидающие этот трафик. Предотвращается передача трафика группового вешания в подсети, где отсутствуют хосты, слушающие групповой трафик. Совершенно очевидно, что .пля выполнения этой операции маршрутизатор должен иметь соответствующие механизмы. Применительно к Windows Server 2003 поддержка операции пересылки группового трафика реализуется как на уровне сетевых интерфейсов, так и на уровне службы маршрутизации.
На уровне сетевых интерфейсов поддержка группового вещания реализуется в рамках стека протоколов TCP/IP. Процесс передачи группового трафика регламентируется специальным протоколом, являющимся частью данного стека — Internet Group Management Protocol (JGMP, Межсетевой протокол управления группой). В целом, компоненты стека протоколов TCP/IP реализуют следующие функции групповой пересылки:
прослушивание группового трафика. Модуль стека протоколов TCP/IP прослушивает весь групповой трафик на всех сконфигурированных для этого интерфейсах, устанавливая сетевую плату в режим, в котором она способна принимать все пакеты, проходящие по локальной сети. Все групповые пакеты, полученные платой сетевого интерфейса, передаются на сетевой уровень для последующей обработки. Следует заметить, что в подобном режиме могут работать далеко не все сетевые платы;
пересылка групповых пакетов на соответствующий интерфейс. После получения группового пакета TCP/IP обращается к таблице групповой пересылки, чтобы решить, на какой из интерфейсов направить данный пакет.
Приложения на компьютере, работающем под управлением Windows Server 2003, генерирующие групповой трафик, должны создавать IP-пакеты с соответствующим групповым IP-адресом, таким же, как IP-адрес получателя. Соответственно, приложения, получающие групповой трафик, должны сообщить модулю протокола TCP/IP, что они слушают весь трафик в ожидании указанного группового IP-адреса.
Отправителя и получателя может разделять произвольное количество маршрутизаторов. При этом процесс передачи сообщения от одного маршрутизатора другому называется "прыжком" (hop). Каждый маршрутизатор обладает информацией о структуре сети на расстоянии одного прыжка. Другими словами, маршрутизатор не обладает информацией о точном местоположении требуемого хоста. В большой сети, да еще и с интенсивно меняющейся структурой (как, например, Интернет), это было бы невозможно. Вместо этого, маршрутизатор обладает информацией о соседних маршрутизаторах и о том, кому из них необходимо передать сообщение для последующей доставки в той или иной ситуации. Эта информация хранится в специальной таблице, которая носит название таблицы маршрутизации (routing table).
Таблицы маршрутизации используются для принятия решения о том, как именно будет доставлено то или иное сообщение. Наличие этих таблиц не является исключительным свойством маршрутизатора. В сети TCP/IP любой хост (даже не являющийся маршрутизатором) может также располагать таблицей маршрутизации, которая используется с целью определения оптимального маршрута передачи сообщений. Так, скажем, если в подсети имеется три маршрутизатора, хост использует таблицу маршрутизации для того, чтобы выбрать из них наиболее оптимальный для доставки сообщения.
Механизм маршрутизации с вызовом по требованию может быть использован для организации пересылки маршрутизируемого трафика через Интернет путем организации виртуальной частной сети (Virtual Private Network, VPN) между двумя абонентами. Две подсети могут организовать маршрутизацию внутреннего трафика через Интернет (в принципе — через любую открытую внешнюю сеть) по защищенному каналу, созданному посредством протоколов туннелирования L2TP или РРТР. Защищенный канал создается каждый раз автоматически, когда появляется трафик, адресованный в заданном направлении. Один из маршрутизаторов, выступающий в качестве VPN-клиента, устанавливает коммутируемое соединение, чтобы дозвониться до интернет-провайдера. После установки соединения маршрутизатор создает защищенный канал (посредством некоторого протокола туннелирования) с маршрутизатором-концентратором, имеющим постоянное соединение с Интернетом. После того как создан защищенный канал (т. е. подключение виртуальной частной сети), процесс взаимодействия двух подсетей реализуется по стандартной схеме маршрутизации с вызовом по требованию.
Пример реализации данного сценария приведен на рис. 15.9.
Рис. 15.9. Организация виртуальной частной сети при помощи механизма маршрутизации с вызовом по требованию
Рассмотрение процесса настройки маршрутизации с вызовом по требованию лучше всего проводить на примере. Обратимся к рис. 15.7, на котором изображена конфигурация гипотетической маршрутизируемой сети.
Рис. 15.7. Пример маршрутизации с вызовом по требованию
В московском офисе установлен компьютер, работающий под управлением Windows Server 2003. Этот компьютер сконфигурирован в качестве сервера удаленного доступа и маршрутизатора с вызовом по требованию. Все компьютеры в московском офисе находятся в подсети 173.75.73.0 (маска подсети 255.255.255.0). К маршрутизатору в Москве (далее называемому Маршрутизатором 1) через СОМ 1-порт подключен модем, доступ к которому осуществляется по телефону (095)123-4567.
В санкт-петербургском офисе также установлен компьютер, находящийся под управлением Windows Server 2003 и функционирующий в качестве сервера удаленного доступа и маршрутизатора с вызовом по требованию. Все компьютеры в санкт-петербургском офисе находятся в подсети 173.75.72.0 (маска подсети 255.255.255.0). Через СОМ2-порт к санкт-петербургскому маршрутизатору (далее называемому Маршрутизатором 2) подключен модем, использующий номер телефона (812)765-4321.
По окончании процесса настройки механизма маршрутизации пользователь компьютера с IP-адресом 173.75.73.5 должен иметь возможность установить соединение по запросу с компьютером с IP-адресом 173.75.72.10 и наоборот.
Далее мы рассмотрим процесс ручной настройки механизма маршрутизации с вызовом по требованию. Однако настоятельно рекомендуется использовать Demand Dial Interface Wizard (Мастер интерфейса вызова по требованию), чтобы автоматизировать процесс настройки. Этот мастер выполняет все шаги конфигурации, описанные ниже, кроме создания статического маршрута.
В межсетевой среде каждая подсеть может быть соединена с произвольным количеством других подсетей посредством маршрутизаторов. Суть процесса маршрутизации сводится к тому, что два хоста, разделенных друг с другом любым произвольным количеством маршрутизаторов (другими словами, находящиеся в разных подсетях), могут взаимодействовать друг с другом. Всю организацию процесса доставки пакета от одного хоста другому берут на себя маршрутизаторы. Рассмотрим основные принципы, лежащие в основе процесса маршрутизации сообщений. Сразу оговоримся, что разговор будет идти, прежде всего, о маршрутизации IP-трафика. Подавляющее большинство сетевых служб Windows Server 2003 функционирует на базе стека протоколов TCP/IP, получившего широкое распространение именно благодаря простоте организации межсетевого взаимодействия (как известно, самое большое объединение сетей — Интернет, тоже основывается на этом стеке протоколов). Тем не менее, заметим, что в своей основе принципы маршрутизации являются общими для большинства стеков протоколов.
В зависимости от количества вовлеченных получателей стек протоколов TCP/IP поддерживает два способа маршрутизации: одноадресная и многоадресная маршрутизация. Соответственно, мы рассмотрим принципы маршрутизации применительно к каждому из способов в отдельности.
Используем описанный выше сценарий для того, чтобы рассмотреть процесс установки соединения с вызовом по требованию. Для определенности будем считать, что хост с адресом 173.75.73.5 пытается получить доступ к ресурсам хоста с адресом 173.75.72.10. При этом выполняется следующая последовательность действий:
1. Пакеты от 173.75.73.5, предназначенные для 173.75.72.10, передаются Маршрутизатору 1.
2. Маршрутизатор 1 получает пакет от 173.75.73.5 и проверяет собственную таблицу маршрутизации. Маршрут к 173.75.72.10 предписывает передавать пакеты через интерфейс DD_SPb.
3. Маршрутизатор 1 проверяет состояние интерфейса DD_SPb и обнаруживает его в разъединенном состоянии.
4. Маршрутизатор 1 извлекает информацию о конфигурации интерфейса DD_SPb с вызовом по требованию.
5. Полученная информация используется Маршрутизатором 1 для инициации соединения с вызовом по требованию. Маршрутизатор 1 использует модем, подключенный к СОМ1, чтобы набрать номер (812)765-4321.
6. Маршрутизатор 2 отвечает на входящий вызов.
7. Маршрутизатор 2 запрашивает идентификационную информацию по входящему соединению.
8. Маршрутизатор 1 посылает имя учетной записи пользователя "DD_Moscow" и соответствующий ей пароль.
9. После получения идентификационной информации Маршрутизатор 2 проверяет имя пользователя и пароль в базе данных системы безопасности Windows и определяет, что Маршрутизатор 1 имеет разрешение на установление входящего соединения.
10. Теперь Маршрутизатор 2 должен определить, является ли субъект, установивший входное соединение, сетевым клиентом или маршрутизатором, устанавливающим соединение с вызовом по требованию. Маршрутизатор 2 просматривает список интерфейсов с вызовом по требованию и ищет интерфейс, который соответствует имени пользователя, посланному Маршрутизатором 1 как часть идентификационной информации. Маршрутизатор 2 находит интерфейс с вызовом по требованию "DD_Moscow", который соответствует имени пользователя.
11. Маршрутизатор 2 переводит интерфейс с вызовом по требованию от DD_Moscow в состояние "соединен".
В пространстве имен оснастки Routing and Remote Access в контекстном меню объекта Static Routes (Статические маршруты) выберите пункт Show IP Routing Table (Показать таблицу IP-маршрутизации) (рис. 15.15).
Рис. 15.15. Просмотр таблицы маршрутизации
В табл. 15.1 перечислены доступные в оснастке Routing and Remote Access категории просматриваемой информации, которые можно получить из контекстного меню соответствующего компонента.
Таблица 15.1. Категории просматриваемой информации
Компонент | Пункт меню | Категория информации | |||
IP Routing/General (Маршрутизация IP/ Общие)   |
Show TCP/IP Information | Статистическая информация о работе компонентов стека протоколов TCP/IP (количество пакетов различных протоколов, обработанных службой) | |||
Show Multicast Forwarding Table | Содержимое таблицы пересылки группового трафика | ||||
Show Multicast Statistics | Статистическая информация о трафике группового вещания, обрабатываемом службой | ||||
IP Routing/ General/ <Интерфейс> | Show TCP/IP Information | Статистическая информация о работе компонентов стека протоколов TCP/IP на уровне отдельного интерфейса | |||
Show Address Translations | Информация о работе механизма трансляции сетевых адресов | ||||
Show IP Addresses | Информация об IP-адресах, выделенных интерфейсу | ||||
Show IP Routing Table | Таблица маршрутизации данного интерфейса | ||||
Show TCP Connections | Установленные TCP-соединения | ||||
Show UPD Listener Ports | Прослушиваемые UDP-порты | ||||
OSPF | Show Areas | Области OSPF | |||
Show Link-state Database | Содержимое базы данных состояния связей | ||||
Show Neighbors | Информация о соседних маршрутизаторах | ||||
Show Virtual Interfaces | Информация о виртуальных интерфейсах | ||||
RIP | Show Neighbors | Информация о соседних маршрутизаторах | |||
IGMP/ <Интерфейс> | Show Interface Group Table | Информация о группах вещания, членом которых является данный интерфейс | |||
NAT/Basic Firewall | Show DHCP Allocator Information | Статистика по работе механизма выделения IP-адресов через механизм NAT | |||
Show DNS Proxy Information | Статистика по работе механизма разрешения доменных имен посредством механизма NAT | ||||
NAT/Basic Firewall/ <Интерфейс> | Show Mapping | Информация о существующих преобразованиях (отображениях) |
В самом, простом сценарии две или несколько подсетей могут быть соединены между собой при помощи одного маршрутизатора. Для решения этой задачи вполне можно использовать маршрутизатор на базе Windows Server 2003. На рис. 15.2 показана простая конфигурация сети с маршрутизатором Windows, соединяющим два сегмента ЛВС (Сети А и В). В данном сценарии используется только один маршрутизатор. Как следствие, отсутствует проблема обмена информацией о маршрутах между маршрутизаторами. Поэтому не требуется развертывание протоколов маршрутизации.
Рис. 15.2. Простой сценарий маршрутизации
Протокол OSPF (Open Shortest Path First) разрабатывался как механизм, посредством которого маршрутизаторы могут обмениваться информацией о содержимом таблиц маршрутизации в большой межсетевой среде. Протокол OSPF является протоколом маршрутизации с объявлением состояния канала связи. В основе функционирования протокола OSPF лежит алгоритм "первоочередного обнаружения кратчайшего пути" (Shortest Path First, SPF), который используется для вычисления маршрутов в таблице маршрутизации. Используя алгоритм SPF, маршрутизатор вычисляет кратчайший (т. е. обладающий наименьшей стоимостью) путь ко всем подсетям в межсетевой среде. В маршрутах, рассчитанных при помощи алгоритма SPF, всегда отсутствуют циклы.
В отличие от протокола RIP, протокол OSPF поддерживает "карту" корпоративной сети. Эта карта модифицируется каждый раз, когда происходит какое-либо изменение в структуре сети. Эта карта, называемая базой данных состоянии связей (link state database), синхронизирована для всех OSPF-маршрутизаторов и используется, чтобы вычислить маршруты в таблице маршрутизации. Изменения в структуре сети приводят к немедленному распространению сведений об этих изменениях на все маршрутизаторы, которые, в свою очередь, обновляют собственный экземпляр базы данных состояния связей. Обновление базы данных состояний связей приводит к повторному пересчету таблицы маршрутизации.
Начиная свою работу, каждый маршрутизатор извещает другие маршрутизаторы о своем существовании, отправляя специальное сообщение во все доступные подсети. Другие маршрутизаторы получают это сообщение и обновляют свой экземпляр базы данных о состоянии связей. Фактически указанная база данных и формируется на основании этих сообщений.
Поскольку размер базы данных состояний связей растет, требования к объему памяти и время на вычисление маршрута увеличиваются. Чтобы решить эту проблему, OSPF рассматривает межсетевую среду как совокупность областей (под областью в данном случае понимается совокупность непрерывных сетей), соединенных друг с другом через некоторую базовую область (backbone area). Все маршрутизаторы, принадлежащие к одной области, обладают идентичными репликами базы данных состояния связей.
Протокол обмена информацией о маршрутизации (Routing Information Protocol, RIP) разрабатывался как механизм, посредством которого маршрутизаторы могут обмениваться информацией об обновлениях таблиц маршрутизации. Этот механизм изначально предполагался для использования в сетях относительно небольшого размера (это верно для RIP версии 1).
Протокол RIP использует следующую схему построения таблицы маршрутизации. Первоначально таблица маршрутизации каждого маршрутизатора включает в себя маршруты только для тех подсетей, что физически подсоединены к маршрутизатору. Используя протокол RIP, маршрутизатор периодически отправляет другим маршрутизаторам объявления, содержащие информацию о содержимом собственной таблицы маршрутизации. RIP версии 1 использует для передачи объявлений широковещательные IP-пакеты. RIP версии 2 позволяет использовать для объявлений также пакеты группового вещания. Каждый маршрутизатор рассылает подобные объявления периодически с интервалом в 30 секунд.
Маршрутизаторы, использующие протокол RIP, могут также сообщать информацию о маршрутизации при помощи триггерных обновлений. Триггер-ные обновления инициируются, когда происходит изменение топологии сети и посылается обновленная информация о маршрутизации, которая отражает эти изменения. Триггерные обновления происходят немедленно, следовательно, информация о маршрутизации обновится раньше, чем произойдет следующее периодическое объявление. Например, когда маршрутизатор обнаруживает установление соединения или отказ соседнего маршрутизатора, он модифицирует собственную таблицу маршрутизации и рассылает обновленные маршруты. Каждый маршрутизатор, получающий триггерное обновление, изменяет собственную таблицу маршрутизации и распространяет изменение.
Основное преимущество R1P заключается в простоте развертывания и конфигурирования. В качестве недостатка RIP версии 1 можно отметить наличие жесткого ограничения на размер сети. Протокол R1P может быть использован в сети, в которой два хоста разделены не более чем 15 маршрутизаторами. Другими словами, маршрутизатор, использующий протокол RIP для построения таблицы маршрутизации, "знает" только о тех подсетях, что расположены на расстоянии не более 15 переходов. Подсети, расположенные на расстоянии 16 или более пересылок, считаются недостижимыми.
Среди существующего многообразия протоколов маршрутизации Windows Server 2003 поддерживает только два:
протокол RIP версии 1 и 2;
протокол OSPF.
Рассмотрим эти протоколы более подробно.
Для запуска мастера необходимо в пространстве имен оснастки Routing and Remote Access вызвать контекстное меню объекта, ассоциированного с сервером, и выбрать в нем пункт Configure and Enable Routing and Remote Access (Конфигурировать и разрешить маршрутизацию и удаленный доступ). На странице Custom Configuration (Конфигурирование) мастера необходимо выбрать переключатель Custom configuration (Заказная конфигурация). В следующем окне мастера (рис. 15.10) необходимо установить флажки напротив тех компонентов, которые должны быть активизированы на конфигурируемом сервере.
Рис. 15.10. Выбор режимов работы службы маршрутизации и удаленного доступа
По окончании своей работы мастер автоматически запустит на сервере службу маршрутизации и удаленного доступа.
Если на компьютере имеются входящие подключения (incoming connections), мастер Routing and Remote Access Server Setup Wizard запустить невозможно. Нужно сначала удалить их, а затем запустить мастер снова.
Если для сетевых интерфейсов компьютера, находящегося под управлением Windows Server 2003, установлен стек протоколов AppleTalk, служба маршрутизации и удаленного доступа этого компьютера может быть использована для организации системы маршрутизации AppleTalk-трафика.
В панели пространства имен оснастки Routing and Remote Access необходимо в контекстном меню объекта AppleTalk Routing (Маршрутизация AppleTalk) выбрать пункт Enable AppleTalk Routing (Разрешить маршрутизацию Apple-Talk). Система активизирует соответствующие механизмы.
Маршрутизируемая межсетевая OSPF-среда использует протокол маршрутизации OSPF, чтобы динамически пересылать информацию о маршрутизации между маршрутизаторами. Правильно развернутая OSPF-среда автоматически добавляет и удаляет маршруты, когда из межсетевой среды добавляются или удаляются сети. Необходимо, чтобы каждый маршрутизатор был правильно настроен: OSPF-объявления маршрутов должны распространяться между OSPF-маршрутизаторами в межсетевой среде.
Рис. 15.13. Определение конфигурации протокола OSPF для выбранного сетевого интерфейса
Для установки на маршрутизаторе протокола OSPF следует в контекстном меню объекта General (Общие) выбрать пункт New Routing Protocol (Новый протокол маршрутизации). В открывшемся окне необходимо выбрать из списка элемент Open Shortest Path First (OSPF). Система выполнит установку всех необходимых компонентов. В пространстве имен оснастки появится новый контейнер — OSPF.
После того как протокол установлен на маршрутизаторе, нужно определить сетевые интерфейсы, для которых он будет активизирован. В процессе добавления интерфейса система предложит определить конфигурацию протокола OSPF для этого интерфейса (рис. 15.13). В поле Area ID администратору необходимо выбрать область OSPF, к которой будет отнесен данный маршрутизатор.
Протокол маршрутизации RIP используется для динамического распространения среди маршрутизаторов информации о существующих маршрутах. Правильно реализованная среда с RIP автоматически добавляет и удаляет маршруты, как только сети добавляются и удаляются из межсетевой среды. Необходимо убедиться, что каждый маршрутизатор правильно сконфигурирован — так, чтобы объявления о маршрутах протокола RIP были бы посланы и получены всеми RIP-маршрутизаторами в сети.
Для установки на маршрутизаторе протокола RIP необходимо в контекстном меню объекта General (Общие) выбрать пункт New Routing Protocol (Новый протокол маршрутизации). В открывшемся окне следует выбрать из списка элемент RIP Version 2 for Internet Protocol. Система выполнит установку всех необходимых компонентов. В пространстве имен оснастки появится новый контейнер — RIP.
После того как протокол установлен на маршрутизаторе, необходимо определить сетевые интерфейсы, для которых он будет активизирован. В процессе добавления интерфейса (команда New Interface в контекстном меню протокола), система предложит определить конфигурацию протокола RIP для этого интерфейса. В подавляющем большинстве случаев администратор может использовать значения, предлагаемые по умолчанию.
Хотя, как уже неоднократно упоминалось, в Windows Server 2003 отсутствует реализация протоколов групповой маршрутизации, в определенных ситуациях средств операционной системы (компонент маршрутизации протокола IGMP) может быть достаточно для развертывания в сети механизма группового вещания. При этом возможны следующие сценарии:
интрасеть с одним маршрутизатором;
интрасеть и Интернет.
Далее мы рассмотрим эти сценарии более подробно.
В качестве примера рассмотрим два типичных сценария организации процесса маршрутизации:
простой сценарий маршрутизации;
сценарий с несколькими маршрутизаторами.
В более сложном сценарии для объединения множества подсетей потребуется несколько маршрутизаторов. В большинстве случаев этот сценарий может быть также решен при помощи программных маршрутизаторов на базе Windows Server 2003. При этом необходимо будет использовать специализированные протоколы маршрутизации (либо, в случае статической маршрутизации, сконфигурировать на всех маршрутизаторах вручную таблицы маршрутизации).
Пример рассматриваемого сценария изображен на рис. 15.3. В предложенной конфигурации имеются три сети (Сети А, В, и С) и два маршрутизатора. Маршрутизатор 1 подключен к Сетям А и В, Маршрутизатор 2 — к Сетям В и С. Маршрутизатор 1 должен известить Маршрутизатор 2 о том, что Сеть А может быть достигнута через Маршрутизатор 1, а Маршрутизатор 2 должен сообщить Маршрутизатору 1, что Сеть С может быть достигнута через Маршрутизатор 2. Маршрутизаторы обменяются этой информацией автоматически, в случае, если используются протоколы маршрутизации, например RIP или OSPF. Когда пользователь в Сети А хочет установить соединение с пользователем в Сети С, компьютер пользователя в Сети А передает пакет на Маршрутизатор 1. Маршрутизатор 1 затем передает пакет Маршрутизатору 2. Тот, в свою очередь, передает пакет далее компьютеру пользователя в Сети С.
Рис. 15.3. Сценарий с двумя маршрутизаторами и тремя сетями
У администратора имеется две возможности для создания статических маршрутов:
при помощи утилиты командной строки Route.exe;
используя графический интерфейс оснастки Routing and Remote Access. В контекстном меню объекта Static Route (Статический маршрут) необходимо выбрать пункт New Static Route (Создать статический маршрут). В открывшемся окне требуется определить обязательные параметры маршрута (рис. 15.12).
Если создается маршрут для интерфейса с вызовом по требованию, поле Gateway (Шлюз по умолчанию) окажется недоступным.
Рис. 15.12. Создание статического маршрута
Статическая маршрутизируемая IP-сеть не использует протоколы маршрутизации, поскольку вся информация о маршрутизации хранится в статической таблице на каждом маршрутизаторе. Чтобы любые два произвольных хоста в сети могли взаимодействовать между собой, каждый маршрутизатор должен иметь такую таблицу маршрутов.
Статическая маршрутизируемая IP-среда лучше всего подходит для небольшой сети с редко изменяющейся структурой, в которой отсутствуют альтернативные маршруты. Статическая маршрутизируемая среда может применяться для:
сети малого предприятия;
сети домашнего офиса;
филиала с одной сетью.
Вместо реализации протокола маршрутизации через узкополосный канал связи, одиночный маршрут по умолчанию на маршрутизаторе филиала гарантирует, что весь трафик, не предназначенный для компьютера в сети филиала, будет направлен в основной офис.
Недостатки статической маршрутизации:
Отсутствие отказоустойчивости. Если в силу каких-либо причин один из маршрутизаторов выходит из строя или становится недоступным коммуникационный канал, статический маршрутизатор не сможет как-то отреагировать на неисправность. Более того, другие маршрутизаторы в сети не будут знать о неисправности и будут продолжать передавать данные по недоступному маршруту. В сетях малого офиса (например, с двумя маршрутизаторами и тремя сетями, соединенными в ЛВС) подобные ситуации могут решаться администратором оперативно. В крупных сетях более предпочтительным оказывается использование специальных протоколов маршрутизации;
Непроизводительные административные затраты. Если добавляется новая подсеть или удаляется из межсетевой среды существующая, маршруты к ней должны быть вручную добавлены или удалены. Если добавляется новый маршрутизатор, то он должен быть правильно сконфигурирован для маршрутизации в межсетевой среде.
Рассмотрим структуру таблицы маршрутизации на следующем примере:
Сеть назначения | Маска подсети | Шлюз | Интерфейс | Метрика | |||||
0.0.0.0 | 0.0.0.0 | 0.0.0.0 | fffffffff | 1 | |||||
10.0.0.0 | 255.255.255.0 | 10.0.0.1 | 10.0.0.1 | 30 | |||||
10.0.0.1 | 255.255.255.255 | 127.0.0.1 | 127.0.0.1 | 30 | |||||
10.255.255.255 | 255.255.255.255 | 10.0.0.1 | 10.0.0.1 | 30 | |||||
127.0.0.0 | 255.0.0.0 | 127.0.0.1 | 127.0.0.1 | 1 | |||||
224.0.0.0 | 240.0.0.0 | 10.0.0.1 | 10.0.0.1 | 30 | |||||
255.255.255.255 | 255.255.255.255 | 10.0.0.1 | 10.0.0.1 | 1 |
Каждая запись в таблице маршрутизации (представляющая собой информацию о маршруте) состоит из информационных полей, перечисленных ниже.
Сеть назначения (Network Destination). Данное поле содержит сведения об адресе хоста-получателя пакета или сети, в которой этот хост располагается. Принимая решение о маршрутизации пакета, система просматривает именно это поле. Если в данном поле не будет найдено записи о конкретном адресе сети или хоста, маршрутизатором будет использован маршрут по умолчанию.
Маска подсети (Netmask). Это поле в сочетании с предыдущим полем используется для вычисления идентификатора IP-сети.
Шлюз (Gateway). В этом поле указывается адрес, по которому будет должен быть передан согласно данному маршруту. Адрес пересылки может быть аппаратным адресом или адресом в межсетевой среде. В большинстве случаев в этом поле указывается следующий в цепочке маршрутизатор, который должен будет принять решение о дальнейшей маршрутизации сообщения.
Интерфейс (Interface). В этом поле указывается сетевой интерфейс, с которого будет осуществляться передача сообщения согласно данному маршруту. Данное поле необходимо в ситуации, когда маршрутизатор имеет множество сетевых интерфейсов, подключенных к разным подсетям. Фактически данное поле указывает, в какую именно подсеть необходимо передать сообщение.
Метрика (Metric). Стоимость маршрута, характеризующая меру его предпочтения. Из множества альтернативных маршрутов будет выбран тот, что обладает наименьшей стоимостью (т. е. меньшим значением метрики). Некоторые алгоритмы маршрутизации сохраняют только один маршрут для любого идентификатора сети в таблице маршрутизации, даже когда существует несколько маршрутов. В этом случае метрика используется маршрутизатором, чтобы определить какой именно маршрут необходимо сохранить в таблице маршрутизации.
Рассмотрим некоторые вопросы, связанные с контролем за работой распределенной инфраструктуры маршрутизаторов в корпоративной сети. Операционная система Windows Server 2003 предоставляет администратору возможности централизованного управления всей инфраструктурой маршрутизаторов (реализованных на базе этой операционной системы) при помощи оснастки Routing and Remote Access.
Записи в таблице маршрутизации называются маршрутами. При этом существует три типа маршрутов.
Маршрут к хосту, или узловой маршрут (Host Route). Этот тип маршрута определяет путь доставки пакета, адресованного хосту с конкретным сетевым адресом. Маршруты к хостам обычно используются для создания настраиваемых маршрутов к определенным компьютерам, а также для управления или оптимизации сетевого трафика.
Маршрут к сети, или сетевой маршрут (Network Route). Данный тип маршрута используется для определения способа доставки пакета в подсеть с определенным адресом. Большую часть содержимого таблицы маршрутизации представляют собой маршруты данного типа.
Маршрут по умолчанию (Default Route). Маршрут по умолчанию используется, когда не найдены никакие другие маршруты в таблице маршрутизации. Маршрут по умолчанию используется в ситуации, когда в таблице маршрутизации отсутствует соответствующий маршрут по идентификатору сети или маршрут к хосту по адресу получателя. Маршрут по умолчанию упрощает конфигурацию компьютеров. Вместо конфигурирования компьютера и настройки маршрутов для всех идентификаторов сетей в межсетевой среде используется одиночный маршрут по умолчанию для пересылки всех пакетов в сеть получателя или по адресу в межсетевой среде, который не был найден в таблице маршрутизации.
Администратор может подключить оснастку Routing and Remote Access к любому маршрутизатору, реализованному на базе Windows Server 2003, и выполнить его удаленное конфигурирование. Для этого в контекстном меню корневого объекта пространства имен оснастки необходимо выбрать пункт Add Server (Добавить сервер).
В открывшемся окне установите переключатель в одно из следующих положений:
The following computer (Указанный ниже компьютер). В этом случае администратору потребуется задать имя компьютера или указать его IP-адрес;
All Routing and Remote Access computers (Все компьютеры маршрутизации и удаленного доступа). При этом необходимо указать домен, в котором находится интересующий сервер;
Browse Active Directory (Обзор Active Directory). Система предложит выбрать типы серверов, которые следует найти, в диалоговом окне Find Routers or Remote Access Servers (Поиск маршрутизаторов или серверов удаленного доступа).
После этого оснастка будет подключена к выбранному серверу, будет загружена информация о его конфигурации, и он станет доступным для администрирования.
Управление службами IIS может выполняться как локально, так и удаленно. Согласно концепции Microsoft, администратор может осуществлять управление всеми экземплярами служб IIS, развернутыми в корпоративной сети, с одной рабочей станции. В качестве основного административного инструмента администратор может использовать оснастку Internet Information Services (IIS) Manager. В случае, когда соединение с сервером устанавливается через Интернет или через брандмауэр, администратор может использовать утилиту Remote Administration (HTML) (Удаленное администрирование (HTML)). Данная утилита доступна через интернет-браузер и позволяет настраивать различные свойства узлов. Однако необходимо помнить о том, что, хотя утилита Remote Administration (HTML) и предоставляет большинство возможностей оснастки, отдельные операции с ее помощью не могут быть выполнены.
Утилита Remote Administration (HTML) может быть использована только для управления службами IIS 6.0. Оснастка Internet Information Services (IIS) Manager может использоваться для управления IIS версий 4.0, 5.0, 5.1 и 6.0. Чтобы иметь возможность использования утилиты Remote Administration (HTML), администратор должен вручную выполнить установку на сервере этого компонента IIS.
Для удаленного управления IIS можно также использовать возможности служб терминалов (Terminal Services). Удаленное управление может производиться с компьютера под управлением любой ОС, для которой существует клиент служб терминалов Microsoft, при этом на удаленном компьютере не нужно устанавливать никакие средства администрирования IIS.
Рассмотрим основные операции, связанные с администрированием служб IIS. В первую очередь необходимо рассмотреть инструментарий, который имеется в распоряжении администратора.
В рамках одного экземпляра служб IIS может быть создано несколько веб-и/или FTP-сайтов (узлов), при этом можно применять разные подходы:
определив один адрес для всех сайтов, выделить для каждого из сайтов разные номера портов;
использовать несколько IP-адресов, назначенных одному сетевому адаптеру;
назначить разные доменные имена для одного IP-адреса и одного сетевого адаптера.
Предположим, что в корпоративной интрасети системный администратор установил на сервере компании систему Windows Server 2003 со службами IIS и создал единственный узел по умолчанию, который имеет адрес http://information. Системный администратор может создать два дополнительных информационных узла, по одному для каждого отдела, например, для отдела продаж (Sales) и для отдела закупок (Purchase).
Хотя оба узла расположены на одном компьютере (Information), они являются автономно функционирующими узлами (сайтами). Эти узлы имеют раздельные настройки защиты, как если бы они находились на разных компьютерах, поскольку каждый узел имеет собственные параметры доступа и настройки разрешений по администрированию. Кроме того, административные задачи могут быть распределены между членами каждого отдела.
Часто может потребоваться динамически изменять содержание узла после того, как содержание было затребовано, но до передачи его браузеру, US включает две возможности, которые обеспечивают эту функциональность — серверные включения (Server-Side Includes, SSI) и Microsoft Active Server Pages (ASP) — для создания сценариев-посредников.
Используя SSI. можно выполнять ряд действий — от динамического отображения текущего времени на странице до выполнения заданных системных команд каждый раз, когда запрашивается данный ресурс (страница). SSI-команды, называемые директивами, указываются на странице в процессе ее разработки. Когда страница запрашивается, веб-сервер анализирует синтаксис всех директив на странице, а затем выполняет их. Наиболее часто используется директива включения, что позволяет включать содержимое файла внутрь страницы. Например, если требуется, чтобы в заголовок страницы вставлялась реклама, можно при помощи SSI включить исходный текст рекламы. Чтобы модифицировать рекламу, нужно изменить только файл, содержащий исходный текст рекламы. Для применения SSI не нужно знать язык создания сценариев — синтаксис директив очень прост.
ASP-страницы — серверная среда создания сценариев, позволяющая динамически изменять содержимое узла. Хотя технология ASP предназначена прежде всего для разработки веб-приложений, она предоставляет много возможностей для создания более простых в управлении узлов. Например, с помощью ASP можно отслеживать посещение узла пользователями (их атрибуты — IP-адрес, тип браузера, назначенные cookies и т. п.) или настраивать содержимое узла под возможности браузера. Однако, в отличие от SSI, ASP требует применения языка создания сценария, например VBScript или JScript.
Служба индексирования поддерживает полную и краткую формы запросов. Запросы в полной форме создаются с использованием тэгов (признаков) начала и окончания запроса, которые обозначаются фигурными скобками ({}). Тэги запроса служат для открытия и закрытия предложения запроса. Тэги запроса могут также включать уточняющие атрибуты или параметры.
Длинная форма и краткие запросы. Большинство операторов в языке запросов имеет полную форму и соответствующую ей краткую. Например, Sdocauthor — краткое имя свойства Author, в то время как {prop name=DocAuthor} — длинная форма.
Символы режима в кратких запросах. В кратких запросах следующие символы указывают режим (табл. 16.7).
Таблица 16.7. Режим запроса в краткой форме
Символ | Режим | ||
@ | Запрос на поиск фразы (эквивалент {phrase}) | ||
# | Запрос с регулярным выражением (эквивалент {regex}) | ||
$ | Свободный текстовый запрос (эквивалент {freetext}) |
Служба NNTP реализует поддержку клиент-серверного протокола Network News Transfer Protocol (NNTP), при этом она выступает в роли сервера, а программа Microsoft Outlook Express — пример типичного клиента.
Клиенты подключаются к службе NNTP по протоколу TCP/IP. Обычно по умолчанию при нормальном подключении используется TCP-порт 119, для шифрованных SSL-подключений — TCP-порт 563.
Служба индексирования
Феноменальный рост сети Интернет и развитие технологий интрасетей создали огромный спрос на специализированные средства создания узлов. Если пользователь плохо знаком с основами публикации в Интернете, выбрать надлежащий инструмент для создания узла может быть достаточно сложно. Мощного сервера, предназначенного для размещения готовых страниц, недостаточно для успешного пуска и эксплуатации информационного узла в Интернете, требуются также и средства публикации. Ниже перечислены некоторые возможности создания и публикации веб-страниц.
Microsoft FrontPage 2002. Удобный, простой и мощный инструмент создания страниц и публикации их в сети. Обладает возможностями WYSIWYG (What You See Is What You Get, принцип "что видишь — то и получишь", т. е. визуальное создание с непосредственным отображением результата), тесно интегрирован с Microsoft Office XP и со службами IIS.
Преобразование в HTML. Привлекательная альтернатива созданию страниц — преобразование существующих документов в документы HTML. Применяя к файлам текстового процессора и электронных таблиц конвертер, можно сразу помещать такого рода страницы в сети, на вебсервере. Многие программы обработки текстов, например Microsoft Word XP (2002), имеют встроенные возможности для преобразования документов в формат HTML. Однако большинство конвертеров только добавляет тэги форматирования HTML к тексту, плохо сохраняя первоначальный вид документов. Конвертеры — удобные средства, они особенно полезны, если планируется публиковать большую часть существующей документации, которая не нуждается в частом изменении.
Текстовый редактор. Страницы можно создавать почти в любом стандартном текстовом редакторе, например, в Notepad (Блокнот), вводя тэги HTML и содержимое страниц, сохраняя в файле, а затем открывая их в браузере для предварительного просмотра. Некоторые опытные пользователь и предпочитают этот метод, потому что он обеспечивает более тонкий контроль форматирования страниц и позволяет применять последние технологические новшества Интернета.
В рамках операционной системы одни процессы, ассоциированные с отдельными компонентами IIS, функционируют в пользовательском режиме (user mode), а другие в режиме ядра (kernel mode).
Драйвер HTTP.sys. Функционирует в режиме ядра операционной системы, осуществляя прослушивание протокола HTTP. Данный драйвер является частью сетевой подсистемы Windows Server 2003, являясь, тем не менее, ключевым компонентом IIS 6.0. Каждый веб-сайт, созданный в рамках IIS, регистрируется драйвером HTTP.sys, который перенаправляет веб-запросы от пользователей процессам, функционирующим в пользевательском режиме. Аналогичным образом HTTP.sys возвращает пользователям ответы на их запросы.
Компонент управления и мониторинга службы WWW. Данный компонент представляет собой часть службы WWW, отвечающую за управление процессами. Компонент реализует функции управления службой WWW и взаимодействует с метабазой IIS для получения информации о конфигурации служб (полученная информация либо передается через HTTP.sys, либо используется для управления рабочими процессами). Другой функцией компонента управления и мониторинга службы WWW является управление рабочими процессами.
Рабочие процессы. Рабочий процесс представляет собой приложение, функционирующее в пользовательском режиме. Рабочий процесс реализуется в виде запускаемого файла W3vvp.exe и контролируется компонентом управления и мониторинга службы WWW. Рабочие процессы используют драйвер HTTP.sys для взаимодействия с клиентами (получение запросов и передача запрашиваемых данных).
Процесс Inetinfo.exe. Данный процесс функционирует в пользовательском режиме. Этот процесс обеспечивает работу служб FTP, SMTP, NNTP и отвечает за поддержание метабазы IIS. В случае, когда службы IIS 6.0 функционируют в режиме изоляции IIS 5.0 (IIS 5.0 isolation mode), процесс Inetinfo.exe обеспечивает работу одиночного рабочего процесса.
Современные приложения типа "клиент-сервер" настолько не похожи на своих предшественников, что им было дано новое имя — многоуровневые приложения. Такая архитектура называется также n-уровневой или многоуровневой. В этой модели обработка данных распределена между клиентом и сервером, и бизнес-логика располагается на среднем уровне. С функциональной точки зрения большинство систем реализует три следующих основных задачи:
представление данных;
бизнес-логика;
службы хранения данных.
Уровень представления данных включает всю работу с пользователем. На этом уровне пользователи могут не только взаимодействовать с приложением, вводить данные и просматривать результаты запросов, но и управлять манипулированием данными и их форматированием после того, как они попадают на клиентскую сторону. В веб-технологии задачи уровня представления данных выполняет браузер.
Службы хранения данных обеспечиваются различными структурированными хранилищами информации (серверами БД, например, Microsoft SQL Server, Oracle) или неструктурированными хранилищами (Microsoft Exchange, Microsoft Queue Messaging), которые управляют и обеспечивают доступ к данным из приложения. Отдельный запрос может потребовать использования одного или более хранилищ данных.
Между этими двумя уровнями находится область для разработки распределенных приложений. Уровень бизнес-логики задает правила управления обработкой приложений, соединяет пользователя на одном конце с данными на другом.
Трехуровневая архитектура изолирует каждый сегмент функциональных возможностей. Представление не зависит от правил обработки и бизнес-логики, которая, в свою очередь, является отдельной от данных. Эта модель требует намного больше затрат на анализ и проектирование, но значительно уменьшает расходы на техническую поддержку и сопровождение и, в конечном счете, увеличивает функциональную гибкость. На рис. 16.1 представлена схема, которая описывает технологии Microsoft, обслуживающие различные уровни в системах с новой архитектурой.
Рис. 16.1. Архитектура трехуровневых систем на базе служб Microsoft
Служба индексирования (Indexing Service) — стандартная служба, реализованная в Windows Server 2003, осуществляет индексирование файлов на локальном жестком диске, а также на общедоступных дисководах в сети. Также ее можно использовать для индексирования документов, хранящихся на сайтах, реализованных с помощью служб IIS. Выполнять поиск можно по индексу слова в содержании файлов или в свойствах файлов. Служба индексирования возвращает список всех документов, которые соответствуют критериям поиска.
Служба индексирования создана для непрерывной работы и не требует специального сопровождения. После того как она установлена, все действия осуществляются автоматически, включая создание индексов, обновление индексов и их восстановление в случае аварийного отказа, если произошел сбой питания. Служба индексирования безотказно работает в средах, критических по параметрам надежности и доступности, где сервер должен функционировать 24 часа в сутки и 7 дней в неделю.
Служба индексирования может индексировать:
файлы HTML;
текстовые файлы;
файлы Microsoft Office;
файлы почты Интернета;
любые другие файлы, для которых имеется фильтр документа.
В Windows Server 2003 реализованы службы Windows Media Services 9.0. В рамках данной версии разработчики сделали множество изменений и реализовали новые функциональные возможности. Эти возможности перечислены в табл. 16.10.
Таблица 16.10. Новые функциональные возможности Windows Media Services 9.0
Функциональная возможность | Описание | ||
Расширение функциональности службы Windows Media | Администратор может расширить функции служб Windows Media путем установки специальных модулей (plug-in) | ||
Расширенные возможности создания точек публикации | Точки публикации представляют собой точки доступа к потоковым данным. Клиенты получают доступ к потоковым данным на сервере, подключаясь к точкам публикации. Службы Windows Media поддерживают два вида точек публикации: по требованию и широковещательные. Windows Server 2003 предоставляет администратору широкие возможности управления точками публикации | ||
Гибкое управление списками воспроизводимых файлов (playiists) | Для каждой точки публикации может быть определен список воспроизводимых файлов. Администратор может изменять как состав списка, так и параметры отдельных файлов, входящих в него, без прерывания процесса доставки | ||
Гибкая архитектура обработки событий | Появилась возможность управления событиями на стороне сервера посредством механизма Windows Management Instrumentation (WMI) и протокола SNMP | ||
Механизм быстрой доставки (Fast Streaming) | В предыдущих версиях Windows Media скорость доставки потоковых данных являлась постоянной величиной. В Windows Media Services 9.0 администратор может управлять скоростью доставки с помощью целого ряда механизмов | ||
Улучшенный алгоритм доставки пакетов | Отправляемые пакеты хранятся в течение 10 секунд в специальном буфере, что позволяет ускорить процесс их повторной отправки в случае возникновения ошибок доставки | ||
Управление процессом упаковки данных | Размер пакета может изменяться в зависимости от условий передающей среды. Это позволяет администратору организовать процесс доставки потоковых данных наиболее эффективным образом | ||
Поддержка протокола IPv6 | В рамках Windows Media Services 9 реализована поддержка протокола IPv6, который может использоваться для организации процесса доставки потоковых данных | ||
Поддержка протокола IGMPvS | Реализована поддержка протокола IGMPvS, который может использоваться для организации процесса доставки потоковых данных посредством группового вещания |
Windows Media Services 4.x |
Windows Media Services 9.0 |
Формат *.asf |
В новой версии Windows Media Services реализованы два новых расширения файлов: wma и wmv. Эти расширения позволяют клиенту узнать какого рода информация передается (аудио или видео соответственно). Тем не менее, формат передачи данных остается неизменным |
ASFRoot |
WMRoot |
Протокол MSDB |
Этот протокол доставки потоковых данных больше не поддерживается. Вместо него рекомендуется использовать протокол HTTP или RSTP |
Программы (programs) |
Вместо программ передачи используется понятие списка воспроизводимых файлов (playlists) |
Службы Windows Media Station Service, Windows Media Unicast service, Windows Media Program Service, Windows Media Monitor Service |
Эти службы реализованы в рамках одного компонента Windows Media Services |
Новые функциональные возможности и улучшения, реализованные разработчиками в архитектуре службы IIS 6.0, следует рассматривать в следующих аспектах:
улучшение стабильности служб;
улучшение защищенности служб;
улучшение производительности;
расширение возможностей служб IIS, предоставляемых разработчику;
расширение возможностей служб IIS, предоставляемых администратору.
Далее мы рассмотрим каждое из этих направлений более подробно.
Active Server Pages (ASP) представляет собой основной механизм разработки веб-ориентированных приложений для IIS. ASP были дополнены возможностями, которые делают более легким применение ASP для разработчиков сценариев и веб-приложений. Кроме того, в архитектуре ASP произошел ряд существенных изменений, позволивших улучшить безопасность и производительность компонентов IIS.
Прежде всего, следует отметить тот факт, что поддержка ASP отключена по умолчанию. Чтобы иметь возможность размещать ASP-сценарии на вебсервере под управлением Windows Server 2003, администратор должен вручную разрешить на данном сервере механизм ASP.
Перечислим новые функциональные возможности, появившиеся в рамках IIS 6.0 ASP:
поддержка UTF-8. Поддержка формата LJTF-8 расширена для всех атрибутов и методов встроенных объектов ASP;
обнаружение зависших процессов. В случае если достигнуто максимальное количество ASP-потоков, зависшие потоки могут привести к падению производительности. Реализованные в рамках IIS механизмы позволяют обнаруживать зависшие ASP-потоки, выполняющиеся в рамках некоторого рабочего процесса. Служба WWW в данной ситуации выполняет перезапуск процесса;
кэширование популярных файлов. Механизм ASP выполняет кэширование наиболее часто используемых файлов. Кэш размещается в оперативной памяти и при необходимости самые старые файлы из кэша сохраняются на диске;
поддержка формата UNC. Разработчики могут использовать в ASP-сценариях ссылки на ресурсы в формате UNC (ссылка вида \\<имя_хоста>\<имя_общей_папки>);
расширенная поддержка СОМ+-служб. В рамках IIS 6.0 расширены возможности использования СОМ+-служб в ASP-приложениях;
интеграция с XML. Язык extensible Markup Language (XML, Расширяемый язык разметки) позволяет легко описывать сложные структуры данных и совместно использовать информацию в клиентских и серверных приложениях. Новый синтаксический анализатор XML, включенный в Internet Explorer версии 4.0 и выше, сделал возможным создание ASP-приложений, позволяющих веб-серверу обмениваться форматированными данными XML с Internet Explorer и другими браузерами или с любыми другими серверами, имеющими поддержку XML.
Может потребоваться несколько телеконференций с различной тематикой на общедоступном сервере новостей. Например, зарегистрированным пользователям некоторого продукта требуется одна конференция, а потенциальным покупателям, только собирающимся сделать свой выбор, — другая.
Цель: Уменьшить затраты на поддержку пользователей и улучшить клиентскую службу, предоставив клиентам быстрый свободный доступ к информации и технической поддержке.
Программные компоненты: Microsoft Windows Server 2003, Microsoft Internet Information Services (IIS), Microsoft Internet Mail and News или Microsoft Outlook Express.
Среда: Интернет.
Установка: Разрешить анонимный доступ; использовать DNS или WINS для разрешения имени; обеспечить доступ через брандмауэр (при его наличии).
Прочие аспекты: Необходимо рассмотреть возможность организации модерируемых (редактируемых специально назначенным человеком, так называемым "модератором") конференций, чтобы предотвратить публикацию некорректных, технически неправильных статей. Это может ограничить возможность клиентов помочь друг другу, если персонал поддержки недоступен в настоящий момент.
Функционирование: Если службы IIS уже используются, то для обеспечения технической поддержки через публикацию технической информации на вебсервере можно просто добавить поддержку телеконференций на том же компьютере. Если планируется активно использовать сервер телеконференций, можно расположить службу NNTP на отдельном компьютере.
Можно создать отдельную телеконференцию для каждого продукта, для которого требуется техническая поддержка, или создать несколько телеконференций для каждого продукта, одну для каждой темы поддержки.
URL-адреса для телеконференций будут иметь стандартные форматы (см. выше).
Чтобы обеспечить наискорейшую отдачу от телеконференций, персонал поддержки клиентов должен достаточно часто читать статьи в телеконференциях и быстро отвечать на вопросы. Одним из удобных средств может оказаться публикация часто задаваемых вопросов (Frequently Asked Questions, FAQ) и ответов на них.
Результат: Клиенты получают более эффективную поддержку и, следовательно, в большей степени удовлетворены применяемыми продуктами, т. к. они имеют непосредственный доступ к самой свежей информации, касающейся этих продуктов. Производительность труда у персонала поддержки будет выше, т. к. теперь не нужно много раз отвечать на один и тот же вопрос.
Набор служб Интернета (IIS) традиционно позиционировался Microsoft как одна из важнейших составляющих серверного программного обеспечения. Начиная с Windows 2000, службы IIS поставляются непосредственно в составе операционной системы (ранее они поставлялись в виде дополнительного пакета, расширяющего возможности операционной системы). В Windows Server 2003 реализована новая, шестая версия служб IIS (далее IIS 6.0), реализующая принципиально новый подход Microsoft к построению защищенных и многоплатформенных интернет-приложений.
Службы IIS базируются на ряде открытых стандартов Интернета, перечень которых с кратким описанием дается в табл. 16.1.
Таблица 16.1.Стандарты Интернета, реализованные в IIS 6.0
Стандарт | Описание | ||
HTTP 1.1 | Поддержка протокола HTTP реализована на уровне ядра операционной системы. В том числе поддерживается механизм сжатия HTTP (HTTP compression). Этот механизм обеспечивает более компактную передачу данных между веб-сервером и клиентами, которые поддерживают получение сжатой информации. Механизм также выполняет сжатие и кэширование статических файлов. По требованию может выполнять сжатие динамически сгенерированных файлов | ||
WebDAV | Дает возможность авторам веб-страниц удаленно редактировать, перемещать или удалять файлы, изменять параметры файлов, каталоги и параметры каталогов на сервере при помощи административных утилит, работающих по протоколу HTTP | ||
SMTP | Протокол SMTP регламентирует процесс обмена сообщениями между сетевыми хостами. В составе IIS реализована служба SMTP, позволяющая системам Windows Server 2003 выступать в качестве агента пересылки почты (Mail Transfer Agent, MTA). Служба SMTP, реализованная в IIS, может стать базой для развертывания почтового сервера | ||
NNTP | Протокол NNTP регламентирует процесс обмена сообщениями новостей. В составе IIS реализована служба NNTP, позволяющая системам Windows Server 2003 выступать в качестве сервера новостей | ||
FTP | Протокол FTP регламентирует процесс передачи файлов по сети. В IIS 6.0 реализована служба FTP-сервера. Для каждого пользователя может быть создан собственный FTP-каталог. Соответственно, данный пользователь может действовать только в пределах своего каталога (другие каталоги, включая их содержимое, он не видит). Для FTP может быть также установлено несколько различных кодовых страниц. Помимо этого, IIS поддерживают докачку по протоколу FTP. Теперь при получении файла по протоколу FTP можно произвести повторную докачку с места, на котором был прерван предыдущий сеанс | ||
PICS рейтинг | Данный стандарт описывает методику оценки содержимого веб-сайта с точки зрения наличия материалов сексуального характера, насилия и ненормативной лексики |
Мы говорим об IIS, как о наборе базовых служб Интернета. IIS 6.0 включает в свой состав пять служб:
служба WWW (World Wide Web Publishing service);
служба FTP (File Transfer Protocol service);
служба SMTP (Simple Mail Transfer Protocol service);
служба NNTP (Network News Transfer Protocol service);
служба администрирования IIS (IIS Admin service).
Оснастка Internet Information Services (IIS) Manager (рис. 16.5) представляет собой инструмент администрирования IIS, который доступен из меню Start | Administrative Tools | Internet Information Services (IIS) Manager (Пуск | Администрирование | Диспетчер информационных служб Интернета).
Также она включена в состав оснастки Computer Management (Управление компьютером).
Рис. 16.5. Оснастка Internet Information Services (IIS) Manager
Служба NNTP проста в управлении, поскольку содержит удобные инструменты и поддерживает тесную интеграцию с Windows Sewer 2003. Ниже перечислены основные возможности службы NNTP.
Поддержка стандартов Интернета. Служба NNTP поддерживает Network News Transport Protocol (NNTP, Сетевой протокол передачи новостей), который предназначен для связи клиента с сервером, а также для связи двух серверов. Служба NNTP поддерживает популярные расширения NNTP и полностью совместима с другими клиентами и серверами NNTP. Кроме того, служба NNTP поддерживает многочисленные форматы, включая:
Multipurpose Internet Mail Extension (MIME);
язык разметки гипертекста HTML;
формат изображений GIF;
формат изображений JPEG.
Простота администрирования. Администрирование службы NNTP осуществляется посредством оснастки Internet Information Services (IIS) Manager. С помощью этой оснастки управление службой NNTP осуществляется в пределах одной ЛВС. Этот инструмент позволяет управлять всеми компонентами IIS, используя единый интерфейс (рис. 16.11).
Интеграция со службами Windows Server 2003. Служба NNTP полностью использует преимущества стандартных инструментов администрирования Windows Server 2003 для текущего контроля производительности и отслеживания событий. При инсталляции службы NNTP устанавливается набор счетчиков для системного монитора (System Monitor). Все состояния службы NNTP и сообщения об ошибках записываются в журналы событий и могут просматриваться при помощи оснастки Event Viewer (Просмотр событий). Служба NNTP также включает поддержку протокола SNMP. Служба NNTP управляет доступом к группам новостей, используя списки ACL системы безопасности Windows Server 2003. Устанавливая разрешения на каталог, который содержит группу новостей, можно управлять доступом к этой группе новостей. Можно также разрешить анонимный доступ, при этом доступ к группе новостей будет предоставлен всем.
Рис. 16.11. Оснастка Internet Information Services (IIS) Manager — управление службой NNTP
Служба индексирования создает реестр каталогов, чтобы определить, какие документы должны быть проиндексированы; этот процесс впервые запускается сразу же после установки службы. Служба индексирования автоматически выполняет либо полный просмотр, либо инкрементный просмотр по мере необходимости.
Полный просмотр. При полном просмотре индексируются все документы в папках, которые перечислены в списке индексируемых документов. Служба индексирования делает полный просмотр всех жестких дисков на компьютере, когда служба запущена впервые после установки, когда папка добавляется к каталогу, или во время восстановления, если произошла серьезная ошибка. Можно также принудительно выполнить полный просмотр в любое время.
Инкрементный просмотр. При инкрементном просмотре к списку документов, которые будут проиндексированы, добавляются только те документы, которые были изменены со времени последнего индексирования. Когда служба индексирования запускается (после первого раза), она производит инкрементный просмотр всех индексированных папок на дисках с файловой системой, отличной от NTFS, чтобы определить, какие файлы были изменены, когда служба не функционировала.
Инкрементный просмотр также выполняется, если система теряет уведомления об изменениях. Это может случиться, если изменилось большое количество документов, и буфер Windows Server 2003, используемый для получения уведомлений об изменениях, переполняется. Инкрементный просмотр, так же как и полный просмотр, можно принудительно запустить в любое время.
Для каждого документа, который будет проиндексирован, служба индексирования выполняет следующие действия:
1. Используя соответствующий документу фильтр, считывает документ, извлекает из него значения свойств документа и выделяет содержание. Сохраняет значения свойств документа и путь к документу в индексе.
2. Разбивает поток предложений на отдельные слова. Для того чтобы разбить текст на слова, служба индексирования использует процедуры, соответствующие языку документа — английскому, немецкому, японскому и т. д.
Когда браузер запрашивает страницу с узла, веб-сервер ищет страницу по заданному URL и возвращает ее браузеру. Когда страница перемещается внутри узла, не всегда можно исправить все связи, которые ссылаются на старый URL-адрес страницы. Чтобы удостовериться в том, что браузеры смогут найти страницу по новому URL, можно заставить веб-сервер предоставлять браузеру новый URL. Браузер использует новый URL, чтобы запросить эту страницу снова. Этот процесс называется переадресацией запроса браузера или переадресацией на другой URL. Переадресация запроса о получении страницы подобна переадресации в почтовой службе. Переадресация гарантирует, что письма и пакеты, отправленные по предыдущему адресу вашего проживания, будут доставлены по новому адресу.
Переадресация URL полезна (см., например, переключатель A redirection to a URL на рис. 16.10), когда узел подвергается переделкам и нужно сделать часть узла (каталог) временно недоступной, или когда было изменено имя виртуального каталога и нужно заставить браузеры обращаться не к файлам в исходном виртуальном каталоге, а к тем же самым файлам в новом виртуальном каталоге.
Перед установкой служб IIS может потребоваться дополнительное конфигурирование системы.
Рис. 16.3. Вкладка Services окна свойств встроенного брандмауэра
Прежде всего, если в системе Windows Server 2003 активизирован встроенный брандмауэр, администратор должен выполнить его настройку, чтобы разрешить обращение пользователей к службам IIS. В противном случае пользователи не смогут получить к ним доступа, поскольку соответствующие пакеты будут отбрасываться брандмауэром.
Для настройки брандмауэра откройте окно свойств интересующего сетевого подключения и перейдите на вкладку Advanced (Дополнительно). Нажмите кнопку Settings (Настройки) и в открывшемся окне перейдите на вкладку Services (Службы) (рис. 16.3). На этой вкладке отметьте службы, доступ к которым будет разрешен внешним пользователям.
При поиске информации запрос посылается службе индексирования. Служба индексирования, просматривая индекс, ищет документы, соответствуюшие критериям запроса, и возвращает список соответствующих запросу документов пользователю (или приложению, пославшему запрос). В дополнение к запросу по содержанию можно сделать запрос по свойствам файлов. Эти свойства включают: размер файла, даты создания и изменения, имя файла, авторов файла и т. д. Можно, например, сделать запрос по текстовым свойствам (имя файла и автор) и числовым свойствам (размер и дата изменения). Можно также сделать запрос по всем свойствам элементов ActiveX, включая пользовательские свойства документов Microsoft Office.
Поиск документов может быть выполнен одним из трех способов:
с помощью команды Search | All files and folders (Найти | Файлы и папки) меню Start (Пуск);
используя веб-страницу для передачи запроса на выполнение через службы IIS. Для веб-доступа владелец или администратор узла создает вебстраницу (документ HTML), из которой можно посылать на выполнение запросы. Страница может быть настроена для упрощения ввода и улучшения вида запросов и поиска информации по различным критериям. Автор страницы может также задавать отдельные индексы или части индексов, по которым нужно производить поиск. Результаты поиска возвращаются в виде веб-страницы;
при помощи оснастки Indexing Service. Форма запроса может быть включена в каждый каталог в службе. При помощи этой формы можно выполнять любой вид запросов, используя все возможности языка запросов. Чтобы открыть форму запроса, запустите оснастку Indexing Service, выберите требуемый каталог и узел Query the Catalog (Опрос каталога). Форма запроса появится в результирующей панели оснастки.
Имеются пять видов запросов:
свободные текстовые запросы;
запросы-фразы;
запросы сопоставления с образцом;
относительные запросы;
векторно-пространственные запросы.
Правила, относящиеся к запросам всех видов:
в запросах не различаются строчные и прописные буквы;
можно искать любое слово, если оно не содержится в списке исключений;
для того чтобы использовать специальные символы в запросе (типа &, |, ^, # и $), нужно заключить запрос в кавычки;
Значения даты и времени имеют одну из двух форм: yyyy/mmdd hh:mm:ss или yyyy-ram-dd hh:mm:ss. Первые два символа года и полного времени могут быть опущены. Если опускаются первые два символа года, дата интерпретируется как находящаяся в интервале между 1930 и 2029 гг. Трехзначное число миллисекунд может быть задано после секунд. Все даты и времена задаются в UTC (Universal Coordinated Time, Скоординированное всемирное время). Пример задания времени: 1993/П/7 12:04:23:123.
Дата и время относительно текущей даты и времени могут быть выражены со знаком "минус" (-), за которым следует одна или более пар "целое число-единица". Единицы задаются так: у — число лет, q — число кварталов (три месяца), гп — число месяцев, w — число недель, d — число дней, h — число часов, п — число минут из — число секунд. Числовые значения могут быть заданы в десятичном или в шестнадцатеричном виде. Шестнадцатеричные значения предваряются символами "0х".
Для поиска слова или фразы в заданном свойстве можно использовать оператор CONTAINS. Если оператор не задан, по умолчанию считается заданным оператор CONTAINS.
Следующие запросы эквивалентны:
@DocTitle "Что-то важное";
@DocTitle CONTAINS "Что-то важное".
Можно использовать булевы операторы AND, OR и NOT как в запросах на вхождение в содержимое, так и в запросах по свойствам. Оператор NEAR может применяться только в запросах по содержимому документов. Операторы в запросах могут быть записаны как в полной, так и в краткой форме (табл. 16.8).
Оператор |
Длинная форма |
Краткая форма |
AND |
AND |
& |
NOT |
AND NOT |
| |
OR |
OR |
& ! |
NEAR |
NEAR |
Near, ~ |
Рассмотрим несколько типовых сценариев развертывания NNTP-сервера в корпоративной сети.
В табл. 16.9 приведены примеры разнообразных запросов.
Таблица 16.9. Примеры запросов
Чтобы найти | Полная форма | Краткая форма | Результат | ||||
Заданное значение | {prop name=DocAuthor } = Иван Иванов {/prop} | @DocAuthor = Иван Иванов | Документы, созданные Иваном Ивановым | ||||
Значение, начинающееся с заданного префикса | {prop name=DocAuthor } { гедех}Иван * { /regex } { /prop } | #DocAuthor Иван* | Документы, чье свойство "автор" начинается с "Иван" | ||||
Файлы с расширением из числа заданных | {prop name=f ilename} { regex} * . I (doc | , txt | , wri | ) { /regex} { /prop} | #f ilename *. | (doc|, txt | , wri | ) | Файлы с расширениями doc, txt или wri | ||||
Документы, измененные после некоторой даты | {prop name=write} > 99/7/18 11:05:00 { /prop} | @write > 99/7/18 11:05:00 | Документы, измененные после 18 июля 1 999 года, в 11:05 по UTC | ||||
Документы, измененные после относительной даты | {prop name=write} > -2d4h {/prop} | @write > -2d4h | Документы, измененные в пределах последних 52 часов |
Для просмотра статей в телеконференциях, опубликованных при помощи службы NNTP, необходимо использовать программу-клиент чтения новостей, например Microsoft Outlook Express.
Первый шаг при просмотре статей в телеконференции — получение списка доступных телеконференций (рис. 16.14). Клиент подключается к службе NNTP и запрашивает список доступных телеконференций. Служба NNTP принимает запрос, аутентифицирует пользователя, обращающегося к телеконференциям, проверяет его права, а затем посылает клиенту список всех доступных телеконференций.
Рис. 16.14. Просмотр статей
Второй шаг — выбор телеконференции, которую пользователь хочет просмотреть. Клиент запрашивает список статей в выбранной телеконференции. Служба NNTP аутентифицирует пользователя, обращающегося к указанной телеконференции, проверяет его полномочия и посылает клиенту список всех статей в этой телеконференции. Затем пользователь выбирает статью, клиент запрашивает выбранную статью у службы NNTP, а служба возвращает содержимое статьи.
Для передачи статьи телеконференции через службу NNTP следует использовать программу-клиент новостей, например Microsoft Outlook Express. Клиент подключается к NNTP и запрашивает публикацию переданной статьи в одной или более телеконференциях. Служба NNTP устанавливает соединение, принимает запрос и проверяет права пользователя на публикацию статьи в указанных телеконференциях (рис. 16.13). Служба NNTP затем публикует статью в телеконференциях и модифицирует индекс телеконференции.
Рис. 16.13. Публикация статей
Компания Microsoft разработала технологию Windows Distributed interNet Application Architecture (Windows DNA, Распределенная архитектура интернет-приложений Windows), полностью интегрирующую многоуровневую модель разработки с веб-технологией. Технология Windows DNA определяет каркас для создания решений, которые удовлетворяют требованиям корпоративных вычислений, Интернета, интрасетей и глобальной электронной торговли, уменьшая при этом издержки на общую разработку и развертывание системы.
В архитектуре Windows DNA стандартные службы на базе Windows выполняют определенные задачи на каждом уровне в многоуровневом решении, обеспечивая интерфейс пользователя и навигацию, бизнес-логику и хранение данных. Различные службы интегрированы при помощи Common Object Model (COM, Общая объектная модель). Службы, используемые в Windows DNA, включают: Dynamic HTML (Динамический HTML), Active Server Pages (Активные серверные страницы, ASP), компоненты COM, Microsoft Transaction Server, службу Active Directory, службы безопасности Windows Server 2003, Microsoft Message Queue Services (MSMQ, Службы очереди сообщений) и компоненты доступа к данным Microsoft.
Архитектура Windows DNA создана с применением открытых протоколов и общедоступных интерфейсов, что облегчает организациям задачу интеграции новых систем с продуктами третьих фирм. Обеспечивая промышленные стандарты Интернета, Windows DNA упрощает работы по внедрению новых технологий для разработчиков. На рис. 16.2 представлена схема, которая иллюстрирует технологии — составные части Windows DNA.
Рис. 16.2. Технологии Windows DNA
Наиболее существенным изменением в архитектуре служб IIS, предоставившим разработчикам новые возможности, стала реализация в IIS 6.0 поддержки технологии ASP.NET. Эта технология фактически представляет собой универсальную платформу для построения распределенных корпоративных веб-приложений, работающих как часть Microsoft .NET Framework.
Следует заметить, что ASP.NET не поддерживается 64-разрядными версиями Windows Server 2003.
Помимо ASP.NET, в рамках IIS 6.0 реализована поддержка таких набирающих популярность интернет-стандартов, как XML и SOAP. Разработчики могут использовать серверные сценарии для динамической публикации содержимого веб-сайтов. Для написания серверных сценариев разработчики могут использовать технологии ASP или CGI.
Разработчиками в рамках IIS 6.0 реализован целый ряд механизмов и технологий, предоставляющих администратору возможность эффективно управлять как службами IIS, так и веб-приложениями. Наиболее существенные изменения произошли в структуре метабазы и, в частности, в методе ее хранения. Метабаза используется для хранения информации о конфигурации служб IIS.
Перечень функциональных улучшений приведен в табл. 16.5.
Таблица 16.5. Функциональные возможности, расширяющие возможности администрирования IIS
Функциональная возможность | Описание | ||
Хранение содержимого метабазы в текстовом формате | Метабаза хранится в виде двух текстовых файлов Metabase.xml и MBSchema.xml. Такой формат хранения содержимого метабазы позволяет администратору выполнять конфигурирование служб IIS вручную, посредством любого текстового редактора | ||
История изменений метабазы | Система сохраняет историю изменений содержимого метабазы, сохраняя в специальной папке старые версии. Благодаря этому администратор может выполнить откат ее изменений, восстановив при необходимости старую версию. Каждая версия идентифицируется по специальному номеру, на который можно сослаться в процессе восстановления метабазы | ||
Возможность изменения метабазы в онлайновом режиме | Поскольку метабаза хранится в виде текстового файла, администратор может выполнять ее изменение непосредственно в онлайновом режиме, т. е. в процессе работы служб IIS. Все произведенные изменения вступают в силу немедленно | ||
Возможность создания резервной копии метабазы | Реализованный в системе API-интерфейс позволяет осуществлять резервное копирование и восстановление метабазы | ||
Возможность экспорта/импорта конфигурации сайтов и приложений | Разработчики могут реализовать в своих приложениях возможность импорта/экспорта отдельных фрагментов содержимого метабазы | ||
Изоляция РТР-содержимого на уровне пользователей | Администратор имеет возможность создать для отдельных пользователей FTP-каталоги. При этом пользователь не может выйти выше своего каталога по иерархии (другими словами — не видит каталогов других пользователей). В пределах своего каталога пользователь может создавать, удалять, копировать файлы и подкаталоги. Данная функциональная возможность может оказаться наиболее полезной для интернет-провайдеров | ||
Поддержка серверных расширений FrontPage 2002 | В составе IIS 6.0 реализована поддержка серверных расширений FrontPage 2002, позволяющих осуществлять разработку веб-сайтов и управление виртуальными веб-серверами непосредственно из среды разработки FrontPage 2002 | ||
Административные сценарии командной строки | Административные сценарии могут использоваться для решения многообразных задач по управлению службами IIS. Сценарии могут применяться, в частности, для автоматизации процессов управления | ||
П ротоколирование в формате UTF-8 | Службы IIS 6.0 регистрируют информацию о посещениях в журналах в формате UTF-8. Использование этого формата позволяет осуществлять запись в журнал информации не только на английском языке, но и на национальных языках | ||
Возможность удаленного администрирования служб IIS | В Windows Server 2003 реализовано множество механизмов и инструментов, позволяющих выполнять удаленное администрирование различных компонентов операционной системы, в том числе и служб IIS. Удаленное управление службами IIS может быть выполнено при помощи специальной утилиты Remote Administration (HTML) |
Ранее уже неоднократно отмечался тот факт, что в Windows Server 2003 компания Microsoft реализует новый подход к развертыванию служб IIS. Службы IIS не устанавливаются по умолчанию в ходе инсталляции операционной системы, и даже в случае принудительной установки большинство механизмов IIS находятся в "заблокированном" состоянии. В первую очередь это касается механизмов динамической публикации содержимого веб-узлов (таких как ASP, ASP.NET, WebDAV и др.).
Чтобы разрешить использование того или иного механизма, необходимо в пространстве имен оснастки Internet Information Services (IIS) Manager выбрать контейнер Web Service Extensions. В правом окне выберите расширение, которое требуется активизировать, и в зависимости от вида этого окна (Extended или Standard) или нажмите кнопку Allow (Разрешить), или выберите команду Allow в контекстном меню нужного расширения (рис. 16.7). Соответственно, для того, чтобы запретить использование расширения, необходимо нажать кнопку Prohibit (Запретить).
Рис. 16.7. Разрешение механизмов динамической публикации содержимого веб-узлов
Поскольку в IIS 6.0 метабаза хранится в виде текстовых файлов, администратор может выполнять изменение ее содержимого при помощи любого текстового файла.
Рис. 16.8. Разрешение прямого редактирования метабазы
При этом все произведенные изменения немедленно вступают в силу. По умолчанию редактирование содержимого базы данных запрещено. Разрешить эту возможность администратор может при помощи оснастки Internet Information Services (IIS) Manager. В окне свойств объекта, ассоциированного с сервером, на котором запущены службы IIS, необходимо установить флажок Enable Direct Metabase Edit (Разрешить прямое редактирование ме-табазы) (см. рис. 16.8).
Службы электронной почты не устанавливаются по умолчанию в ходе инсталляции операционной системы Windows Server 2003. При необходимости администратор должен установить эти службы самостоятельно. В окне утилиты Add or Remove Programs необходимо нажать кнопку Add/Remove Windows Components, чтобы запустить одноименный мастер. В списке компонентов (рис. 16.16) следует установить флажок в строке E-mail Services (Службы электронной почты) и нажать кнопку Next (Далее). Мастер произведет копирование необходимых файлов и выполнит конфигурирование установленной службы. При этом по умолчанию также ставится компонент РОРЗ Service Web Administration, позволяющий администрировать службу по протоколу HTTP с помощью утилиты Remote Administration (HTML).
Если предварительно не была выполнена установка службы SMTP, то она автоматически устанавливается в ходе развертывания служб электронной почты.
Рис. 16.16. Установка службы электронной почты
IIS 6.0 может функционировать в одном из двух режимов изоляции процессов:
режим изолированных рабочих процессов;
режим изоляции US 5.0.
В каждом из этих режимов службы IIS задействуют драйвер HTTP.sys для взаимодействия с пользователями по протоколу HTTP, однако принципы функционирования IIS в этих режимах различаются. Режим изолированных рабочих процессов (worker processes isolation mode) в полной мере использует архитектуру IIS 6.0. Режим изоляции /IS 5.0 используется в том случае, когда веб-приложение использует специфические функциональные возможности предыдущих версий IIS.
Режим изолированных рабочих процессов является наиболее предпочтительным режимом функционирования IIS, поскольку этот режим обеспечивает приложениям наилучшую производительность. Кроме того, данный режим обеспечивает более высокий уровень безопасности, поскольку в данном режиме рабочие процессы работают с полномочиями сетевой службы (учетная запись NetworkService). В случае режима изоляции IIS 5.0 рабочий процесс работает с полномочиями локальной системы (учетная запись LocalSystem).
Службы IIS 6.0 не могут одновременно работать в двух режимах. Если приложения требуют различных режимов изоляции процессов, администратор должен реализовать их на различных серверах.
В Windows Sewer 2003 реализована поддержка протокола РОРЗ. Эту возможность обеспечивает Служба электронной почты (E-mail Services). Протокол РОРЗ в совокупности со службой SMTP позволяет использовать сервер Windows Sewer 2003 для организации простейшей, но полнофункциональной системы обмена сообщениями электронной почты. При этом протокол SMTP оговаривает только транспортный механизм обмена (рассматриваются только механизмы доставки, но не чтения почтовых сообщений). То есть все полученные сообщения помещаются в некоторое хранилище. Для каждого получателя сообщение хранится в индивидуальных папках. По аналогии с обычной почтой, эти папки получили название почтовых ящиков (mailbox). Протокол РОРЗ представляет собой механизм извлечения пользователями сообщений из хранилища. Сообщения хранятся в почтовых ящиках до тех пор, пока пользователи не извлекут их оттуда (посредством протокола РОРЗ).
Для работы со службой электронной почты, реализованной в Windows Server 2003, пользователи могут использовать любого почтового клиента, поддерживающего протокол РОРЗ (например, Microsoft Outlook Express). Почтовый клиент устанавливает соединение с сервером по протоколу РОРЗ и подключается к требуемому почтовому ящику. В ходе выполнения подключения клиент должен пройти процедуру аутентификации, предоставив информацию об учетной записи пользователя и соответствующем ей пароле. После подключения пользователь может извлечь некоторые или все сообщения, содержащиеся в его почтовом ящике на сервере. При этом выгрузка может проходить как в режиме перемещения (выгружаемые сообщения удаляются из почтового ящика на сервере), так и в режиме копирования (копии сообщений остаются на сервере).
Следует заметить, что протокол РОРЗ предполагает передачу данных (в том числе и информацию о полномочиях пользователя) по сети в открытом незашифрованном виде. Поэтому в случае необходимости администратору следует подумать об использовании протокола IPSec. Применение протокола IPSec позволяет создать защищенный туннель между клиентом и сервером.
В терминологии протокола SMTP существует понятие почтового домена (e-mail domain). Почтовый домен определяет логическую принадлежность получателя к некоторой общности. Порядок записи имени почтового домена подчиняется правилам, определенным для доменных имен DNS. В совокупности имя получателя и почтовый домен образуют адрес электронной почты, который должен быть уникален в рамках всего пространства имен DNS. Например для получателя lex, принадлежащего к почтовому домену ayan.ru, адрес электронной почты будет следующим: lex@ayan.ru
В составе служб IIS 6.0 реализована Служба NNTP, позволяющая построить серверы новостей в интрасети или Интернете. В данном разделе описываются особенности ее развертывания в корпоративной сети.
В Windows Server 2003 Службу SMTP характеризуют следующие особенности:
поддержка стандартных протоколов Интернета. Служба SMTP обеспечивает полную поддержку протокола Simple Mail Transfer Protocol, SMTP (Простой протокол электронной почты) и совместима с почтовыми клиентами SMTP;
масштабируемость. Служба SMTP поддерживает сотни одновременных клиентских соединений при конфигурации с одним сервером. Можно также настроить использование множества доменов для одного сервера;
улучшенная безопасность. Служба SMTP поддерживает протоколы безопасной передачи почты на транспортном уровне;
прямая доставка и извлечение почты. Служба SMTP поддерживает размещение всех входящих сообщений непосредственно в каталоге %SystemDisk%\Inetpub\mailroot\Drop. Это позволяет использовать службу SMTP для приема почты других приложений. В дополнение к передаче сообщений через порт TCP-приложения могут использовать каталог %SystemDisk%\Inelpub\mailroot\Pickup. После форматирования сообщения служба SMTP осуществляет его доставку.
Internet Information Services версии 6.0 (IIS) - набор базовых служб Интернета в составе Windows Server 2003, в число которых входят: службы WWW, FTP SMTP, NNTP и ряд дополнительных служб. Службы IIS предоставляют множество новых возможностей, которые могут превратить систему Windows Server 2003 в мощную платформу для распределенных сетевых приложений. Службы IIS объединены при помощи стандартного интерфейса администрирования и общих методов управления. Следует заметить, что подробное рассмотрение всего набора служб IIS заслуживает отдельной книги. Службы IIS могут быть рассмотрены как с позиции администратора -человека, отвечающего за настройку и корректную работу служб, так и с позиции разработчика - человека, который создает приложения, ориентированные на работу с данными службами. Хотелось бы сразу оговориться, что наше рассмотрение служб IIS будет вестись исключительно с позиции администратора. В данной главе мы постараемся дать обзор служб IIS, описать новые возможности, открывающиеся перед администраторами и разработчиками, а также описать процесс развертывания в корпоративной сети служб IIS Также будут рассмотрены и другие службы, использующие веб-технологии или позволяющие на базе систем Windows Server 2003 строить распределенные сетевые системы.
Службы компонентов (Component Services) обеспечивают разработку и развертывание распределенных клиент-серверных приложений типа онлайновых бизнес-приложений и приложений электронной коммерции, имеющих веб-интерфейс. Службы компонентов используют технологию СОМ+ и обеспечивают такие функциональные возможности, как автоматическая поддержка целостности данных на основе транзакций, зашита информации, основанная на ролях, доступ к различным СУБД, службам очередей сообщений (например, MSMQ) и другим приложениям.
Службы компонентов полностью интегрированы с другими компонентами и службами Windows Server 2003. Интеграция со службами Internet Information Services и Active Server Pages упрощает создание приложений в среде Интернет/и нтрасети. Интеграция с кластерными службами повышает отказоустойчивость. Интеграция со службой обработки очередей сообщений (MSMQ) обеспечивает надежную, постоянную связь между приложениями.
Возможности Microsoft Transaction Server (MTS) были объединены с "классической" технологией СОМ и образовали технологию СОМ+, которая интегрирована в операционную систему Windows Server 2003. Оснастка ММС для управления СОМ+ — Component Services (Службы компонентов) располагается в меню Administrative Tools (Администрирование).
В состав служб компонентов входит переработанный инструмент управления, реализованный в виде оснастки ММС, с помощью которого можно устанавливать пакеты MTS в СОМ+ (рис. 16.18). Ранее для этого применялись специальные инструменты MTS. Сразу после установки пакета можно использовать такие новые возможности СОМ+, как базы данных, хранящиеся в оперативной памяти (In-Memory DataBase, 1MDB), или новая система поддержки событий.
Рис. 16.18. Оснастка Component Services
Службы очереди сообщений (Microsoft Message Queuing Services, MSMQ) — сервис, входящий в стандартную поставку Windows Server 2003.
С помощью MSMQ приложения, работающие в разное время, могут связываться через разнородные сети и системы, способные временно работать автономно. Приложения посылают сообщения MSMQ и используют очереди MSMQ — это позволяет быть уверенным, что сообщение рано или поздно достигнет адресата. MSMQ обеспечивает гарантированную доставку сообщений, интеллектуальную маршрутизацию, защиту и передачу сообщений, основанную на приоритетах.
При помощи MSMQ конечные пользователи могут связываться через автономные сети и системы, вне зависимости от текущего состояния поддерживающих связь приложений и систем. При помощи MSMQ разработчики могут сосредоточиться на программировании бизнес-логики, а не решать проблемы работы с сетями, поскольку MSMQ обеспечивает гарантированную доставку. Администраторы систем при помощи MSMQ могут эффективно управлять большими, сложными сетями очередей сообщений.
Программные продукты с такими возможностями часто называют программным обеспечением поддержки очередей сообщений, программным обеспечением с промежуточным накоплением или средствами среднего уровня, ориентированными на сообщения (MOM, Message-Oriented Middleware).
Особенности и возможности службы MSMQ перечислены ниже.
Интеграция со службами Windows Server 2003. Поддерживается служба Active Directory, в которой хранятся отдельные объекты MSMQ. Клиенты MSMQ могут напрямую обращаться к каталогу для получения необходимой информации (используя протокол LDAP).
Доставка сообщений по HTTP. В рамках MSMQ 3.0 реализован новый протокол (основанный на XML-сообщениях), позволяющий осуществлять доставку сообщений при помощи протокола HTTP.
Триггеры. Триггеры представляют собой механизм, посредством которого факт прибытия сообщения в некоторую очередь может быть ассоциирован с некоторой ответной реакцией. Эта реакция может зависеть от содержимого сообщения.
Службы Windows Media Services в составе Windows Server 2003 — это группа служб, которые предназначены для передачи клиентам аудио- и видеоинформации при помощи одноадресного и группового вещания. Службы Windows Media используются также для передачи файлов клиентам.
Поставляемое содержимое может быть создано, приобретено у поставщика или передаваться с телевизионных камер и микрофонов. В последнем случае его называют живым потоком (live stream).
Пользователи могут обращаться к поставляемому содержимому через Интернет, через корпоративную или образовательную интрасеть или через специализированные группы, которые получают содержимое в выделенной сети или в интрасети.
Службу можно применять для различных целей, например для распространения информации, для организации информационных, развлекательных и маркетинговых узлов, для обучения, управления и т. д.
Стандарт MIME (Multipurpose Internet Mail Extensions) предоставляет программам просмотра (браузерам) возможность определения формата файла и корректного его отображения. Зарегистрированные типы файлов, которые установлены по умолчанию в Windows Server 2003, перечислены в окне MIME Types (Типы файла), доступном на вкладке Internet Information Services Manager в диалоговом окне свойств данного компьютера в окне оснастки Internet Information Services (IIS) Manager.
Сопоставления (map) MIME могут быть настроены на уровне компьютера, на уровне сайта, на уровне виртуального каталога, на уровне каталога или на уровне файлов. Отображения MIME на уровне компьютера определяются в окне свойств объекта, ассоциированного с ним. Для настройки отображении MIME на других уровнях нужно использовать вкладку HTTP Headers (Заголовки HTTP) окна свойств соответствующего объекта. Для открытия окна свойств в пространстве имен оснастки необходимо в контекстном меню соответствующего объекта выбрать пункт Properties (Свойства).
Отображения MIME, заданные на уровне компьютера, не отменяют автоматически установки на более низких уровнях.
В составе служб Windows Media присутствует четыре компонента (рис. 16.23).
Windows Media Services. Эти службы предназначены для передачи звуковой и видеоинформации при помощи одноадресного и группового вещания клиентам.
Компонент, обеспечивающий регистрацию клиентов группового вещания (Multicast and Advertisement Logging Agent).
Windows Media Services snap-in. При помощи данной оснастки (рис. 16.24) администратор может управлять службами Windows Media как на локальном сервере, так и на удаленных серверах. Чтобы управлять несколькими серверами, нужно добавить их к списку; после этого можно подключаться к серверу, которым необходимо управлять.
Веб-администратор служб Windows Media (Windows Media Services Administrator for the Web). Данный компонент представляет собой набор вебстраниц, которые отображаются в окне браузера Microsoft Internet Explorer и позволяют удаленно управлять службами-компонентами Windows Media.
Рис. 16.23. Установка компонентов службы Windows Media
В качестве клиента служб Windows Media может выступать программа Windows Media Player (Проигрыватель Windows Media) (рис. 12.25), получающая и воспроизводящая потоковые данные с сервера. Эти потоковые данные могут включать видеоинформацию, звук, изображения, URL и сценарии.
Рис. 16.24. Оснастка Windows Media Services
Рис. 16.25. Проигрыватель Windows Media Player
Сначала нужно создать веб-узел и указать, в каких каталогах хранятся публикуемые документы. Веб-сервер не может опубликовать документы, которые находятся вне пределов указанных каталогов. Первым шагом в развер-тывании веб-узла является задание организационной структуры файлов. После этого, используя оснастку Internet Information Services (IIS) Manager, нужно задать, какие каталоги являются частью узла.
Если необходимо опубликовать информацию немедленно, не тратя время на создание структуры каталогов узла, и все файлы расположены на одном и том же жестком диске, можно просто скопировать публикуемые файлы в основной каталог по умолчанию — %SystemDisk%\Inetpub\wwwroot. Для FTP-узла файлы требуется скопировать в каталог %SystemDisk%\Inetpub\ ftproot. Пользователи сети смогут обращаться к этим файлам, вводя URL-адрес http://<имя_сервера>/<имя_файла>.
Оснастка Internet Information Services (IIS) Manager может выполнять все задачи по администрированию службы NNTP, она требует подключения через ЛВС. При ее использовании нужно раскрыть узел Default NNTP Virtual Server (Виртуальный NNTP-сервер по умолчанию) (см. рис. 16.11).
Управлять виртуальным сервером NNTP с помощью оснастки Internet Information Services (IIS) Manager можно и с удаленного компьютера, если он находится в той же ЛВС, что и служба NNTP. Однако этот компьютер должен работать под управлением Windows Server 2003, и на нем должны быть установлены средства администрирования Windows Server 2003.
Рис. 16.12. Окно свойств службы NNTP
Виртуальный сервер, который создается по умолчанию на сервере после инсталляции службы, — Default NNTP Virtual Server. Служба NNTP может состоять из одного или большего количества виртуальных серверов NNTP.
Чтобы просмотреть или изменить свойства виртуального сервера NNTP, необходимо в пространстве имен утилиты выбрать требуемый виртуальный сервер NNTP и в меню Action (Действие) выполнить команду Properties (Свойства). Затем перейдите на требуемую вкладку в диалоговом окне (рис. 16.12) и измените нужные опции по необходимости.
Управление службой SMTP осуществляется с помощью оснастки Internet Information Services (IIS) Manager, которая может также использоваться для выполнения всех задач по администрированию служб IIS и требует подключения через ЛВС. Для настройки параметров службы SMTP необходимо в пространстве имен оснастки выбрать узел Default SMTP Virtual Server (Виртуальный SMTP-сервер по умолчанию) (рис. 16.15).
Рис. 16.15.Управление SMTP-сервером с помощью оснастки Internet Information Services (IIS) Manager
Для управления службами электронной почты администратор может использовать специальную оснастку РОРЗ Service (рис. 16.17). Эта оснастка устанавливается в ходе развертывания службы электронной почты и может быть использована для управления всеми экземплярами (серверами) службы РОРЗ, функционирующими в корпоративной сети. С помощью указанной оснастки можно управлять почтовыми доменами, почтовыми ящиками, а также выполнять настройку таких параметров службы РОРЗ, как используемая схема аутентификации получателей, используемый TCP-порт, а также уровень протоколирования событий, связанных с работой службы. Для удаленного администрирования может использоваться утилита Remote Administration (HTML).
В составе Windows Server 2003 поставляется специальная утилита командной строки Winpop.exe, которая также может быть использована для управления службой электронной почты (РОРЗ Service). Эта утилита командной строки может быть использована в тех ситуациях, где применение оснастки неоправданно или не позволяет решить стоящих перед администратором задач (например, при создании пакетных заданий). Для получения информации о синтаксисе утилиты Winpop.exe необходимо в режиме командной строки набрать winpop help.
Рис. 16.17. Оснастка POPS Service
Вся приходящая почта размещается в специальном почтовом хранилище (mail store). По умолчанию почтовое хранилище располагается в папке %SystemDisk%\Inetpub\mailRoot\Mailbox. Хранилище представляет собой совокупность папок. Эти папки организуются в соответствии с определенным принципом. Организация сообщений осуществляется на уровне почтовых доменов и почтовых ящиков. Как уже упоминалось ранее, почтовый ящик представляет собой папку, в которую помещаются все приходящие на определенного получателя сообщения. В рамках хранилища почтовые домены представляют собой папки, в которых помещаются принадлежащие к ним почтовые ящики. Например, путь к содержимому почтового ящика получателя lex, принадлежащего к почтовому домену ayan. ru, будет следующим: \inetpub\mailroot\mailbox\ayan.ru\lex. rnbx\
В процессе обмена сообщениями объем почтовых ящиков пользователей может постепенно увеличиваться. В случае бесконтрольного увеличения это может привести к истощению свободного дискового пространства, выделенного для почтового хранилища, что может парализовать работу всей почтовой службы. Для автоматизации процесса контроля администратор может задействовать механизм квот на использование дискового пространства.
Статьи телеконференций в службе NNTP хранятся в одной или в нескольких группах иерархических каталогов. Каждая телеконференция имеет собственный каталог, а каждая статья хранится как файл в этом каталоге.
Основной каталог по умолчанию — %SystemDisk%\\netpub\nntpfile\root, его можно переназначить на вкладке свойств основного каталога виртуального сервера NNTP. Можно создавать дополнительные иерархии каталогов на других дисках или на других компьютерах, создавая виртуальные каталоги.
Каталог телеконференции имеет то же имя, что и сама телеконференция. Служба NNTP автоматически создает требуемые каталоги, когда создается новая телеконференция. Например, телеконференция, названная sample.test, хранится в подкаталоге \sample\test относительно корневого каталога, т. е. в каталоге %SystemDisk%\Inetpub\nntpfile\root\sample\test. Все файлы статей телеконференций имеют расширение nws.
Служба NNTP также создает файлы, в которых хранятся темы размещенных в телеконференции статей. Эти файлы имеют расширение xix. Служба NNTP создает один файл для каждых 128 статей в телеконференции.
Служба NNTP также поддерживает множество внутренних файлов структуры данных с расширениями hsh, hdr, lst и txt. Заданное по умолчанию расположение этих файлов — %SystemDisk%\Inetpub\nntpfile. Нельзя изменять или удалять эти файлы. Средства восстановления службы NNTP исправляют эти файлы, если они были случайно удалены или повреждены.
Свойства — это параметры, которые могут быть настроены для конкретного узла (сайта). Например, можно использовать оснастку Internet Information Services (IIS) Manager для того, чтобы изменить номер порта TCP для сервера (по умолчанию — 80). Свойства видны в окнах свойств узла (см. рис. 16.9) и хранятся в базе данных, которая называется метабазой (metabase).
В процессе инсталляции IIS различным свойствам и параметрам присваиваются значения по умолчанию. Можно использовать настройки по умолчанию для 1IS или настраивать эти параметры, чтобы адаптировать функциональность сервера к потребностям сети. Можно также обеспечить дополнительные функции, улучшить производительность, а также изменить настройки защиты, внося изменения в настройки по умолчанию.
Свойства могут быть установлены на уровне узлов, на уровне каталогов или на уровне файлов. Параметры настройки на более высоких уровнях (например, на уровне узлов) автоматически используются (наследуются) более низкими уровнями (например, уровнем каталогов), но все могут редактироваться раздельно на более низком уровне. Если свойство было изменено для отдельного узла, каталога или файла, а затем будет произведен возврат к значению по умолчанию, то автоматическая настройка не отменит индивидуальную настройку. При выполнении такого рода действий администратор получит предупреждающее сообщение, и ему нужно будет ответить на вопрос, хочет ли он изменить настройку для отдельного узла, каталога или файла, чтобы она соответствовала новым значениям по умолчанию.
Некоторые свойства имеют значение, которое представляет собой список. Например, значение свойства "Документ, используемый по умолчанию" (Default Document) — список документов, которые будут загружены, когда пользователь не задает файл в URL. Пользовательские сообщения об ошибках, управление доступом по TCP/IP, отображение MIME — примеры свойств, которые хранятся в виде списка. Хотя эти списки состоят из нескольких записей, IIS рассматривает список как единое целое. Если список редактируется для каталога, а затем производится глобальная замена на уровне узла, список на уровне каталога полностью заменяется новым списком, полученным с уровня узла; списки не объединяются. Если содержимое свойства-списка редактируется на низком уровне (например, на уровне каталога или файла), то это свойство отображает как значения, определенные на этом уровне, так и значения, унаследованные с высоких уровней.
Технология ASP.NET является развитием Active Server Page (ASP). Данная технология представляет собой универсальную платформу для разработки веб-приложений корпоративного уровня. ASP.NET предлагает новую модель программирования и инфраструктуру, которые позволяют разрабатывать защищенные и масштабируемые решения. В ASP.NET следует отметить следующие функциональные возможности:
возможности администрирования. Параметры, определяющие конфигурацию ASP.NET, хранятся в текстовом файле. Это позволяет выполнять изменение конфигурации ASP.NET посредством любого текстового редактора. Все произведенные изменения вступают в силу немедленно;
средства безопасности. ASP.NET предлагает разработчику веб-приложений несколько типовых схем аутентификации и авторизации пользователей. Разработчик может использовать в своем приложении любую из предлагаемых схем или заменить их другими;
простота развертывания. Развертывание ASP.NET-приложений выполняется путем копирования файлов приложения в специальную папку на веб-сервере. Перезапуск веб-сервера при этом не требуется;
высокая производительность. ASP.NET имеет дело со скомпилированным кодом. Благодаря этому ASP.NET получает возможность эффективно использовать различные механизмы оптимизации кода (например, механизмы раннего связывания или оптимизация под конкретную платформу);
гибкое кэширование. ASP.NET может выполнять кэширование страниц данных (как страницу целиком, так и ее часть) в соответствии с нуждами приложения;
поддержка национальных языков. Поскольку ASP.NET использует Unicode, разработчики имеют обширные возможности для применения в своих приложениях национальных алфавитов;
поддержка мобильных устройств. Microsoft заявляет, что ASP.NET поддерживается любым браузером, запущенным на любом устройстве;
доступность и масштабируемость. ASP.NET разрабатывалась в расчете на использование в крупных кластерных системах. Реализованные в рамках IIS 6.0 механизмы позволяют гарантировать высокую степень доступности приложений. Если с процессом, в рамках которого выполняется приложение, возникнут проблемы, система самостоятельно запустит новый процесс, который возьмет на себя задачи обслуживания запросов пользователей;
возможности отладки. ASP.NET обеспечивает возможность трассировки и отладки кода приложений. При этом возможна как локальная, так и удаленная отладка при помощи специальных инструментов отладки .NET Framework;
интеграция с .NET Framework. ASP.NET является частью платформы .NET Framework. Разработчики могут использовать возможности, предоставляемые этой платформой при создании приложений;
совместимость с существующими ASP-приложениями. Развертывание ASP.NET в рамках IIS не влияет на функционирование уже работающих ASP-приложений. ASP-приложения и ASP.NET-приложения могут сосуществовать на одном сервере, не мешая друг другу.
Минимальная аппаратная конфигурация для службы индексирования — та же, что и для Windows Server 2003. Однако индексация и работа механизмов поиска зависят от количества и размера документов, которые будут проиндексированы, интенсивности поступления поисковых запросов и сложности запросов. На работу службы также влияет мощность компьютера. Компьютер с минимальной аппаратной конфигурацией для Windows Server 2003 хорошо обрабатывает запросы, если число одновременных запросов не слишком высоко. Для маленькой организации этого может оказаться достаточно, но для большой организации, обслуживающей много пользователей, рекомендуется более мощная конфигурация.
Если документов много, а памяти для работы службы не хватает, производительность системы может серьезно понизиться. Если компьютер при функционировании службы работает медленно, можно попробовать настроить производительность службы (см. ниже). Можно улучшить производительность службы и компьютера в целом, увеличивая общий объем оперативной памяти и объем памяти, выделенный для кэша свойств (property cache). Более быстрый процессор увеличивает скорость индексации и обработки запросов.
Полный объем документов, которые будут проиндексированы, и тип файловой системы также влияют на объем дискового пространства, требуемого для хранения данных службы индексирования. В файловой системе FAT пространство, необходимое для каталога, плюс временное рабочее пространство, приблизительно равно 30% объема индексируемого текста. В файловой системе NTFS требуется пространство, приблизительно равное 15% объема индексируемого текста.
Использование новых технологий динамической публикации содержимого веб-сайтов требует от служб IIS высокой производительности. Разработчиками реализован целый ряд механизмов и технологий, позволяющих увеличить производительность компонентов IIS по сравнению с предыдущими версиями. Эти механизмы и технологии кратко описаны в табл. 16.4.
Таблица 16.4. Технологии и механизмы, улучшающие производительность служб IIS
Функциональная возможность | Описание | ||
Реализация поддержки протокола HTTP на уровне ядра операционной системы | Поддержка протокола HTTP реализована на уровне ядра Windows Server 2003 в качестве специального драйвера -HTTP.sys (сами службы IIS функционируют на пользовательском уровне). Этот драйвер обрабатывает все входящие HTTP-запросы. Обработка запросов на уровне ядра операционной системы позволяет повысить эффективность функционирования веб-приложений | ||
Размещение части ASP-кэша на жестком диске | ASP-кэш служит для размещения ASP-шаблонов, используемых в процессе обработки ASP-сценариев. Использование кэша позволяет повысить эффективность обработки сценариев. По умолчанию в кэше может быть размещено не более 250 шаблонов. Если приложения интенсивно используют ASP-сценарии, количество шаблонов может быть значительно большим. В IIS 6.0 часть ASP-кэша может быть размещена на жестком диске | ||
Асинхронная обработка CGI-сценариёв | IIS реализует асинхронное выполнение CGI-сценариев | ||
Трассировка для оценки нагрузки на приложение | Администратор может активизировать механизм трассировки, позволяющий выполнить оценку нагрузки на некоторое приложение | ||
Централизованное протоколирование | Множество веб-сайтов могут использовать для протоколирования один общий журнал. При этом информация в этот журнал записывается в двоичном неформатированном виде | ||
Управление качеством обслуживания (QoS) | Под качеством обслуживания в данном случае понимается набор требований к сети, обуславливающих возможность передачи данных в определенном темпе. IIS 6.0 предоставляет администратору возможность управлять качеством обслуживания, устанавливая ограничения на количество подключений, периоды простоя, длину очереди пулов приложений и регулируя процесс использования полосы пропускания | ||
Мониторинг нагрузки на процессор | Используя специальную утилиту, поставляемую в составе IIS, администратор может автоматизировать мониторинг нагрузки на процессорную подсистему. Утилита может автоматически останавливать процесс, чересчур интенсивно использующий процессорную подсистему. Эта утилита также может быть использована для нахождения неэффективных CGI-сценариев, чересчур интенсивно использующих процессор | ||
Контроль полосы пропускания | Администратор может выделить для работы служб IIS определенную часть доступной полосы пропускания канала. Этот шаг позволит зарезервировать часть имеющейся полосы пропускания для работы других важных приложений (например, электронной почты) | ||
Поддержка больших объемов ОЗУ | IIS 6.0 может поддерживать кэш емкостью до 64 Гбайт (для архитектуры х86) |
По сравнению с предыдущими версиями, службы IIS 6.0 являются более стабильным решением, что обусловлено новой архитектурой механизма обработки запросов. Теперь каждое пользовательское веб-приложение может выполняться в рамках своего собственного рабочего процесса. В табл. 16.2 перечислены функциональные возможности IIS 6.0, обуславливающие улучшение стабильности решений на базе данного продукта.
Таблица 16.2. Функциональные возможности, улучшающие стабильность служб IIS
Функциональная возможность | Описание | ||
Режимы функционирования | Службы IIS могут функционировать в одном из двух режимов: режим изолированных рабочих процессов и режим совместимости с IIS 5.O. В режиме изолированных рабочих процессов (worker process isolation mode) каждое веб-приложение может выполняться в отдельном рабочем процессе. При этом рабочие процессы приложений запускаются отдельно от основного процесса WWW-службы (inetinfo.exe), что позволяет избежать остановки других приложений в ситуации, когда одно из приложений отказывает или зависает | ||
Множество пулов приложений | Данная возможность доступна только в режиме изолированных рабочих процессов. Под пулом приложений понимается конфигурация, связывающая один или несколько приложений с одним или несколькими рабочими процессами. Проблемы, вызванные ошибками в одном из пулов приложений, не воздействуют на приложения в других пулах | ||
Ограничение длины очереди пула приложений | Администратор может ограничить длину очереди для пула приложений. Сервер начнет отклонять новые запросы в случае превышения некоторого заданного числа запросов, поступающих определенному пулу приложений. Благодаря этому механизму администратор может предотвратить истощение ресурсов сервера | ||
Очереди на уровне ядра | Механизм, функционирующий на уровне ядра IIS, помещает все запросы, адресованные отказавшему пулу приложений, в специальную очередь. Поскольку пулы приложений могут выполняться в контексте различных рабочих процессов, служба WWW может инициировать новый процесс для обслуживания запросов из этой очереди | ||
Мониторинг состояния процессов | Служба WWW может выполнять мониторинг состояния рабочих процессов. В случае возникновения проблем служба способна прервать процесс или заменить его другим. В качестве варианта отказавший процесс может быть "изолирован" от пула приложений. Поскольку его работа не прерывается, разработчики и администратор могут выполнить диагностику проблемы | ||
Отслеживание времени простоя рабочего процесса | Администратор может контролировать процесс использования системных ресурсов, определив для рабочих процессов допустимое время простоя (idle timeout). По истечении этого времени процесс будет остановлен | ||
Защита от быстрого отказа | Администратор может активизировать механизм, который отключает пул приложений в ситуации, когда в рамках данного пула происходит множество последовательных ошибок | ||
Утилизация рабочих процессов | Службы IIS могут быть сконфигурированы таким образом, чтобы периодически перезапускать рабочие процессы. Тем самым гарантируется освобождение системных ресурсов и удаление неактивных рабочих процессов. Перезапуск может быть поставлен в зависимость от периода времени, в течение которого процесс активен, количества обработанных запросов, либо выполняться через определенные промежутки времени |
В составе IIS 6.0 реализован целый ряд механизмов и технологий, увеличивающих защищенность веб-приложений и оперируемых ими данных. Одно из коренных отличий служб IIS 6.0 от предыдущих версий (с точки зрения системы безопасности) заключается в том, что эти службы не инсталлируются по умолчанию непосредственно в ходе установки операционной системы. При необходимости администратор должен вручную выполнить процесс установки компонентов IIS. Тем самым сокращается количество уязвимых мест сервера под управлением Windows Server 2003 (ведь по статистике большинство атак на Windows 2000-серверы использовали уязвимости в службах IIS). Следует заметить, что службы IIS, устанавливаемые по умолчанию, зачастую просто выпадали из внимания администраторов (особенно тех, кто имел недостаточный опыт работы). Новый подход гарантирует, что службы будут устанавливаться только тогда, когда они действительно необходимы.
Другим новшеством явилось то, что даже в случае ручной установки компонентов служб IIS по умолчанию включается поддержка только статических механизмов публикации материалов. Механизмы динамической публикации содержимого веб-сайтов (такие как ASP, XML, WebDAV и другие технологии) по умолчанию отключены. Администратор должен вручную разрешить использование механизмов динамической публикации. Кроме того, обязательным условием является наличие отображений используемых расширений на соответствующие приложения. В противном случае будет возвращаться ошибка 404 (ресурс не обнаружен).
Сведения о новых функциональных возможностях IIS 6.0, обуславливающих улучшение безопасности решений на его базе, приведены в табл. 16.3.
Таблица 16.3. Функциональные возможности, улучшающие защищенность служб IIS
Функциональная возможность | Описание | ||
Цифровая аутентификация | Данный механизм аутентификации представляет собой более защищенный вариант базовой аутентификации. В отличие от последней, предполагающей передачу информации о пароле открытым текстом, в процессе цифровой аутентификации передается хэшированный пароль. Для хэширования применяется алгоритм MD5. Использование механизма цифровой аутентификации описано в рамках протокола HTTP 1.1, поэтому для его использования требуется, чтобы браузер поддерживал этот стандарт | ||
Безопасное взаимодействие | Для реализации защищенного канала передачи данных между клиентом и сервером могут быть использованы механизмы Security Socket Layer версии 3.0 (SSL) и Transport Layer Security (TLS). Эти механизмы могут быть также применены для организации проверки подлинности участников соединения | ||
Шлюзовое серверное шифрование (Server-Gated Cryptography, SGC) | Это расширение протокола SSL, которое позволяет финансовым учреждениям, использующим службы IIS в экспортном варианте, применять мощное 128-разрядное шифрование. Возможности SGC встроены в службы IIS, однако, чтобы использовать SGC, требуется специальный сертификат SGC | ||
Возможность выбора криптографических алгоритмов | Механизм SSL является надежным способом организации защищенного взаимодействия. Однако процесс шифрования сетевого трафика между клиентом и сервером приводит к существенной нагрузке на процессорную подсистему. IIS позволяет администратору выбрать поставщика криптографических услуг (Cryptographic Service Provider, CSP) в соответствии со стоящими перед ним задачами. Например, можно задействовать аппаратные устройства, выполняющие шифрование данных или использовать CSP стороннего производителя | ||
Настраиваемые полномочия рабочих процессов | Администратор может сконфигурировать пулы приложений (а соответственно и связанные с ними рабочие процессы) таким образом, чтобы они выполнялись в контексте учетной записи, обладающей полномочиями меньшими, чем учетная запись LocalSystem. Это позволяет сократить риск от возможных атак | ||
Мастера безопасности | В составе IIS реализованы специальные мастера, упрощающие выполнение задач администрирования сервера. Это мастер Web Server Certificate Wizard, упрощающий процесс создания запросов на получение сертификатов и управление циклом жизни сертификата, а также мастер CTL Wizard, используемый для настройки списков доверия сертификатов (Certificate Trust List, CTL). Список CTL представляет собой перечень центров авторизации или поставщиков сертификатов (Certificate Authorities, CA), получивших доверие, для заданного каталога. CTL особенно полезен для поставщиков услуг Интернета (ISP), которые держат на своем сервере много веб-узлов клиентов и должны хранить различные утвержденные списки центров авторизации для каждого узла | ||
Совместимость с протоколом Kerberos v5 | Службы IIS полностью интегрированы с моделью безопасности Kerberos, реализованной в Microsoft Windows Server 2003 | ||
Управление развертыванием служб IIS через механизм групповых политик | Используя механизм групповых политик, администратор может запретить пользователям развертывание службы IIS в рамках домена | ||
Управление правами доступа рабочих процессов | Рабочие процессы в рамках IIS запускаются в контексте учетной записи пользователя с ограниченными правами доступа. Это позволяет снизить риск, связанный с возможными атаками | ||
Защита ASP | Все встроенные ASP-функции вызываются в контексте учетной записи, обладающей ограниченными правами доступа | ||
Ограничение на запуск исполняемых файлов | Запуск большинства исполняемых файлов, расположенных в системной папке, разрешен ограниченному кругу лиц (например, членам группы Administrators) | ||
Управление обновлениями | В рамках IIS реализована возможность применения обновлений (патчей) без необходимости остановки служб IIS | ||
Защита от записи для содержимого веб-сайта | По умолчанию анонимным пользователям запрещено выполнение операции записи при работе с веб-сайтами | ||
Ограничение на объем закачиваемых данных | Администратор имеет возможность ограничения объема данных, которые могут быть закачаны на сервер | ||
Контроль переполнения буфера | Рабочий процесс способен обнаружить переполнение буфера и прервать программу, виновную в этом | ||
Управление доступом к исходному коду сценариев | Администратор может устанавливать разрешения на доступ к исходным кодам сценариев. По умолчанию это разрешение отключено | ||
Суб-аутентификация | Механизмы суб-аутентификации (позволяющие использовать механизмы аутентификации сторонних приложений) по умолчанию отключены в IIS 6.0 |
Необходимость в корректном управлении содержимым (наполнением, content) очевидна. Предположим, что создан сложный информационный сервер преуспевающей компании. На каком-то этапе был спроектирован дизайн сервера — заголовки, подвалы и элементы оформления. Однако в самом конце выяснилось, что была допущена ошибка в логотипе компании, который расположен на всех многочисленных страницах узла. Или возникли неисправности в аппаратной части компьютера. При этом может понадобиться перенаправить всех пользователей узла на другой, резервный сервер, пока производится восстановление аппаратуры.
Такие проблемы ярко демонстрируют необходимость корректного управления веб-узлом. И хотя эффективное управление, в конечном счете, зависит от навыка администратора, существует множество основных инструментов и процедур, применяемых для решения наиболее важных задач управления.
Ниже рассмотрим основные процедуры по конфигурированию веб-узла.
Управление службой индексирования осуществляется при помощи специальной оснастки Indexing Service on Local Machine (рис. 16.19).
Рис. 16.19. Оснастка управления службой индексирования
Запустите оснастку Computer Management (Управление компьютером). В пространстве имен оснастки разверните узел Services and Applications | Indexing Service (Службы и приложения Служба индексирования). Для настройки производительности службы индексирования необходимо остановить службу, выбрав в меню Action (Действие) пункт Stop (Стоп). Затем в меню Action (Действие) выберите пункт All Tasks | Tune Performance (Все задачи | Настройка производительности).
В открывшемся окне Indexing Service Usage (Применение службы индексирования) выберите вариант, наиболее соответствующий способу использования службы индексирования на данном компьютере. Если выбран вариант пользовательской настройки — Customize (Настроить), необходимо нажать одноименную кнопку. В диалоговом окне Desired Performance (Производительность индексации) (рис. 16.20) необходимо переместить ползунок Indexing (Построение индекса) в сторону Lazy (Отложенное) для менее интенсивного индексирования или в сторону Instant (Немедленное) для скорейшего индексирования новых и измененных документов. Отложенное индексирование использует меньшее количество ресурсов компьютера; а немедленное — столько ресурсов, сколько возможно. Ползунок Querying (Скорость обработки запросов) необходимо переместить в сторону Low load (Низкая), если ожидается обработка малого количества запросов одновременно, или High load (Высокая), если ожидается обработка большого количества запросов одновременно. Обработка с низкой скоростью использует меньшее количество ресурсов, а с высокой, соответственно, — большее.
Рис. 16.20. Настройка производительности службы индексирования
Закрыв диалоговое окно Indexing Service Usage (Применение службы индексирования), необходимо запустить службу индексирования, выбрав команду Start (Пуск) в меню Action (Действие).
Управление MSMQ на локальном компьютере осуществляется при помощи оснастки Computer Management (Управление компьютером). В пространстве имен этой оснастки необходимо выбрать узел Service and Applications | Message Queuing (Службы и приложения | Очередь сообщений). Основное управление объектами MSMQ в организации осуществляется с применением оснастки Active Directory Users and Computers (Active Directory — пользователи и компьютеры). Для управления MSMQ в организации:
1. Запустите оснастку Active Directory Users and Computers.
2. В меню View (Вид) выберите пункт Users, Groups and Computers as Containers (Пользователи, группы и компьютеры как контейнеры), а затем в том же меню выберите пункт Advanced Features (Дополнительные функции).
3. В пространстве имен оснастки найдите нужный домен, затем подразделение, наконец, нужный компьютер, на котором установлена MSMQ, щелкните правой кнопкой мыши на узле msmq и в контекстном меню выберите пункт Properties (Свойства).
Чтобы добавить или удалить службу MSMQ, на панели управления запустите утилиту Add or Remove Programs (Установка или удаление программ) и воспользуйтесь мастером Windows Components Wizard. Из списка предлагаемых компонентов выберите Application Server (Сервер приложений) и нажмите кнопку Details (Подробно). В открывшемся окне установите флажок в строке Message Queuing (Очереди сообщений) (рис. 16.21). Нажмите кнопку Next (Далее) и следуйте командам мастера.
Рис. 16.21. Установка служб очереди сообщений
При необходимости администратор может выбрать, какие именно компоненты службы очередей сообщений будут установлены на сервере. Для этого, выбрав строку Message Queuing, необходимо нажать кнопку Details и установить флажки около нужных компонентов (рис. 16.22).
Рис. 16.22. Выбор компонентов служб очереди сообщений
Сначала нужно установить сервер MSMQ на контроллере домена Windows Server 2003 (в группе серверов, объединенных территориально), а затем можно устанавливать программное обеспечение MSMQ на других компьютерах.
Как уже было сказано ранее, по соображениям безопасности службы I1S не устанавливаются по умолчанию непосредственно в ходе инсталляции операционной системы. В случае необходимости администратор должен вручную выполнить установку необходимых компонентов IIS при помощи мастера установки компонентов Windows (Add/Remove Windows Components Wizard).
Для управления свойствами служб IIS в Remote Administration (HTML) используется узел, который в оснастке Internet Information Services (IIS) Manager в списке узлов отображается как Web Sites | Administration. При установке IIS данному узлу по умолчанию назначаются номера портов TCP 8099 и SSL 8098. Узел отвечает на запросы веб-браузеров независимо от того, к какому доменному имени (из связанных с данным компьютером) происходит обращение при совпадении номера порта, который добавляется в конце к имени узла. Если используется базовая (basic) аутентификация, то от администратора при подключении к административному узлу будут запрошены имя пользователя и пароль. Только члены группы Administrators (Администраторы) могут использовать данный административный узел.
Хотя HTML-версия диспетчера служб Интернета (рис. 16.6) реализует большинство функциональных возможностей оснастки IIS, версия с использованием HTML предназначена для удаленного управления по медленным коммутируемым линиям. В ней не поддерживается, например, щелчок правой кнопкой мыши. Многие из знакомых кнопок на панели или заголовки вкладок отображаются в виде гиперссылок в левой панели окна браузера.
Рис. 16.6. Утилита Remote Administration (HTML)
Утилита Remote Administration (HTML) может быть установлена только на NTFS-раздел.
Утилита Remote Administration (HTML) по сути представляет собой веб-приложение, доступ к которому осуществляется через Internet Explorer no URL https://<имя_сервера>:8098, где в качестве имя_сервера указывается реальное доменное имя компьютера, на котором функционируют службы IIS. В процессе загрузки утилиты администратор должен будет пройти процесс аутентификации. Только в случае успешного завершения этого процесса утилита будет загружена.
Чтобы публиковать информацию из любого каталога, который не содержится внутри корневого каталога, нужно создать виртуальный каталог. Виртуальный каталог — это каталог, который не содержится в корневом каталоге, но для клиента он выглядит так, как если бы он был частью корневого каталога.
Виртуальный каталог имеет псевдоним, т. е. имя, которое веб-браузеры используют для обращения к этому каталогу. Поскольку псевдоним обычно короче полного пути каталога, пользователям его удобнее вводить. Псевдоним безопаснее; пользователи не знают, где файлы физически расположены на сервере, и не могут использовать эту информацию для изменения этих файлов. Псевдонимы упрощают перемещение каталогов в узле. Не изменяя URL-адрес каталога, можно изменить отображение между псевдонимом и физическим местоположением каталога.
Предположим, что для публикации информации в сети установлен узел infoserver. В табл. 16.6 показано соответствие между физическим местоположением файлов и URL, по которому файлы доступны.
Таблица 16.6. Примеры соответствия между физическим местоположением файлов, псевдонимом и URL-адресом
Физическое местоположение на диске (компьютере) | Псевдоним | Путь URL | |||
c:\wwwroot | Домашний каталог (нет псевдонима) | http://infoserver | |||
\\Server2\info\Data | Data | http://infoserver/Data | |||
c:\wwwroot\Schedule | Нет | http://infoserver/Schedule | |||
c:\wwwroot\Products | Нет | http://infoserver/Products | |||
d:\samples\documents | Text | http://infoserver/text |
Как виртуальные, так и физические каталоги (каталоги без псевдонима) видны в оснастке Internet Information Services (IIS) Manager.
Для простого веб-узла не требуется создание виртуальных каталогов. Можно просто разместить все файлы в основном каталоге узла. Если нужно построить сложный узел или задать различные URL для различных частей узла, можно добавлять виртуальные каталоги по необходимости.
Общение важно для любой группы людей, работающих вместе. Во многих организациях трудно заставить всех членов группы применять средства совместной работы на постоянной основе. Телеконференции могут решить проблемы общения и взаимодействия людей. Они дают возможность любому в группе читать или помещать свою информацию. Просто также найти нужную информацию по заданной тематике, поскольку статьи организованы в виде тематических потоков. В отличие от электронной почты, телеконференции обеспечивают механизм легкого архивирования информации для справочных целей.
Цель: Улучшить возможности взаимодействия между членами отдела, работающими над проектом, и усовершенствовать организацию хранения и архивирования информации.
Состав программного обеспечения: Microsoft Windows Server 2003, Microsoft Internet Information Services (IIS), Microsoft Internet Mail and News или Microsoft Outlook Express.
Среда: Сеть на базе Microsoft Windows.
Установка: Установить службу NNTP — компонент IIS.
Прочие аспекты: Чтобы использовать телеконференции в качестве информационного архива, необходимо запретить удаление статей с истечением времени и производить периодическую архивацию информации.
Функционирование: Выполнение функций поддержки нескольких телеконференций в пределах организации потребует не очень больших ресурсов со стороны сервера. Можно использовать любой компьютер, работающий под управлением Windows Server 2003. Поскольку служба NNTP работает по стандартному протоколу NNTP, сотрудники могут иметь доступ к телеконференциям, используя любое клиентское программное обеспечение, поддерживающее NNTP, однако предпочтительно работать с Microsoft Internet Mail and News и Outlook Express — клиентами, которые обеспечивают дополнительные функции защиты, если есть потребность в таких функциях. Сервер и клиенты должны поддерживать TCP/IP.
URL для телеконференций будет иметь следующие форматы:
news://сервер/телеконференция
news://сервер/телеконференция/статья
где сервер — имя или IP-адрес сервера NNTP, телеконференция — имя телеконференции, а статья — необязательный идентификатор конкретной статьи.
Установка служб IIS может быть выполнена двумя способами: при помощи утилиты Add or Remove Programs, расположенной на панели управления, или при помощи мастера Configure Your Server Wizard. Этот мастер предлагает самый простой способ установки служб IIS. На странице Server Role (Роль сервера) (см. рис. 1.22) необходимо выбрать пункт Application server (IIS, ASP.NET) и нажать кнопку Next (Далее).
Рис. 16.4. Использование мастера Configure Your Server Wizard для установки служб IIS
Мастер предложит активизировать механизм ASP.NET и серверные расширения FrontPage 2002 (рис. 16.4). Затем мастер самостоятельно выполнит установку необходимых компонентов IIS и их начальную настройку.
Установка IIS с помощью утилиту Add or Remove Programs ориентирована на опытных администраторов, которые хотят установить только те компоненты IIS, которые действительно необходимы для решения стоящих перед ними задач. В окне утилиты нажмите кнопку Add/Remove Windows Components, чтобы запустить одноименный мастер. В первом окне мастера необходимо выбрать пункт Application Server (Сервер приложений) и нажать кнопку Details (Подробно). В открывшемся окне нужно установить флажок в строке Internet Information Services (IIS). При необходимости администратор может выбрать, какие именно компоненты IIS должны быть установлены, нажав кнопку Details (Подробно). Ниже перечислены компоненты IIS, которые предлагаются для установки.
Background Intelligent Transfer Service (BITS) Server Extensions (Серверные расширения BITS). Серверные расширения BITS представляют собой механизм фоновой передачи файлов и диспетчер очередей, позволяющий управлять качеством сервиса применительно к службе WWW.
Common files (Общие файлы). Базовые файлы, необходимые для функционирования всех компонентов IIS.
File Transfer Protocol (FTP) Service (Служба FTP). Выбор данного компонента позволяет установить в составе IIS службу FTP.
FrontPage 2002 Server Extensions (Серверные расширения FrontPage 2002). Компонент позволяет осуществлять управление веб-сайтами с помощью инструмента разработки Microsoft FrontPage 2002.
Internet Information Services Manager (Диспетчер служб IIS). Устанавливает оснастку ММС, которая используется для управления всеми компонентами IIS.
Internet Printing (Печать через Интернет). Компонент позволяет осуществлять управление принтерами через HTTP.
NNTP Service (Служба NNTP). Выбор данного компонента позволяет установить в составе IIS службу NNTP.
SMTP Service (Служба SMTP). Выбор данного компонента позволяет установить в составе IIS службу SMTP.
World Wide Web Service (Веб-сервер). Выбор данного компонента позволяет установить в составе IIS службу WWW.
Каждый веб- или FTP-узел должен иметь корневой (домашний) каталог. Домашний каталог — отправная точка для организации информационной структуры публикуемых страниц. Он содержит домашнюю страницу или индексный файл, который является стартовой страницей узла и содержит ссылки на другие страницы на узле. Домашний каталог привязывается к имени домена узла или к имени сервера.
Рис. 16.10. Задание домашнего каталога
Например, если имя домена узла — www.myfirm.com и корневой каталог — \Webserver\MyFirm, то браузер, обращаясь по URL http://www.myfirm.com, получит файлы из корневого каталога. В интрасети, если имя сервера — infoserver, то браузер, обращаясь по URL http: //infoserver, получит доступ к файлам в корневом каталоге.
Корневой каталог по умолчанию создается при установке служб IIS, а также при создании нового веб-узла. Корневой каталог можно изменять (рис. 16.10).