53
АДМИНИСТРИРОВАНИЕ ИНФОРМАЦИОННЫХ СИСТЕМ И СЕТЕЙ Лекция 11. Веб-службы и сервисы Службы Microsoft IIS

Администрирование информационных систем и сетей

Embed Size (px)

DESCRIPTION

Администрирование информационных систем и сетей. Лекция 11. Веб -службы и сервисы Службы Microsoft IIS. Понятие веб-службы. - PowerPoint PPT Presentation

Citation preview

Page 1: Администрирование  информационных  систем и сетей

АДМИНИСТРИРОВАНИЕ ИНФОРМАЦИОННЫХ СИСТЕМ И СЕТЕЙ

Лекция 11.

Веб-службы и сервисы

Службы Microsoft IIS

Page 2: Администрирование  информационных  систем и сетей

Понятие веб-службы• Веб-служба (web service) — программная система,

идентифицируемая строкой URI (Uniform Resource Identifier), чьи общедоступные интерфейсы определены на языке XML.

• Программные модули ИС могут взаимодействовать с веб-службой посредством сообщений, основанных на XML, и передаваемых с помощью интернет-протоколов.

Page 3: Администрирование  информационных  систем и сетей

Основные понятия• URI (Uniform Resource Identifier) —

унифицированный идентификатор ресурса. URI — это короткая последовательность символов, идентифицирующая абстрактный или физический ресурс.

• Единый указатель ресурсов (URL — Uniform Resource Locator) — единообразный локатор (определитель местонахождения) ресурса.

Page 4: Администрирование  информационных  систем и сетей

Структура URL• <схема>://<логин>:<пароль>@<хост>:<порт>/<URL‐путь>

• схема  - схема обращения к ресурсу, в большинстве случаев имеется в виду сетевой протокол

• логин - имя пользователя, используемое для доступа к ресурсу• пароль - пароль, ассоциированный с указанным именем пользователя

хост  полностью прописанное доменное имя хоста в системе DNS или IP-адрес хоста в форме четырёх десятичных чисел, разделённых точками.

• порт - порт хоста для подключения • URL‐путь  уточняющая информация о месте нахождения ресурса

(зависит от протокола)

Page 5: Администрирование  информационных  систем и сетей

Используемые стандарты

XML: Расширяемый язык разметки, предназначенный для хранения и передачи структурированных данных;

SOAP: Протокол обмена сообщениями на базе XML;

WSDL: Язык описания внешних интерфейсов веб-службы на базе XML;

UDDI: Универсальный интерфейс распознавания, описания и интеграции (Universal Discovery, Description, and Integration).

Page 6: Администрирование  информационных  систем и сетей

Достоинства веб-служб

Веб-службы обеспечивают взаимодействие программных систем независимо от платформы;

Веб-службы основаны на базе открытых стандартов и протоколов.

• Использованию XML обеспечивает простоту разработки и отладки веб-служб;

• Использование интернет-протокола HTTP обеспечивает взаимодействие программных систем через межсетевой экран.

Page 7: Администрирование  информационных  систем и сетей

Службы ИНТЕРНЕТ в Windows

Информационные службы Интернета (IIS) обеспечивают комплексные, надежные, масштабируемые, безопасные и регулируемые возможности веб-сервера при работе с внутренними и внешними сетями, а также с Интернетом.

IIS является инструментом для создания коммуникационных платформ динамических сетевых приложений.

IIS используется для поддержки и управления веб-страниц в Интернете или во внутренней сети, для поддержки и управления FTP-узлами, для маршрутизации новостей и почты, которые используют протоколы NNTP и SMTP.

Page 8: Администрирование  информационных  систем и сетей

Возможности служб IIS

IIS 7.0 поддерживает основные веб-стандарты, такие как Microsoft ASP.NET, XML и протокол SOAP, для разработки, реализации и управления веб-приложениями.

IIS 7.0 включает возможности для достижения высокой производительности, надежности, масштабируемости и безопасности большого числа веб-узлов на одном или нескольких серверах IIS.

Page 9: Администрирование  информационных  систем и сетей

Обеспечение надежности служб IIS 7.0

