Internet Information Services

редактировать

Internet Information Services
Снимок экрана консоли диспетчера IIS для Internet Information Services 8.5 Снимок экрана консоли диспетчера IIS для Internet Information Services 8.5
Разработчик (и) Microsoft
Первый выпуск30 мая 1995 г.; 25 лет назад (1995-05-30)
Стабильный выпуск 10.0.17763.1 / 2 октября 2018 г.; 2 года назад (2018-10-02)
Написано наC ++
Операционная система Windows NT
Доступно наНа тех же языках, что и в Windows
Тип Веб-сервер
Лицензия Часть Windows NT (та же лицензия)
Веб-сайтwww.iis.net

Internet Information Services (IIS, ранее Internet Information Server ) - это расширяемое программное обеспечение веб-сервера, созданное Microsoft для использования с Windows Семья NT. IIS поддерживает HTTP, HTTP / 2, HTTPS, FTP, FTPS, SMTP и NNTP. Он является неотъемлемой частью семейства Windows NT со времен Windows NT 4.0, хотя может отсутствовать в некоторых выпусках (например, Windows XP Home edition) и по умолчанию неактивен.

Содержание

  • 1 История
  • 2 Функции
    • 2.1 Express
    • 2.2 Расширения
  • 3 Использование
  • 4 Безопасность
  • 5 См. Также
  • 6 Ссылки
  • 7 Внешние ссылки

История

Первый веб-сервер Microsoft был исследовательским проектом Европейского академического центра Microsoft Windows NT (EMWAC), входящего в состав Эдинбургского университета в Шотландии, и распространялся как бесплатное ПО. Однако, поскольку сервер EMWAC был не в состоянии обрабатывать объем трафика, идущего на Microsoft.com, Microsoft была вынуждена разработать собственный веб-сервер IIS.

Практически все версии IIS были выпущенный вместе с версией Microsoft Windows или вместе с ней:

  • IIS 1.0 изначально был выпущен как бесплатное дополнение для Windows NT 3.51.
  • IIS 2.0 был включен в Windows NT 4.0.
  • IIS 3.0, который был включен в Пакет обновления 2 Windows NT 4.0, представил среду динамических сценариев Active Server Pages.
  • IIS 4.0 был выпущен как часть «Дополнительный пакет» для Windows NT 4.0. Он представил новое административное приложение на основе MMC.
  • IIS 5.0, поставляемый с Windows 2000, представил дополнительные методы аутентификации, поддержку протокола WebDAV и улучшения в ASP. IIS 5.0 также отказался от поддержки протокола Gopher. В IIS 5.0 добавлен HTTP.SYS.
  • IIS 5.1 поставлялся с Windows XP Professional и был почти идентичен IIS 5.0 в Windows 2000.
  • IIS 6.0 (кодовое название "Duct Tape "), включенный в Windows Server 2003 и Windows XP Professional x64 Edition, добавлена ​​поддержка IPv6 и включена новая модель рабочего процесса, повышающая безопасность а также надежность. HTTP.sys был представлен в IIS 6.0 как прослушиватель протокола HTTP для HTTP-запросов.
  • IIS 7.0 был полностью переработан и переписан IIS и поставлялся с Windows Vista и Windows Server 2008. IIS 7.0 включал новую модульную конструкцию, которая позволила уменьшить поверхность атаки и повысить производительность. Он также представил систему иерархической конфигурации, позволяющую упростить развертывание сайтов, новое приложение управления на основе Windows Forms, новые параметры управления из командной строки и расширенную поддержку .NET Framework. IIS 7.0 в Vista не ограничивает количество разрешенных подключений, как IIS в XP, но ограничивает количество одновременных запросов до 10 (Windows Vista Ultimate, Business и Enterprise Edition) или 3 (Vista Home Premium). Дополнительные запросы помещаются в очередь, что снижает производительность, но они не отклоняются, как в XP.
  • IIS 7.5 был включен в Windows 7 (но его необходимо включить на боковой панели «Программы». и компоненты) и Windows Server 2008 R2. В IIS 7.5 улучшены модули WebDAV и FTP, а также администрирование из командной строки в PowerShell. Он также представил поддержку TLS 1.1 и TLS 1.2, а также инструмент анализа соответствия рекомендациям и изоляцию процессов для пулов приложений.
  • IIS 8.0 доступен только в Windows Server 2012 и Windows 8. IIS 8.0 включает SNI (привязка SSL к именам хостов, а не IP-адресам), инициализацию приложений, централизованную поддержку сертификатов SSL и многоядерное масштабирование на оборудовании NUMA, а также другие новые функции.
  • IIS 8.5 включен в Windows Server 2012 R2 и Windows 8.1. Эта версия включает выгрузку страниц незанятого рабочего процесса, динамическую активацию сайта, расширенное ведение журнала, ведение журнала трассировки событий Windows и автоматическое повторное связывание сертификата.
  • IIS 10.0 версии 1607, также известной как версия 10.0.14393, включен в Windows Server 2016 выпущено 26 сентября 2016 г. и Юбилейное обновление Windows 10 выпущено 2 августа 2016 г. Эта версия включает поддержку HTTP / 2, запуск IIS в контейнерах Windows на сервере Nano Server, новый API управления Rest и соответствующий графический интерфейс управления через Интернет, а также заголовки узлов с подстановочными знаками.
  • IIS 10.0 версия 1709 включена в Windows Server, версия 1709 (Semi-Annual Channel) и Windows 10 Fall Creators Update выпущены 17 октября 2017 г. В этой версии добавлена ​​поддержка HSTS, усовершенствований контейнера, новой привязки к сайту командлетов PowerShell и 4 новых серверных переменных с префиксом "CRYPT_".
  • IIS 10.0 версии 1809, также известной как версия 10.0.17763 включена в Windows Server 2019 и Windows 10 October Update, выпущенные 02.10.2018. В этой версии добавлены флаги для управления HTTP / 2 и OCSP Stapling для каждого сайта, API сжатия и модуль реализации, поддерживающий как gzip, так и brotli схемы и пользовательский интерфейс для настройки HSTS.