IIS 7.0 обладает повышенной надежностью по сравнению с предыдущими версиями благодаря новой архитектуре обработки

запросов, которая обеспечивает изолированную среду для выполнения

приложений.

• Это позволяет отдельным веб-приложениям работать независимо друг от друга в виде независимых рабочих процессов.

Page 10: Администрирование  информационных  систем и сетей

Режимы работы

• В режиме изоляции рабочих процессов можно изолировать любой объект или процесс — от отдельного веб-приложения до нескольких узлов, обеспечив их работу в виде самостоятельного независимого рабочего процесса службы веб-публикации.

• Это позволит исключить возможность сбоя в работе одного приложения или узла из-за сбоя другого. Изоляция приложений или узлов в отдельные процессы упрощает ряд задач по управлению.

IIS 7.0 работает в

режиме изоляции рабочих

процессов, в котором любой

процесс запускается в

изолированной среде.

Page 11: Администрирование  информационных  систем и сетей

Группы (пулы) приложений

• Группа приложений может быть настроена в режиме изоляции рабочих процессов для обслуживания любых объектов — от одного веб-приложения до нескольких веб-приложений и узлов.

• Назначение приложения группе приложений позволяет изолировать приложения.

• Узлы по умолчанию считаются обычным приложением, где корневое пространство имен "/" настраивается в качестве приложения.

Режим изоляции рабочих

процессов позволяет клиентам создавать

несколько групп приложений, где каждая группа приложений может иметь уникальную

конфигурацию.

Page 12: Администрирование  информационных  систем и сетей

Обеспечение безопасности

IIS 7.0 предоставляет набор средств и технологий обеспечения безопасности, гарантирующих согласованность содержимого веб- и FTP-узлов, а также передаваемых через эти узлы данных.

Функции обеспечения безопасности IIS решают следующие связанные с безопасностью задачи:

• проверка подлинности клиента и сервера, • управление доступом, • шифрование потока данных, • использование цифровых сертификатов, • аудит.

Page 13: Администрирование  информационных  систем и сетей

Проверка подлинностиМетод

Уровень безопасности

Способ отправки паролей

Использование с прокси-серверами и брандмауэрами

Требования к клиенту

Анонимная проверка подлинности

ОтсутствуетНе применяется

Доступно Любой обозреватель

Обычная проверка подлинности

Низкий

Открытый текст в кодировке Base64

Доступно, но отправка пароля незащищенным текстом через прокси-сервер или брандмауэр рискованна, поскольку кодировка Base64 не зашифрована и легко декодируется

Большинство обозревателей

Краткая проверка подлинности

Средний Хешированная ДоступноInternet Explorer 5 или более поздней версии

Расширенная краткая проверка подлинности

Средний Хешированная ДоступноInternet Explorer 5 или более поздней версии

Встроенная проверка подлинности Windows

Высокий

Хешированная при использов-ании NTLM.Билет Kerberosпри использов-ании Kerberos

Недоступно, за исключением использования через подключение PPTP

Internet Explorer 2.0 или более поздниеверсии для NTLM; Windows 2000 или более поздние версии с Internet Explorer 5 или более поздними версиями для Kerberos

Проверка подлинности сертификатов

Высокий ОтсутствуетДоступно при использовании подключения SSL

Internet Explorer и Netscape

Проверка подлинности .NET Passport

Высокий ЗашифрованаДоступно при использовании подключения SSL

Internet Explorer и Netscape

Page 14: Администрирование  информационных  систем и сетей

Управление доступом

Правильное управление доступом к содержимому веб- и FTP-узлов является основным элементом организации защищенного веб-сервера.

Управление доступом к содержимому веб- и FTP-узлов может быть организовано на нескольких уровнях, от всего веб- или FTP-узла до отдельных файлов.

• Права пользователя являются правами на выполнение определенных действий на компьютере или в сети.

• Разрешения представляют правила, связанные с объектом, таким как файл или папка, которые определяют, какие учетные записи могут получить доступ к объекту.

Каждой учетной записи предоставляются права пользователя и разрешения.

Page 15: Администрирование  информационных  систем и сетей

Схема управление доступом

Схема управление доступом

• Клиент запрашивает ресурс на сервере. • IP-адрес клиента проверяется на ограничения IP-адресов, заложенные в IIS. Если

IP-адресу отказано в доступе, запрос отклоняется и пользователю возвращается сообщение «403 Доступ запрещен».

• Сервер, если это задано в настройке, запрашивает у клиента информацию для проверки подлинности. Обозреватель либо приглашает пользователя указать имя и пароль, либо предоставляет эту информацию автоматически.

• IIS проверяет допустимость учетной записи пользователя. Если учетная запись пользователя не является допустимой, запрос отклоняется и пользователю возвращается сообщение «401 Отказано в доступе».

• IIS проверяет наличие у пользователя веб-разрешений для запрашиваемого ресурса. Если таких разрешений нет, запрос отклоняется и пользователю возвращается сообщение «403 Доступ запрещен».

• Добавляются любые модули безопасности, например, проверка в Microsoft ASP.NET.

• IIS проверяет для ресурса разрешения NTFS на статические файлы, ASP-страницы и CGI-файлы. Если у пользователя нет разрешений NTFS, запрос отклоняется и пользователю возвращается сообщение «401 Отказано в доступе».

• Если у пользователя имеются разрешения NTFS, запрос выполняется.

Page 16: Администрирование  информационных  систем и сетей

Шифрование соединений (SSL/TLS)

Шифрованием называют преобразование элементов информации с помощью математической функции, после которого восстановление исходной информации становится исключительно трудным для всех, кроме лица, которому адресована информация.

Основой этого процесса является математическое значение, которое называют ключом, используемое функцией для однозначного сложного преобразования информации.

После установления защищенной связи специальный ключ сеанса используется и веб-сервером, и веб-обозревателем пользователя как для шифрования, так и для расшифровки информации.

Например, когда правомочный пользователь пытается загрузить файл с веб-узла, для которого требуется безопасный канал связи, веб-сервер использует ключ сеанса для шифрования файла и относящихся к нему заголовков HTTP.

После получения зашифрованного файла веб-обозреватель использует копию того же ключа сеанса для восстановления файла.

Этот метод шифрования, несмотря на защиту, имеет существенный недостаток: при создании защищенного канала по незащищенной сети может передаваться копия ключа сеанса. Это означает, что компьютерному взломщику, желающему нарушить систему безопасности подключения, достаточно перехватить ключ сеанса. Для предотвращения таких ситуаций на веб-сервере применяется дополнительный способ шифрования.

Page 17: Администрирование  информационных  систем и сетей

Шифрование с открытым ключом

Средство безопасности веб-сервера, работающее по протоколу SSL, использует метод шифрования, известный под именем шифрования с открытым ключом для защиты ключа сеанса от перехвата при передаче.

Шифрование с открытым ключом, в котором используются два дополнительных ключа, закрытый и общий, выполняется следующим образом:

• Веб-обозреватель пользователя устанавливает защищенную связь (https://) с веб-сервером. • Веб-обозреватель пользователя и сервер вступают в диалог, чтобы определить уровень

шифрования, который должен использоваться для защиты подключений. • Веб-сервер отправляет обозревателю его открытый ключ. • Веб-обозреватель шифрует сведения, используемые при создании ключа сеанса, с

помощью открытого ключа и отправляет их на сервер. • С помощью закрытого ключа сервер расшифровывает сообщение, создает ключ сеанса,

шифрует его с помощью открытого ключа и отправляет обозревателю. • Ключ сеанса используется как сервером, так и веб-обозревателем для шифрования и

расшифровывания передаваемых данных.

Page 18: Администрирование  информационных  систем и сетей

Сертификаты

Сертификаты содержат сведения, используемые для проверки подлинности пользователей сети.

Как и обычные формы установления подлинности, сертификаты позволяют веб-серверам и пользователям проверить подлинность друг друга перед установлением соединения.

Сертификаты содержат также значения для шифрования, или ключи, которые используются для установления соединения по протоколу SSL между клиентом и сервером.

При использовании соединения SSL такие данные, как номера банковских карт, передаются по сети в зашифрованном виде, поэтому не могут быть перехвачены и использованы неавторизованными лицами.

Page 19: Администрирование  информационных  систем и сетей

Типы сертификатов

Существуют два типа сертификатов, используемых протоколом SSL, — серверные и клиентские сертификаты. Каждый из них имеет свой формат и назначение.

• Серверные сертификаты содержат сведения о сервере, что позволяет клиенту однозначно идентифицировать сервер до передачи важной информации.

• Клиентские сертификаты содержат личные данные клиентов, запрашивающих доступ к узлу, и позволяют идентифицировать пользователей перед предоставлением доступа к ресурсам узла.

Page 20: Администрирование  информационных  систем и сетей

Функции аудита

Для отслеживания действий пользователей и обнаружения попыток несанкционированного доступа к каталогам и файлам в системе NTFS можно использовать средства аудита.

В журнал аудита могут быть записаны следующие события:

• успешные и неуспешные попытки входа пользователей в систему; • попытки доступа пользователей к запрещенным учетным записям; • попытки выполнения пользователями запрещенных команд.

Page 21: Администрирование  информационных  систем и сетей

Новая архитектура IIS

• Основные изменения IIS 7.0 относятся к архитектуре, обработке запросов, поддержке платформы приложений PHP и хранилищу настроек.

• В IIS 6.0 функции по большей части носили характер «все или ничего». Необходимо было установить все функции, а настройка IIS осуществлялась только с помощью интерфейса ISAPI.

Page 22: Администрирование  информационных  систем и сетей

Модульная архитектура IIS

IIS 7.0 предоставляет стандартные блоки для создания собственного пользовательского веб-сервера.

• Это ведет к снижению административных расходов благодаря уменьшению количества возможных направлений атак на сервер и устранению необходимости обновления неиспользуемых компонентов.

• Ключевым моментом этого нового подхода является модульная архитектура IIS 7.0.

Page 23: Администрирование  информационных  систем и сетей

Модули IIS 7.0

Page 24: Администрирование  информационных  систем и сетей

Типы модулей

Native Modules

• dll – библиотеки, созданные на основе IIS Native Server API• Устанавливаются на уровне сервера, включаются для

конкретных приложений

Managed Modules• Сборки .NET, создаются на любом управляемом языке .NET• Регистрируются для веб-приложения не требуют установки

Интеграция двух типов моделей обеспечивает унифицированную модель безопасности

Page 25: Администрирование  информационных  систем и сетей

Установка по умолчанию

Ниже приведены функциональные возможности, включенные в установку по умолчанию:• Основные функции HTTP, включая статическое содержимое,

документ по умолчанию, обзор каталога и ошибки HTTP• Функции работоспособности и диагностики, такие как ведение

журнала HTTP и монитор запросов• Функции безопасности, такие как фильтрация запросов• Функции повышения производительности, такие как сжатие

статического содержимого• Средства управления, в том числе консоль управления IIS• Служба активации процессов Windows

Page 26: Администрирование  информационных  систем и сетей

Основные термины

Web Server (IIS Server)

Web Site

Application

Virtual Directory

Application Pool

Administration Tools• IIS Manager• Appcmd.exe

Page 27: Администрирование  информационных  систем и сетей

Внешний вид Диспетчера IIS 7.0

Page 28: Администрирование  информационных  систем и сетей

Создание нового веб-сайта

Имя сайта – идентификатор

для IIS

Каталог с контентом сайта

Параметры привязки

Тип протоколаIP-адрес

ПортИмя узла

Page 29: Администрирование  информационных  систем и сетей

Архитектура IIS

svchost.exe

Windows Process Activation

Services (WAS)

World Wide Web Publishing Services (W3SVC)

Application Pool

worker process (w3wp.exe)

Начало обработки

Аутентификация

Авторизация

Обновление кэша

Протоколирование

Завершение

Файлы конфигурации

HTTP.SYS

Page 30: Администрирование  информационных  систем и сетей

Драйвер HTTP.SYS

• Проверка и прием HTTP- и HTTPS- запросов• Обработка SSL в режиме ядра

• Поддержка очередей для пулов приложений• Сбой приложения не приводит к прерыванию сервиса

• Кэширование ответов приложений• Сокращение количества переключений контекста

• Отсутствие кода приложения• Сбой приложений не влияет на ядро системы

НТТР.SYS

Очередь пула приложений

Очередь пула приложений

Очередь пула приложений

Кэш ответов

Page 31: Администрирование  информационных  систем и сетей

Службы W3SVC и WAS

• World Wide Web Publishing Services• Настройка драйвера HTTP.SYS

• Информация о привязке сайта (порт, адрес, заголовок)• Настройки приложений и пулов приложений• Изменения в конфигурации

• Предоставление счетчиков производительности

svchost.exe

W3SVC

Мониторинг производительности

Управление HTTP.SYS

WAS

Управление процессами

Управление конфигурацией

Интерфейс слушателей

Page 32: Администрирование  информационных  систем и сетей

Конвейер обработки запроса

Каждый веб-узел на сервере имеет встроенный конвейер обработки запросов и может быть запущен в одном из двух режимов – встроенном или классическом.

• Встроенный режим, режим по умолчанию, позволяет подключать к конвейеру определенные функциональные возможности, обеспечивая настраиваемый контроль над обработкой запроса.

• Для обеспечения совместимости классический режим воспроизводит функции IIS 6.0/ISAPI с помощью модуля ISAPI в конвейере.

Page 33: Администрирование  информационных  систем и сетей

Порядок применения модулей IIS

В конвейере обработки запроса модули применяются в определенном порядке• Порядок задается в секции <modules> файла

ApplicationHost.config

Администратор может изменить порядок применения модулей

Page 34: Администрирование  информационных  систем и сетей

Конфигурация IIS

Все настройки IIS 7.0 хранятся в виде иерархии XML-файлов

• Используется принцип конфигурационных файлов .NET

Иерархия файлов соответствует URL-иерархии

• Путь иерархии задается так:• Machine/webroot/apphost/<sitename>/<Virtualpath>

При просмотре настроек для конкретного URL просматриваются файлы для каждого сегмента пути

• Настройки могут задаваться на верхнем уровне и наследоваться нижележащими• Для любого пути настройки могут быть установлены• С помощью файла web.config размещенного в директории• Используя специальные тэги (LocationTags) на верхнем уровне

Page 35: Администрирование  информационных  систем и сетей

Настройки .NET Framework

Иерархия файлов настройки

Machine.config

Настройки ASP.NET Root web.config

Настройки сервера IIS ApplicationHost.config

Настройки сайтов и приложений

web.config

web.config

Page 36: Администрирование  информационных  систем и сетей

Расположения и пути

Файл Расположение Конфигурационный путь

Machine.config %windir%\Microsoft.NET\Framework\<version>\config

Machine

Root web.config %windir%\Microsoft.NET\Framework\<version>\config

Machine/webroot

ApplicationHost.config %windir%\system32\inetsrv\config Machine/webroot/AppHost

Распределенные web.config

Директории сайтов, приложений, виртуальных каталогов

Machine/webroot/AppHost/<site>/<VirtualDir>

Page 37: Администрирование  информационных  систем и сетей

Дополнительные файлы

Redirection.config• Настройки Shared Configuration• %windir%\system32\inetsrv\config

Administration.config• Настройки IIS Manager• %windir%\system32\inetsrv\config

Файлы схемы• IIS_schema.xml• FX_schema.xml• ASPNET_schema.xml• %windir%\system32\inetsrv\config\schema

Временный файл пула приложений• %systemdrive%\inetpub\temp\apppools\<ApplicationPoolName>.config

Page 38: Администрирование  информационных  систем и сетей

Утилиты администрирование IIS

Диспетчер IIS• Графический интерфейс • Не все настройки доступны• Новые модули расширения

Appcmd.exe• Заменяет все утилиты и скрипты IIS 6.0• Требует административных привилегий• Не поддерживает удаленное управление

WMI• Обеспечивает управление с ОС• Требует написание кода

PowerShell• Провайдер устанавливается отдельно• Не поддерживается в режиме Server Core

Page 39: Администрирование  информационных  систем и сетей

Удаленное управление

Используется служба Web Management Service (WMSvc)

Защищенное соединение на основе HTTPS

Член группы локальных администраторов может подключится на уровне всего сервера:• Доступны все настройки• Не требуется явных разрешений

Возможно подключение остальных пользователей на уровне отдельного сайта или приложения • Требуется установка явных разрешений

Page 40: Администрирование  информационных  систем и сетей

Делегирование административных полномочий

Обеспечивает регулирование уровня доступа владельцев, разработчиков и администраторов сайта

Поддерживает учетные записи Windows и IIS Manager

Обеспечивает возможность сокрытия настроек

Веб-приложения - самый низкий уровень настроек

Page 41: Администрирование  информационных  систем и сетей

Настройка удаленного управления

Page 42: Администрирование  информационных  систем и сетей

Настройка делегирования управления веб-сервером

• Appcmd.exe Unlock Config “Default web site /” /section:system.webserver /serverRuntime /commit:apphost

• <location path= “Default web site” overrideMode=“Allow”>• <system.webServer>• <serverRuntime />• </system.webServer>• </location>

Page 43: Администрирование  информационных  систем и сетей

Провайдер PowerShell для IISОбеспечивает автоматизацию задач с управлением и

поддержкой веб-сервера IIS

Преимущества: Администрирование с

помощью скриптов Возможность

многократного повторения на множестве веб-серверов

Консолидация информации со множества веб-серверов в реальном времени

Возможности Добавление, удаление,

изменение конфигурации сайтов, пулов приложений, виртуальных каталогов

Конфигурирование параметров SSL

Резервное копирование конфигураций

Мониторинг

Page 44: Администрирование  информационных  систем и сетей

Пример команды PowerShell• Создание сайта

• New-Website –Name MySite –Port 8000• -PhysicalPath c:\www –ApplicationPool MyAppPool

Page 45: Администрирование  информационных  систем и сетей

Возможности PowerShell 2.0PSSession

Page 46: Администрирование  информационных  систем и сетей

Требования к серверу для обеспечения PSSession• Необходимо наличие следующий компонентов:

• .NET Framework 2.0• WinRM• PowerShell 2.0

Page 47: Администрирование  информационных  систем и сетей

Создание веб-узла

При добавлении нового веб-узла средствами Диспетчера IIS указываются:

• Имя сайта• Пул приложения• Физический путь (локальный или сетевой

ресурс)• Привязка, включающая в себя:• Тип (http, https)• ip-адрес• Порт• Имя узла

Page 48: Администрирование  информационных  систем и сетей

Дополнительные настройки

Для контроля над сетевыми ресурсами могут быть установлены:

• Пропускная способность (байт/сек)• Максимальное количество подключений• Тайм-аут соединения (сек)

Можно изменить стандартные сообщения об ошибках

• Есть исключения – ошибка 500 Internal Server Error

Page 49: Администрирование  информационных  систем и сетей

Страницы ошибок

Page 50: Администрирование  информационных  систем и сетей

Application

Набор скриптов, исполняемых файлов, модулей и контента, обеспечивающих функциональность сайта.

Соответствует некоторой части пространства имен URL сайта.

Включает как минимум одну виртуальную директорию (корневую директорию “/”).

IIS 7.0 поддерживает набор различных типов приложений.

Page 51: Администрирование  информационных  систем и сетей

Виртуальный каталог

Виртуальный каталог устанавливает соответствие между URL-путем и контентом.

Расположение контента:

• Физический путь (на локальном сервере)• UNC путь

Если URL не указан конкретный документ, отображается документ по умолчанию • Документов по умолчанию может быть несколько• Администратор может упорядочить документы по умолчанию• Если документ по умолчанию не задан, отклик определяется настройкой

Просмотр каталога (Directory Browsing)

Page 52: Администрирование  информационных  систем и сетей

Документы по умолчанию

Page 53: Администрирование  информационных  систем и сетей

Application Pool

Объект IIS, обеспечивающий контекст и изоляцию приложений

Обслуживается одним или несколькими рабочими процессами

Может содержать один или несколько приложений

Обеспечивает контроль за работой приложений с помощью функции Recycling

Поддерживает два режима обработки запросов

• Интегрированный • Классический

На уровне пула задается версия .NET