Все версии IIS до 7.0, работающие в клиентских операционных системах, поддерживали только 10 одновременных подключений и один веб-сайт.

Microsoft подверглась критике со стороны поставщиков другого программного обеспечения для веб-серверов, включая O'Reilly Associates и Netscape, за лицензирование ранних версий Windows NT; редакция ОС «Рабочая станция» допускала только десять одновременных соединений TCP / IP, тогда как более дорогая редакция «Сервер», которая в остальном имела несколько дополнительных функций, разрешала неограниченное количество соединений, но объединяла IIS. Предполагалось, что это было сделано для того, чтобы отговорить потребителей от использования альтернативных пакетов веб-серверов в более дешевой версии. Netscape написала открытое письмо в Антимонопольный отдел США. Министерство юстиции в отношении этого различия в лицензировании продукта, которое, по его утверждению, не имело технических достоинств. О'Рейли показал, что пользователь может удалить принудительные ограничения, которые ограничивают NT 4.0 Workstation как веб-сервер, с двумя изменениями ключа реестра и другой тривиальной настройкой файла конфигурации.

Функции

IIS 6.0 и выше поддерживают следующие механизмы аутентификации :

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

  • Модули безопасности: используются для выполнения многих задач, связанных с безопасностью в конвейере обработки запросов, таких как определение схем аутентификации, выполнение авторизации URL-адресов и фильтрация. запросы.
  • Модули содержимого: используются для выполнения задач, связанных с содержимым в конвейере обработки запросов, таких как обработка запросов для статических файлов, возврат страницы по умолчанию, когда клиент не указывает ресурс в запросе, и перечисление содержимого каталога.
  • Модули сжатия: используются для выполнения задач, связанных со сжатием в конвейере обработки запросов, таких как сжатие ответов, применение кодирования передачи сжатия Gzip к ответам и выполнение предварительного сжатия статических content.
  • Модули кэширования: используются для выполнения задач, связанных с кэшированием в конвейере обработки запросов, таких как сохранение обработанной информации в памяти на сервере и использование кеширования. ed, в последующих запросах для того же ресурса.
  • Модули ведения журнала и диагностики: используются для выполнения задач, связанных с ведением журнала и диагностики в конвейере обработки запросов, таких как передача информации и статуса обработки в HTTP. sys для ведения журнала, создания отчетов о событиях и отслеживания запросов, выполняемых в текущий момент в рабочих процессах.

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

  • Сопоставление сертификатов клиента
  • IP-безопасность
  • Фильтрация запросов
  • авторизация URL

Аутентификация незначительно изменилась между IIS 6.0 и IIS 7, в первую очередь тем, что анонимный пользователь с именем «IUSR_ {machinename}» является встроенной учетной записью в Vista и в будущих версиях. систем и назван «МСР». Примечательно, что в IIS 7 каждый механизм аутентификации изолирован в отдельный модуль и может быть установлен или удален.

IIS 8.0 предлагает новые функции, направленные на повышение производительности и упрощение администрирования. К новым функциям относятся:

  • Инициализация приложений: функция, позволяющая администратору настраивать определенные приложения для автоматического запуска при запуске сервера. Это сокращает время ожидания, которое испытывают пользователи, которые впервые обращаются к сайту после перезагрузки сервера.
  • Страница-заставка во время инициализации приложения: администратор может настроить отображение страницы-заставки для посетителя сайта во время приложения. инициализация.
  • Поддержка ASP.NET 4.5: в IIS 8.0 ASP.NET 4.5 включен по умолчанию, и IIS также предлагает несколько вариантов конфигурации для его запуска параллельно с ASP.NET 3.5.
  • Централизованная поддержка сертификатов SSL: функция, которая упрощает управление сертификатами, позволяя администратору хранить сертификаты и получать к ним доступ в общей папке.
  • Многоядерное масштабирование на оборудовании NUMA : IIS 8.0 предоставляет несколько параметров конфигурации, которые оптимизируют производительность в системах с NUMA, например запуск нескольких рабочих процессов в одном пуле приложений, с использованием мягкого или жесткого соответствия и т. Д.
  • Поддержка протокола WebSocket
  • Имя сервера Индикация (SNI): SNI является расширением Transport La yer Security, которая позволяет привязывать несколько веб-сайтов с разными именами хостов к одному IP-адресу (аналогично тому, как заголовки хостов используются для сайтов без SSL).
  • Ограничения динамических IP-адресов: функция, которая позволяет администратору динамически блокировать IP-адреса или диапазоны IP-адресов, которые попадают на сервер с большим количеством запросов
  • Регулирование ЦП: набор элементов управления, которые позволяют администратору сервера контролировать использование ЦП каждым пулом приложений для оптимизации производительности в многопользовательском режиме. среда арендатора

В IIS 8.5 внесено несколько улучшений, связанных с производительностью в крупномасштабных сценариях, например в сценариях, используемых коммерческими поставщиками хостинга и собственными облачными предложениями Microsoft. Он также имеет несколько дополнительных функций, связанных с ведением журнала и устранением неполадок. К новым функциям относятся:

  • Выгрузка страниц незанятого рабочего процесса: функция приостановки простаивающего сайта для уменьшения объема памяти, занимаемого бездействующими сайтами.
  • Активация динамического сайта: функция, которая регистрирует очереди прослушивания только для сайтов, которые получены запросы
  • Расширенное ведение журнала: функция, позволяющая собирать переменные сервера, заголовки запросов и заголовки ответов в журналах IIS
  • Ведение журнала ETW: поставщик ETW, который позволяет собирать журналы в реальном времени, используя различные инструменты отслеживания событий
  • Автоматическая повторная привязка сертификата: функция, которая определяет, когда сертификат сайта был обновлен, и автоматически повторно привязывает сайт к нему

Express

IIS Express, облегченный ( 4.5–6.6 МБ) версии IIS, доступен как отдельный бесплатный сервер и может быть установлен в Windows XP с пакетом обновления 3 и последующих версиях Microsoft Windows. IIS 7.5 Express поддерживает только протоколы HTTP и HTTPS. Он портативен, сохраняет свою конфигурацию для каждого пользователя, не требует административных привилегий и пытается избежать конфликта с существующими веб-серверами на том же компьютере. IIS Express можно загрузить отдельно или как часть WebMatrix или Visual Studio 2012 и более поздних версий. (В Visual Studio 2010 и более ранних версиях веб-разработчики, разрабатывающие приложения ASP.NET, использовали сервер разработки ASP.NET под кодовым названием «Cassini».) По умолчанию IIS Express обслуживает только локальный трафик.

Расширения

IIS выпускает новые функциональные модули между выпусками основных версий для добавления новых функций. Для IIS 7.5 доступны следующие расширения:

  • Служба публикации FTP: позволяет создателям веб-контента безопасно публиковать контент на веб-серверах IIS 7 с аутентификацией на основе SSL и передачей данных.
  • Пакет администрирования: добавляет поддержку пользовательского интерфейса администрирования для функций управления в IIS 7, включая авторизацию ASP.NET, настраиваемые ошибки, конфигурацию FastCGI и фильтрацию запросов.
  • Маршрутизация запросов приложений : предоставляет модуль маршрутизации на основе прокси, который пересылает HTTP-запросы на серверы содержимого на основе HTTP заголовки, переменные сервера и алгоритмы балансировки нагрузки.
  • Диспетчер баз данных: позволяет легко управлять локальными и удаленными базами данных из диспетчера IIS.
  • Службы мультимедиа: интегрирует платформу доставки мультимедиа с IIS для управления и администрировать доставку мультимедийных материалов и другого веб-контента.
  • Модуль перезаписи URL: предоставляет основанный на правилах механизм перезаписи для изменения URL-адресов запросов до их обработки веб-сервером.
  • WebDAV: позволяет Паб веб-авторов безопасно передавать контент на веб-серверы IIS 7 и позволяет веб-администраторам и хостерам управлять настройками WebDAV с помощью инструментов управления и настройки IIS 7.
  • Средство веб-развертывания: синхронизирует серверы IIS 6.0 и IIS 7, переносит сервер IIS 6.0 на IIS 7 и развертывает веб-приложения на сервере IIS 7.

Использование

Согласно Netcraft, в феврале 2014 года IIS занимала «рыночную долю все сайты »32,80%, что делает его вторым по популярности веб-сервером в мире после HTTP-сервера Apache с показателем 38,22%. Netcraft продемонстрировала тенденцию к увеличению доли рынка IIS с 2012 года. Однако 14 февраля 2014 года W3Techs показал другие результаты. Согласно W3Techs, IIS является третьим по популярности веб-сервером после Apache HTTP Server (1-е место) и Nginx. Кроме того, с февраля 2013 г. наблюдается постоянная тенденция к снижению использования IIS.

Данные Netcraft за февраль 2017 г. показывают, что «доля рынка среди миллиона самых загруженных сайтов» составляет 10,19%, что делает его третьим по популярности. веб-сервера в мире, позади Apache на 41,41% и nginx на 28,34%.

Безопасность

IIS 4 и IIS 5 были затронуты CA-2001-13 уязвимостью безопасности, что привело к печально известной атаке Code Red ; однако в версиях 6.0 и 7.0 не сообщалось о проблемах с этой конкретной уязвимостью. В IIS 6.0 Microsoft решила изменить поведение предустановленных обработчиков ISAPI, многие из которых были виноваты в уязвимостях 4.0 и 5.0, тем самым уменьшив поверхность атаки IIS. Кроме того, в IIS 6.0 добавлена ​​функция под названием «Расширения веб-служб», которая не позволяет IIS запускать любую программу без явного разрешения администратора.

По умолчанию IIS 5.1 и более ранние версии запускают веб-сайты в одном процессе, выполняющем контекст системной учетной записи, учетной записи Windows с правами администратора. В версии 6.0 все процессы обработки запросов выполняются в контексте учетной записи сетевой службы, которая имеет значительно меньше привилегий, поэтому в случае обнаружения уязвимости в функции или в пользовательском коде она не обязательно скомпрометирует всю систему, учитывая Изолированная среда, в которой работают эти рабочие процессы. IIS 6.0 также содержал новый HTTP-стек ядра (http.sys) с более строгим анализатором HTTP-запросов и кешем ответов как для статического, так и для динамического содержимого.

Согласно Secunia, по состоянию на июнь 2011 года в IIS 7 было в общей сложности шесть устраненных уязвимостей, в то время как в IIS 6 в общей сложности было одиннадцать уязвимостей, из которых одна все еще не исправлена. Неустановленное уведомление по безопасности имеет рейтинг серьезности 2 из 5.

В июне 2007 года исследование Google по 80 миллионам доменов показало, что, хотя в то время доля рынка IIS составляла 23%, на серверах IIS размещалось 49%. мирового вредоносного ПО, то же самое, что и серверы Apache, рыночная доля которых составляла 66%. В исследовании также наблюдалось географическое расположение этих «грязных» серверов и было высказано предположение, что причиной этого могло быть использование нелицензионных копий Windows, которые не могли получать обновления безопасности от Microsoft. В сообщении в блоге от 28 апреля 2009 г. Microsoft отметила, что предоставляет обновления безопасности для всех без подлинной проверки.

Раскрытие информации о массовом слежении в 2013 г. сделало более широко известным, что IIS особенно плох в поддержка полной прямой секретности (PFS), особенно при использовании вместе с Internet Explorer. Обладание одним из долговременных асимметричных секретных ключей, используемых для установления сеанса HTTPS, не должно упростить получение краткосрочного сеансового ключа для последующей расшифровки разговора даже в более позднее время. Обмен ключами Диффи-Хеллмана (DHE) и эллиптическая кривая Диффи-Хеллмана обмен ключами (ECDHE) в 2013 году были единственными известными, обладающими этим свойством. Только 30% сеансов браузера Firefox, Opera и Chromium используют его и почти 0% сеансов Apple Safari и Microsoft Internet Explorer.

См. Также

Ссылки

Внешние ссылки

Викиверситет имеет обучающие ресурсы по Интернет-информации Услуги
Последняя правка сделана 2021-05-24 04:58:45
Содержание доступно по лицензии CC BY-SA 3.0 (если не указано иное).
Обратная связь: support@alphapedia.ru
Соглашение
О проекте