Что такое код iis #fsize


Содержание

Как включить IIS в Windows 10

Windows 10 — это современная операционная система для компьютеров. На сегодняшний день в ней существует огромное количество различных скрытых функций, приложений и служб. Все они уже включены в Windows и позволяют расширить потенциал системы.

Именно такой службой является IIS или как принято называть — Internet Information Service. Специализированный сервис IIS — это комплект, предназначенный для создания, редактирования и полного управления сайтами. Такой специализированный сервис может использовать абсолютно любой пользователь и создавать на сервисе IIS собственные веб-сайты, являясь хостингом для них. Необходимо знать, что один сервер IIS способен управлять сразу несколькими веб-сайтами. При этом такой сайт будет иметь собственные свойства и настройки.

Интересные статьи по теме:

Как установить IIS в Windows 10

Изначально служба IIS в операционной системе Windows 10 выключена, а точнее не установлена. Это сделано с той целью, чтобы система поглощала, как можно меньше ресурсов и ваш персональный компьютер работал более оптимально. Поэтому если вы не нуждаетесь в данной службе, то желательно научиться ее включать и таким же образом выключать, чтобы не тратить лишние ресурсы вашего компьютера.

Для того чтобы установить службу IIS необходимо

Попасть в управление панели Windows. Сделать это можно с помощью клавиш Win + R, прописав там — control panel.

В открывшемся окне в правом вернем углу выбрать размер значков и выбрать в панели — крупные значки.

После чего найти пункт программы и компоненты. Найти их можно в этом окне, пролистав мышкой, далее необходимо зайти в этот пункт.

Теперь остается обратиться во вкладку включение или отключение компонентов Windows. Находиться она в левой стороне экрана.

В этой вкладке среди множества различных служб необходимо найти службу интернета. Находится она в папке службы iis.

В этой папке необходимо поставить галочку напротив этой службы, а также службы интернета и самой службы Internet Information Service, и подождать пока закончится загрузка.

После этого на вашем компьютере будет установлена служба Internet Information Service.
После установки, компьютер можно не перегружать, а сразу переходить к настройкам и управлению Internet Information Service. (установка этой службы займет не более 1 минуты)

Попасть в эту службу можно при помощи пуска, где у пользователя должна появиться новая вкладка с названием – диспетчер служб iis.

Теперь с помощью этой вкладки можно входить в Internet Information Service. В этом окне можно настраивать, управлять и редактировать вебсайт.

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

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

IIS 7.0: краткая инструкция для системного администратора. Часть 1 – пpoверка результатов установки.

Продолжаем говорить об процедуре установки веб сервера под управлением IIS 7.0 на Windows Server 2008, которая была рассмотрена в предыдущем посте.

Теперь перейдем к проверке результатов установки IIS 7.0. Самый простой вариант проверить, работает ли веб сервер, особенно – находясь за локальной консолью, это обратиться из любого веб-браузера по адресу http://localhost/. Далее, проверить с локальной и удаленной машины по IP-адресу.

При установке IIS 7.0 создается веб сайт по умолчанию, сконфигурированный на ответ при любом URL-запросе, поступившем на порт 80 любого сетевого интерфейса сервера, на котором установлен IIS 7.0. Т.е. запрос браузера типа http://localhost/ должен быть обработан как запрос к веб сайту по умолчанию. Содержимое сайта по умолчанию представляет собой 2 файла – iisstart.htm и welcome.png (который отображается в iisstart.htm), которые и будут открыты клиентом. Поэтому результат обращения к localhost будет иметь следующий вид:

Теперь, если все хорошо (если «плохо» – поиск неисправностей и ошибок мы рассмотрим позже, в отдельном разделе), убедимся, что все модули, которые должны быть установлены по умолчанию – подключены и работают, а базовая конфигурация – отвечает нашим требованиям.

1. Основным инструментом управления IIS 7.0 является консоль Internet Information Services (IIS) Manager, которая устанавливается по умолчанию, вместе с ролью Web Server в Windows Server 2008 (IIS Management Console, раздел Management Tools при установки модулей). После соответствующей установки консоль управления IIS 7.0 можно найти, как дочернюю запись внутри раздела Web Server (IIS) в разделе ролей Server Manager, либо как пункт в разделе Administrative Tools меню Start, либо выполнив команду inetmgr (в командной строке или через пункт Run того же меню Start).

2. При старте консоль Internet Information Services (IIS) Manager открывается с «домашней страницей», на которой в виде панелей находится информация о том, к каким веб серверам и веб сайтам подключался пользователь консоли до этого (если консоль только установлена вместе с ролью Web Server (IIS), то в консоле присутствует запись только о локальном веб сервере), также присутствуют ссылки для выбора подключения к другим серверам, веб сайтам, веб приложениям и папкам, а также ссылки на внешние ресурсы, посвященные IIS.

3. Кроме того, на домашней странице присутствует панель новостей, которые подгружаются как новостная RSS-лента с сайта www.iis.net, если администратор нажимает на ссылку Enable IIS News. Новости, кстати, очень полезные, рекомендуется включать и использовать эту информацию в повседневной работе.

4. При подключении к какому либо веб серверу IIS 7.0 консоль Internet Information Services (IIS) Manager представляет его конфигурацию, как логическую структуру – уровень самого веб сервера, чьи настройки являются глобальными и распространяются по умолчанию на все веб сайты, пулы приложений и, сообственно, веб сайты со своими настройками. Эта конфигурационная иерархия, в виде разворачивающегося дерева, начинающегося с узла с именем (или IP) веб сервера, отображается в левой панели консоли Internet Information Services (IIS) Manager.

5. Если выбрать какой-то узел в дереве конфигурации, то в центральной панель консоли Internet Information Services (IIS) Manager будут отображены в виде отдельных иконок все параметры (а также – модули или списки), соответствующие конфигурации выбранного узла, а в правой панели – набор контекстных задач и операций, которые администратор (или пользователь) может выполнить над данным узлом.

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

7. В правой панели при выборе узла веб сайта отображаются все операции, возможные для выполнения непосредственно с веб сервером (службами IIS в целом) в данном конексте – перезапуск, останов, запуск, переход к пулам приложений и сайтам.

8. Убеждаемся, что пулы приложений (Application Pools) сконфигурированы. Пулы приложений будут рассмотрены позже. Пулы являются дочерним узлом в дереве конфигурации для узла веб сайта. При установке по умолчанию создается только один пул – DefaultAppPool, в котором регистрируется одно приложение – сконфигурированный по умолчанию веб сайт, работу которого мы уже проверили. См. снимок экрана.

9. Ниже узла пулов приложений в дереве конфигурации находится узел веб сайтов (Sites), при выборе которого отображается список работающих на данном веб сервере веб сайтов. По умолчанию создается один веб сайт под названием Default Web Site с внутренним номером (ID) равным 1, «привязанный» на 80 порт всех IP-адресах всех сетевых интерфейсов к любому URL в запросе, и использующий в качестве домашнего каталога своего контента каталог с путем %SystemDrive%\inetpub\wwwroot (что при установленном Windows Server 2008 на диск C: соответствует C: \inetpub\wwwroot).

10. При выборе в левой панели консоли узла веб сайта (Default Web Site), также, как и в случае с выбором узла веб сервера, в центральной панели отображаются иконки для доступа к параметрам конфигурации различных модулей, на этот раз – конкретного веб сайта. Убеждаемся, что также, как и в случае со всем веб сервером, все необходимые модули представлены в центральной панели.

11. В правой панели консоли, аналогично панели для всего веб сервера, отображаются контекстные команды, правда, на этот раз их список серьезно расширен – старт/стоп/перезапуск процесса веб сайта, просмотр его базовых и расширенных настроек (а не параметров модулей), настройки привязки (адрес, порт, доменное имя – по сочетанию которых будет отвечать на запросы данный веб сайт) и т.п.

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

12. Выберите узел веб сервера в дереве конфигурации в левой панели консоли Internet Information Services (IIS) Manager. В центральной панели кликните на иконку Modules. В центральной панели откроется следующий полный список установленных по умолчанию модулей, представляющий из себя перечень .dll файлов.

13. Чтобы убедиться, что веб сервер будет работать только со статическими файлами (по умолчанию) или только с нужными вам расширениями – выберите снова узел веб сервера и в центральной панели кликните на иконку Handler Mappings. Откроется список «привязки» расширений вызываемых на веб сайте пользователем файлов и привязанных к данным расширениям модулям, выполняющим обработку данного вызова. Обратите внимание, что по умолчанию все файлы привязаны к модулю обработки статических файлов (т.е. запрос какого либо скриптового или исполнимого файла из домашнего каталога веб сайта не будет приводить к его исполнению на сервере, а лишь к передаче данного файла пользователю), а также к модулям документа по умолчанию и просмотра каталога. С этими модулями мы познакомимся позже.

14. И, наконец, для того, чтобы убедиться в безопасности веб сайта – проверьте параметры его аутентификации. Для этого выбираем иконку Authentication в той же центральной панели. По умолчанию никаких модулей аутентификации веб сервер (и веб сайты) не поддерживает. Т.е. все подключения для него анонимны. В чем безопасность? Это значит, что пользователям будет доступен только то содержимое домашних каталогов сайтов – файлы и подкаталоги – которые имеют NTFS разрешения для чтения «всем» (Everyone). В случае, если таких разрешений файл не имеет, пользователю будет отказано в доступе с соответствующей ошибкой 401. Если же пользователь попробует каким-то образом аутентифицироваться в процессе HTTP запроса на сервере – то поскольку никаких модулей аутентификации, кроме анонимного, на веб сервере не установлено – он снова получит соответствующую ошибку 401.

Такие настройки безопасности по умолчанию – только анонимные пользователи – позволяют гарантировать защиту данных на сервере, для которых требуются соответствующие разрешения, а также – что механизм аутентификации веб сервера (которого в данном случае просто нет) не будет использован для перебора паролей и прочих попыток «взлома» через учетные записи.

Итак, сервер установлен и его работоспособность проверена. Теперь достаточно поместить какой либо статический контент (файлы HTML, изображения, документы и файлы для выгрузки пользователями) в домашний каталог его сайта по умолчанию (напоминаю, что это в большинстве случаев C:\inetpub\wwwroot) – и веб сайт под управлением IIS 7.0 начнет работать. Ну, и конечно, для внешних сайтов – не забыть прописать их A-record в вашей доменной зоне на публичном DNS сервере.

В следующей части – установка IIS 7.0 в режиме командной строки, особенности работы IIS 7.0 на Server Core.

Национальная библиотека им. Н. Э. Баумана
Bauman National Library

Персональные инструменты

IIS (Internet Information Services)

Internet Information Services
Разработчики: Microsoft
Постоянный выпуск: 10 / 29 July 2015 года ; 4 years ago ( 2015-07-29 )
Состояние разработки: Active
Написана на: C++ (язык программирования) [1]
Операционная система: Windows NT
Локализация: Same languages as Windows
Тип ПО: Web server
Лицензия: Part of Windows NT (same license)
Веб-сайт iis .net

IIS (англ. Internet Information Services ) является Visual Basic приложением, которое располагается на веб-сервере и отвечает на запросы браузера. Приложение IIS использует HTML для представления своего пользовательского интерфейса и использует скомпилированый код Visual Basic для обработки запросов и реагирования на события в браузере. Для пользователя приложение IIS представляется рядом страниц HTML. Для разработчика приложение IIS состоит из особого типа объекта, называемого WebClass, который в свою очередь, содержит ряд ресурсов, называемых webitems. WebClass выступает в качестве центрального функционального блока приложения, обрабатывающего данные из браузера и отправляющего информацию пользователям. Разработчик описывает ряд процедур, которые определяют, каким образом WebClass отвечает на эти запросы. webitems являются HTML-страницами и другими данными, которые WebClass может отправить в браузер в ответ на запрос.

Содержание

Архитектура

Internet Information Services (IIS) 7 и выше обеспечивает архитектуру обработки запросов, которая включает в себя:

  • Служба активации процесса Windows (WAS), который позволяет сайтам использовать отличающиеся от HTTP и HTTPS протоколы.
  • Веб-движок сервера, который может быть изменен путем добавления или удаления модулей.
  • Интегрированные конвейеры обработки запросов от IIS и ASP.NET.

Компоненты

IIS содержит несколько компонентов, которые выполняют важные функции для приложений и ролей веб-сервера в Windows Server® 2008 (IIS 7.0) и Windows Server 2008 R2 (IIS 7.5). Каждый компонент имеет функции, такие как прослушивание запросов к серверу, управление процессами и чтение файлов конфигурации. Эти компоненты включают в себя обработчики протокола, такие как HTTP.sys и службы, такие как World Wide Web Publishing (служба WWW) и службы активации процесса Windows (WAS).

Internet Information Server (IIS) имеет свой собственный ASP.NET Process Engine для обработки запроса ASP.NET. Способ настройки приложения ASP.NET зависит от того, какая версия IIS приложения используется.

Internet Information Server (IIS) включает в себя набор программ для создания и администрирования веб-приложений, поисковых систем, а также поддержку для написания веб-приложений, обеспечивающих доступ к базам данных, таким как SQL Server. IIS позволяет настроить компьютер в качестве веб-сервера и предоставляет функциональные возможности для разработки и развертывания веб-приложений ASP.NET на сервере. Кроме того, возможно установить параметры безопасности для конкретного веб-сайта для конкретных пользователей и компьютера для того, чтобы защитить его от несанкционированного доступа.

По заявлениям разработчиков, IIS повышает доступность веб-сайтов и приложений при одновременном снижении системного администрирования и стоимости развертывания. IIS 7.5 поддерживает HTTP, HTTPS, FTP, FTPS, SMTP и NNTP.

Ключевые особенности

  • Встроенные расширения
    • WebDAV и FTP
    • Фильтрация запросов
    • Модули администрирования
  • Усовершенствования управления
    • Анализатор соответствия рекомендациям
    • Windows PowerShell провайдер и cmdlets
    • Ведение журнала конфигурации и трассировки
  • Улучшения хостинга приложений
    • Управляемые учетные записи служб
    • Hostable веб-ядро
    • Трассировка неудачных запросов для FastCGI
  • Улучшения .NET поддержки для Server Core

Установка

  • Нажмите кнопку Пуск и выберите Панель управления.
  • На панели управления выберите Программы, а затем Включение и отключение компонентов Windows.
  • В диалоговом окне «Компоненты Windows» нажмите Службы IIS, а затем кнопку ОК.

Конфигурирование

Настройка веб-узла по умолчанию: При установке IIS настроен для использования в качестве веб-узла по умолчанию; тем не менее может потребоваться изменить некоторые настройки. Чтобы изменить основные параметры для веб-узла и имитировать действия, которые требуются для настройки Apache в первый раз с помощью файла конфигурации:

  1. Войдите в систему на компьютере веб-сервера с правами администратора.
  2. Нажмите кнопку Пуск, выберите Настройка и щелкните Панель управления.
  3. Дважды щелкните значок Администрирование, а затем дважды щелкните значок Диспетчер служб Интернета.
  4. Щелкните правой кнопкой мыши веб-узел, который необходимо настроить, на левой панели и выберите команду Свойства.
  5. Перейдите на вкладку веб-узел .
  6. В поле Описание введите описание веб-узла.
  7. Введите адрес Internet Protocol (IP) для веб-узла или оставьте значение по умолчанию все (не назначено) .
  8. Измените порт протокола управления передачей (TCP), соответствующим образом.
  9. Перейдите на вкладку Домашний каталог.
  10. Чтобы использовать папку на локальном компьютере, выберите каталог на данном компьютере и нажмите кнопку Обзор, чтобы найти папку, которую требуется использовать.
  11. Чтобы использовать папку, общий ресурс с другого компьютера в сети, выберите параметр Общая папка другого компьютера и затем введите путь или нажмите кнопку Обзор, чтобы выбрать общую папку.
  12. Нажмите кнопку Чтение предоставить доступ на чтение к папке (обязательно).
  13. Нажмите кнопку ОК, чтобы принять свойства веб-сайта.
Илон Маск рекомендует:  Dos fn 28h писать произвольный блок файла

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

Чтобы создать новый веб-узел на сервере Apache, необходимо настроить виртуальный узел и настроить отдельные параметры для узла. Если используются службы IIS, можно создать новый веб-узел путем перевода следующих терминов в эквивалентные термины IIS:

Apache термин Термин IIS
Корень документа Каталог домашней страницы веб-узла IIS
Имя_сервера Заголовок узла IIS
Прослушивание IIS IP-адрес и TCP-порт

Чтобы создать новый веб-узел в IIS, выполните следующие действия:

  1. Войдите в систему на компьютере веб-сервера с правами администратора.
  2. Нажмите кнопку Пуск, выберите Настройка и щелкните Панель управления.
  3. Дважды щелкните значок Администрирование, а затем дважды щелкните значок Диспетчер служб Интернета.
  4. Щелкните Действие, выберите пункт Создать и выберите веб-узел.
  5. После запуска мастера создания веб-узла, нажмите кнопку Далее.
  6. Введите описание веб-узла. Это описание используется для идентификации веб-узла в диспетчере служб Интернета только для внутренних целей.
  7. Выберите IP-адрес для веб-узла. Если выбрать все (без значения), веб-узел будет доступен для всех интерфейсов и всех настроенных IP-адресов.
  8. Введите номер порта TCP, чтобы опубликовать на нем сайт.
  9. Введите имя заголовка узла (реальные имя, которое используется для доступа к этому узлу).
  10. Нажмите кнопку Далее.
  11. Введите путь к папке, которая содержит документы веб-узла, или нажмите кнопку Обзор, выберите папку и нажмите кнопку Далее.
  12. Укажите права доступа для веб-узла и нажмите кнопку Далее.
  13. Нажмите кнопку Готово.

IIS: Notes on Server-S >

Many years ago I wrote Microsoft KB article 203064 about using Server-Side-Include (SSI) files with IIS 4 and IIS 5, but that KB has long since vanished from Microsoft’s support website because it was never updated for IIS 6 or IIS 7. I eventually turned the information from that KB article into a blog post, but that being said, I still see questions about SSI showing up in the IIS forums every once in a while. There was a great deal of useful information in that KB article about general SSI syntax and several practical examples for SSI directives, so I thought that it would make a good blog post if I updated the information from that KB for later versions of IIS.

SUMMARY

This blog post details some features that are available in the Microsoft implementation of Server-Side Include (SSI) files for Internet Information Server (IIS) and provides general syntax and examples for SSI directives.

APPLIES TO

  • Microsoft Internet Information Services 7.5
  • Microsoft Internet Information Services 7.0
  • Microsoft Internet Information Services 6.0
  • Microsoft Internet Information Services 5.0
  • Microsoft Internet Information Server 4.0

MORE INFORMATION

SSI files are most commonly used with IIS to allow content authors to include the contents of one file inside another file, allowing the easy creation of script libraries or page headers and footers to standardize the look and feel of your web content. SSI consists of very simple commands that are contained within HTML comment tokens, and are limited in functionality. Higher-level programming languages like ASP, ASP.NET, PHP, etc. make the need for SSI considerably less necessary than in previous years. In addition, programming features such as ASP.NET’s Master Pages and Dynamic Web Template (DWT) files that are used by Dreamweaver, Expression Web, and FrontPage have replaced much of the need for SSI. Because of this, SSI is an outdated technology by today’s standards. With that in mind, web developers are highly encouraged to migrate their SSI content to another technology, such as ASP.NET or PHP.

SSI Implementation Details

SSI files are mapped by file extension to a preprocessor or handler dynamic-link library (DLL), in the same way that file like ASP, ASP.NET, PHP, etc. are mapped to their requisite handlers. In the case of SSI, the specific handler is ssiinc.dll for IIS 4 through IIS 6 and iis_ssi.dll for IIS 7. SSI files on Windows are often named with .stm file extensions, although extensions of .shtm and .shtml are also supported.

Changes Between IIS Versions

  • SSI is not enabled by default on IIS 6. To enable SSI on IIS 6, set the status for the Server Side Includes web service extension to Allowed in the Internet Information Services (IIS) Manager.
  • SSI is not installed by default on IIS 7. To install SSI on IIS 7, see the Server Side Include topic.
  • The cmd directive for #exec is disabled by default in IIS 5 and IIS 6. To enable the cmd directive, see Microsoft KB article 233969.
  • The cmd directive for #exec is now disabled for SSI files in IIS 7; you can only use the cgi directive.

General SSI Syntax

SSI is employed by the use of special preprocessing directives in SSI documents that are contained within HTML comment tokens; these directives are parsed by the SSI DLL and processed into HTML that is returned to a web client. All SSI directives take the following general form:

IIS supports a small set of SSI directives, and each directive has different parameters that configure the output for the directive. Other web servers may support a different set of SSI directives and parameters, so SSI files are not 100% compatible across different technologies.

Supported Directives

The following directives are supported in the IIS implementation of SSI:

  • #config — Configures how variables and commands are displayed.
    • The general syntax for the #config directive is as follows:
    • The following is an example of a simple page that uses the #config directive:
    • Note: See the Parameter Values for the #config Directive section later in this blog for more information about configuring dates with the #config directive.

  • #echo — Inserts the value of various Common Gateway Interface (CGI) server variables.
    • The general syntax for the #echo directive is as follows:
    • The following is an example of a simple page that uses the #echo directive:
    • For a list of supported CGI server variables, see IIS Server Variables.
  • #exec — Executes CGI or Internet Server API (ISAPI) command scripts and inserts output into an HTML document.
    • The general syntax for the #exec directive is as follows:
    • The following is an example of a simple page that uses the #exec directive:

      WCF: размещение службы в IIS

      Всем доброго времени суток. На связи Алексей Гулынин. В данной статье я бы хотел рассказать, как WCF-службу разместить в IIS (Internet Information Services). Для этого создадим веб-проект (пустой сайт) в Visual Studio . В данном проекте нам нужен только файл Web.config .

      В данный файл добавим следующий код:

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

      В текущем решении создадим ещё проект типа «Библиотека классов». Назовем его ServiceIISLibrary . Здесь добавим контракт и реализуем его:

      Построим проект ServiceIISLibrary (правок кнопкой по проекту — Собрать) для того, чтобы сгенерировалась dll-библиотека.

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

      1. Создадим на диске C (или в любом другом месте) папку «MyServiceIIS».
      2. В данной папке создадим файл «MyService.svc».
      3. В данный файл добавим одну лишь строку: .
      4. Также добавим сюда файл «Web.config».
      5. Создадим папку «bin» и в неё добавим файл ServiceIISLibrary.dll

      Как добавить службы IIS в Windows 7?

      Для этого необходимо зайти в панель управления — программы и компоненты — слева выбрать пункт «Включение и отключение компонентов Windows» — выбрать «Службы IIS» — Нажать ОК:

      Давайте теперь откроем диспетчер служб IIS и добавим наш сайт. Заходим в панель управления — Администрирование — диспетчер служб IIS. Добавим виртуальный каталог:

      Физический путь указываем к папке на диске C. Имя сайта указываем «MySite»:

      Преобразуем наш каталог в приложение:

      Давайте теперь проверем, что всё работает. Откроем браузер и в строке укажем путь к сервису: http://localhost/MySite/MyService.svc

      При переходе по данной ссылке иногда может возникнуть ошибка. В качестве решения я предлагаю зайти в папку C:\Windows\Microsoft.NET\Framework\v4.0.30319 и запустить в командной строке «aspnet_regiis -i».

      В данной статье мы уже писали код клиента. В коде необходимо только поменять адрес на http://localhost/MySite/MyService.svc

      Запустим клиент и увидим, что всё работает:

      В данной статье вы узнали, как размещать сервис в службах IIS.

      На связи был Алексей Гулынин, оставляйте свои комментарии, увидимся в следующих статьях.

      Установка SSL сертификата на Microsoft IIS 7.x, 8.x

      Процедура покупки/установки сертификата считается относительно сложным процессом, и требует четкого соблюдения ряда правил. Если Вам, как владельцу магазина «быстро и просто нужен сертификат», то для этого мы специально ввели услугу покупки и установки сертификата под ключ, т.е. наш специалист поддержки запросит все необходимые данные, создаст почту на домене (если требуется), зарегистрирует SSL сертификат и корректно установит его на сайт (к магазину или воронки). Вы оплачиваете один раз, и далее дело за нами, услуга доступна в разделе услуги, вот тут — https://www.advantshop.net/services

      Если вы уже приобрели SSL сертификат, но не хотите, тратить время или не до конца уверены в правильности действий, то для такого случая мы так же ввели услугу установки уже купленного сертификата на ваш сайт. Специалист проверит сам сертификат на пригодность и корректно установит его на сайт, услуга «Установка SSL сертификата» доступна в разделе услуги, вот тут — https://www.advantshop.net/services

      И так, всё же, если вы твёрдо решили всё сделать самостоятельно, мы по шагам расскажем как и что нужно.

      Если вы используете тип хостинга выделенный сервер (VPS/VDS или Dedicated), вам нужно зайти на машину по протоколу RDP (Remote Deskstop) под учетной записью, которую выдал хостинг.

      • Нажмите Start.
      • Выберите Administrative Tools.
      • Запустите Internet Services Manager — IIS
      • Нажмите на название сервера (обычно это название компьютера) в дереве элементов слева

      В главном меню кликните по кнопке «Server Certificates» в разделе «Security».

      Выберите меню «Actions» (справа), нажмите на «Complete Certificate Request».

      Откроется мастер Complete Certificate Request.

      Введите место расположения вашего IIS SSL сертификата (нужно нажать кнопку browse для определения места расположения Вашего IIS SSL сертификата. Этот файл должен иметь название «yourdomainname.crt»).

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

      Затем нажмите Ok.

      Примечание: Известно, что в IIS 7 появляется следующая ошибка: «Cannot find the certificate request associated with this certificate file. A certificate request must be completed on the computer where it was created.» Вы также можете увидеть ошибку, констатирующую «ASN1 bad tag value met». Если этот тот же самый сервер, на котором Вы генерировали и CSR, то в большинстве случаев сертификат фактически установлен. Просто отмените диалог и нажмите «F5» для обновления списка сертификатов сервера. Если новый сертификат появился в списке, то Вы можете продолжать дальше. Если сертификат не появится в списке, то Вам нужно перевыпустить сертификат, используя новый CSR (смотрите наши инструкции по созданию CSR на IIS 7).

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

      В главном окне Internet Information Services (IIS) Manager в меню «Connections» выберите имя сервера, В «Sites» выберите сайт, который будет защищен SSL, далее в меню «Actions»(справа), нажмите на «Bindings».

      Откроется окно «Site Bindings».

      В окне «Site Bindings» нажмите «Add». Тем самым Вы откроете «Add Site Binding».

      В «Type» выберите https. IP адрес должен быть IP адресом сайта или * (All Unassigned), и порт, по которому будет защищен трафик посредством SSL, обычно это 443.

      Сертификат, который ранее был установлен, должен быть задан в поле «SSL Certificate».

      Установка и конфигурирование IIS

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

      В этой и следующих статьях мы рассмотрим различные варианты развертывания. Однако во всех случаях основные предпосылки остаются неизменными. На рабочей станции имеется готовый веб-сайт, который нужно развернуть на сервере, чтобы он был доступен клиентам. Для ASP.NET таким сервером является , а его текущей версией — IIS 8. Когда он был впервые реализован, IIS представлял собой базовый веб-сервер. С годами IIS развился в сложный сервер приложений, предоставляющий широкое множество функциональных средств, наиболее важным из которых является поддержка хостинга приложений ASP.NET.

      В этой статье основное внимание уделяется IIS 8. Хотя машина, на которой запущен IIS 8, здесь называется сервером, IIS можно запускать под управлением версий Windows как для рабочей станции, так и для сервера. На рабочих станциях доступны не все, но большинство функциональных возможностей, что позволяет размещать сложные веб-сайты. По возможности мы рекомендуем использовать Windows Server, однако недорогой альтернативой могут послужить Windows 7 или Windows 8.

      В Microsoft привязывают выпуски IIS с выпусками Windows. В состав Windows Server 2008 и Windows Vista входит версия IIS 7.0, в состав Windows Server 2008 R2 и Windows 7 — версия IIS 7.5, а в состав Windows Server 2012 и Windows 8 — IIS 8. Версии — 7.0 и 7.5 — в Microsoft обобщенно называют IIS 7, что может вносить путаницу. Версию IIS, поддерживаемую операционной системой, изменить нельзя — Windows Server 2008 будет использовать только IIS 7.0. Например, модернизировать ее до версии IIS 7.5, используемой в Windows Server 2008 R2, не получится.

      Установка IIS

      Компонент IIS включен как часть установки Windows (как для сервера, так и для рабочих станций) и требует активизации и конфигурирования. Далее представлены три способа активации IIS для различных операционных систем.

      Установка IIS на настольных версиях Windows (Windows Vista, Windows 7 и Windows 8)

      Каждая версия операционной системы Windows предлагает свою версию IIS — IIS 8 (в Windows 8), IIS 7.5 (в Windows 7) или IIS 7 (в Windows Vista). Во всех этих версиях Windows, IIS включен, но изначально не установлен. Чтобы установить его, необходимо выполнить следующие действия:

      Откройте панель управления.

      Нажмите кнопку «Включение или отключение компонентов Windows». Теперь вам нужно подождать, пока Windows исследует вашу систему.

      Найдите элемент Internet Information Services (Службы IIS) в верхней части списка и нажмите на галочку чтобы включить его:

      Обратите внимание, что Windows позволяет включить множество компонентов IIS: поддержка FTP-сервера, дополнительные инструменты управления, службы обратной совместимости с IIS 6 и т.д.

      Убедитесь, что вы выбрали поддержку ASP.NET. Для этого раскройте узел Службы Интернета Компоненты разработки приложений ASP.NET (Internet Information Services World Wide Web Services Application Development Features ASP.NET):

      Если вы хотите использовать поддержку IIS в Visual Studio, которая позволяет вам создавать виртуальные каталоги IIS непосредственно в диалоговом окне New Web Site, вам нужно выбрать пункт «Совместимость управления IIS 6» в разделе «Средства управления веб-сайтом» (Web Management Tools IIS 6 Management Compatibility).

      Как только вы выбрали нужные параметры IIS, нажмите кнопку OK для завершения установки.

      Установка IIS в Windows Server 2008

      Установка и настройка IIS одинакова для Windows Server 2008 и Windows Server 2008 R2. Необходимые шаги описаны ниже:

      Запустите диспетчер сервера. Чтобы сделать это, нажмите кнопку Start и выберите All Programs Administrative Tools Server Manager.

      Выберите узел Roles в дереве слева.

      В правой части окна нажмите на ссылке Add Roles. Это открывает мастер, позволяющий добавить новую роль сервера.

      Выполните необходимые действия в мастере. Вас вероятно попросят установить дополнительные необходимые роли — если это так, нужно просто принять операции и продолжить.

      После установки вам будет предложено настроить веб-сервер. Как в настольных версиях Windows, вы можете выбрать специфические особенности IIS 7, которые должны быть включены.

      Если вы работаете в ASP.NET с версией .NET Framework 4.5, то эту версию .NET Framework необходимо будет установить (центр разработчиков .NET Framework)

      Установка IIS в Windows Server 2012

      Процесс установки IIS в Windows Server 2012, по существу, такой же, как и в Windows Server 2008. Основное различие заключается в том, что пользовательский интерфейс несколько отличается. Подробное описание вы можете найти перейдя по ссылке Installing IIS 8 on Windows Server 2012.

      Управление IIS

      При установке IIS, он автоматически создает каталог с именем C:\inetpub\wwwroot, который представляет ваш веб-сайт. Все файлы в этом каталоге будет отображаться, как будто они находятся в корневом каталоге вашего веб-сервера.

      Чтобы добавить дополнительные страницы на ваш веб-сервер, можно скопировать файлы HTML, ASP или ASP.NET напрямую в каталог C:\Inetpub\wwwroot. Например если добавить файл TestFile.html в этот каталог, вы можете запросить его в браузере через URL-адрес http://localhost/TestFile.html. Вы даже можете создавать вложенные папки для группирования связанных ресурсов. Например, вы можете получить доступ к C:\inetpub\wwwroot\MySite\MyFile.html через браузер, используя URL-адрес http://localhost/MySite/MyFile.html.

      Каталог wwwroot удобен для запуска простых примеров и статичных страниц. Для правильного использования ASP.NET вы должны сделать свой собственный виртуальный каталог для каждого веб-приложения, которое вы создаете. Например, вы можете создать папку с любым именем на любом диске вашего компьютера и поместить ее в виртуальный каталог IIS как будто она расположена в каталоге C:\inetpub\wwwroot.

      Прежде чем начать работу, вам нужно запустить диспетчер служб IIS. Его можно найти в меню Start (Пуск). Конкретное расположение может зависеть от используемой версии Windows (IIS Диспетчер служб IIS). Ярлык программы будет располагаться в разделе Programs (Программы) или Administrative Tools (Администрирование). Начальная страница IIS Manager показана на рисунке ниже:

      Теперь нужно ознакомиться с рядом терминов, используемых в IIS. В левой части окна IIS Manager отображается запись с именем используемого сервера. Наш сервер имеет имя PROFESSORWEB, сгенерированное по умолчанию Windows 8, которое будет использоваться в большинстве примеров. В центральной области отображается представление сервера. Это представление отображает набор значков, которые позволяют конфигурировать параметры сервера. В правой части экрана расположен список доступных действий. Например, в этом представлении можно запускать, останавливать и перезапускать сервер.

      Если развернуть элемент сервера в древовидном представлении в левой части экрана, отобразится элемент Sites (Сайты), содержащий единственную запись Default Web Site (Веб-сайт по умолчанию). Сайт — это коллекция файлов и каталогов, образующих веб-сайт. На одном сервере IIS может поддерживать несколько сайтов, как правило, на различных портах TCP/IP (по умолчанию используется порт 80). Сочетание имени сервера и порта сайта образует первую часть URL-адреса. Например, при использовании сервера mywebserver с сайтом, подключенным к порту 80, URL-адрес выглядит следующим образом:

      Каждый сайт может содержать множество файлов и каталогов. Каждый из них образует часть URL-адреса. Так, URL-адрес статической страницы mypage.html, расположенной в каталоге myfiles, будет следующим:

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

      Чтобы проверить работоспособность IIS выберите Default Web Site и в правой области диспетчера служб IIS выберите пункт «Запустить». После этого нажмите кнопку «Обзор *.80 (http)» чтобы открыть страницу сайта в браузере:

      Как видите, в моем случае я поменял порт используемый по умолчанию (с 80 на 8080). Я сделал это, т.к. на 80-м у меня запущен локальный Apache-сервер. Если у вас возникает такая же проблема, то изменить порт можно щелкнув правой кнопкой мыши по сайту (Default Web Site) и выбрав в контекстном меню «Изменить привязки» (Bindings). После этого в диалоговом окне можно изменить порт, используемый по умолчанию.

      Итак, каждый сервер может поддерживать множество сайтов, каждый из которых работает на другом порту или с другим IP-адресом. Каждый сайт может иметь множество файлов и каталогов, и сочетание этих элементов предоставляет информацию о URL-адресе. Мы вернемся к URL-адресам и использованию IIS Manager при рассмотрении каждого из подходов к развертыванию.

      Коды состояния служб IIS

      Аннотация

      При обращении пользователей к серверу, на котором запущены информационные службы Интернета (Internet Information Services, IIS), по протоколу HTTP или FTP (File Transfer Protocol), сервер возвращает число, показывающее состояние выполнения запроса. Данное число называется кодом состояния и сохраняется в журнале служб IIS, а также может отображаться веб-обозревателем или клиентом FTP. Код состояния показывает, выполнен ли запрос, а также может сообщать о причинах сбоя при выполнении запроса.

      Дополнительная информация

      Местонахождение файла журнала
      По умолчанию файлы журналов служб IIS находятся в папке %WIN DIR\System32 \Logfiles. Данная папка содержит отдельные подкаталоги для каждого узла WWW (World Wide Web) и FTP. По умолчанию новый файл журнала создается ежедневно. Имя данного файла формируется, исходя из текущей даты (например exГГММДД.log). HTTP

      1xx — Информационные коды

      Перечисленные ниже коды состояния представляют собой предварительные ответы. Перед получением окончательного ответа клиент может получить один или несколько ответов с кодами состояния 1xx.

      • 100 — Следует продолжать работу.
      • 101 — Смена протоколов.

      2xx — Запрос принят

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

      • 200 — ОК. Запрос выполнен успешно.
      • 201 — Создан ресурс.
      • 202 — Запрос принят.
      • 203 — Неавторизованные сведения.
      • 204 — Содержимое отсутствует.
      • 205 — Сброс содержимого.
      • 206 — Частичный ответ.

      3xx — Перенаправление

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

      • 302 — Объект перемещен.
      • 304 — Объект не изменялся.
      • 307 — Временное перенаправление.

      4xx — Ошибка на стороне клиента

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

      • 400 — Неверный запрос.
      • 401 — Отсутствуют необходимые права доступа. Если возникает ошибка с кодом 401, то службы IIS возвращают расширенный код, указывающий причину ошибки. Это коды отображаются на экране веб-обозревателя, но не регистрируются в журнале служб IIS.
      • 401.1 — Вход в систему не выполнен.
      • 401.2 — Вход не выполнен из-за настройки сервера.
      • 401.3 — Доступ запрещен таблицей управления доступом (ТУД) к ресурсу.
      • 401.4 — Доступ запрещен фильтром.
      • 401.5 — Доступ запрещен приложением ISAPI/CGI.
      • 401.7 — Доступ запрещен политикой авторизации URL веб-сервера. Данный код поддерживается только службами IIS 6.0.
    • 403 — Запрет доступа. Если возникает ошибка с кодом 403, то службы IIS возвращают расширенный код, указывающий причину ошибки.
    • 403.1 — Нет доступа на выполнение.
    • 403.2 — Нет доступа на чтение.
    • 403.3 — Нет доступа на запись.
    • 403.4 — Требуется протокол SSL.
    • 403.5 — Требуется протокол SSL 128.
    • 403.6 — IP-адрес отклонен.
    • 403.7 — Требуется сертификат для клиента.
    • 403.8 — Отказ в доступе к узлу.
    • 403.9 — Подключено слишком много пользователей.
    • 403.10 — Недопусти мая конфигурация.
    • 403.11 — Необходим другой пароль.
    • 403.12 — Отказ доступа от программы сопоставления.
    • 403.13 — Клиентский сертификат отозван.
    • 403.14 — Просмотр каталога запрещен.
    • 403.15 — Достигнуто максимальное число разрешенных одновременных подключений.
    • 403.16 — Клиентский сертификат недействителен или не вызывает доверия.
    • 403.17 — Срок действия клиентского сертификата уже истек или еще не начался.
    • 403.18 — Не удается выполнить запрошенный адрес URL в текущем пуле приложения. Данный код поддерживается только с лужбами IIS 6.0.
    • 403.19 — Не возможно выполнять прило жения CGI для этого клиента в данном пуле приложений. Данный код поддерживается только службами IIS 6.0.
    • 403,20 — Вход систему с помощью служб Passport не выполнен. Данный код поддерживается только службами IIS 6.0.
    • 404 — Объект не найден.
    • 404.0 — (отсутствует) — Файл или каталог не найден.
    • 404.1 — Веб-узел не доступен по запрошенному порту.
    • 404.2 — Запрос отклонен политикой закрытия расширений веб-служб.
    • 404.3 — Запрос отклонен политикой сопоставления MIME.
    • 405 — Для доступа к странице используется недопустимый метод HTTP (недопустимый метод).
    • 406 — Веб-обозреватель клиента на поддерживает тип MIME запрошенной страницы.
    • 407 — Требуется проверка подлинности через прокси-сервер.
    • 412 — Отказ после проверки предварительного условия.
    • 413 — Размер запроса слишком велик.

    • 414 — Слишком длинный запрос URI.
    • 415 — Неподдерживаемый тип носителя.
    • 416 — Значение за пределами диапазона.
    • 417 — Ошибка при выполнении.
    • 423 — Ошибка блокировки.

    5xx — Ошибки сервера

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

    • 500 — Внутренняя ошибка сервера.
    • 500.12 — Приложение в процессе перезапуска.
    • 500.13 — Сервер перегружен.
    • 500.15 — Запросы на файл Global.asa недопустимы.
    • 500.16 — Учетные данные не позволяют выполнить проверку подлинности при подключении к адресу UNC. Данный код поддерживается только службами IIS 6.0.
    • 500.18 — Не удается открыть хранилище данных авторизации URL. Данный код поддерживается только службами IIS 6.0.
    • 500.100 — Внутренняя ошибка ASP.
  • 501 — Значения, указанные в заголовке, требуют нереализованную возможность.
  • 502 — Выполняя роль шлюза или прокси, веб-сервер получил ошибочный ответ.
  • 502.1 — Превышен интервал ожидания ответа от приложения CGI.
  • 502.2 — Ошибка в приложении CGI.
  • 503 — Служба недоступна. Данный код поддерживается только службами IIS 6.0.
  • 504 — Превышен интервал ожидания ответа от шлюза.
  • 505 — Неподдерживаемая версия HTTP.

Основные коды состояния HTTP и их описание

  • 200 — Запрос выполнен успешно. Данный код показывает, что сервер IIS успешно обработал запрос.
  • 304 — Объект не изменялся. Клиент запросил документ, который имеется в кэше клиента и не изменялся после кэширования. Вместо загрузки документа с сервера клиент использует кэшированную копию данно го документ а.
  • 401.1 — Вход в систему не выполнен. При входе в системе произошел сбой (как правило, вследствие указания ошибочного имени пользователя или пароля).
  • 401.3 — Доступ запрещен списком управления доступом (ACL) к ресурсу. Появление данного кода свидетельствует о проблеме с разрешениями NTFS. Эта ошибка может возникать, даже если для запрашиваемого файла разрешения установлены правильно. Например, данная ошибка появляется, если для учетной записи IUSR отсутствуют права доступа к папке C:\Winnt\System32\Inetsrv. Дополнительные сведения об устранении данной ошибки см. в следующей статье базы знаний Майкрософт: 187506 (http://support.microsoft.com/kb/187506/) Разрешения NTFS и права пользователей, необходимые для работы сервера IIS 4.0
  • 403.1 — Нет доступа на выполнение. Как правило, данная ошибка возникает по следующим причинам.
  • Отсутствует право на выполнение. Например, данная ошибка может возникать при обращении к странице ASP, находящейся в папке, для которой отсутствуют разрешения на выполнение, или при запуске сценария CGI из папки, для которой установлены разрешения «Только сценарии». Чтобы добавить право выполнения, в соответствующей консоли MMC щелкните нужную папку правой кнопкой мыши, выберите пункт Свойства, перейдите на вкладку Каталог и убедитесь, что для требуемых объектов разрешения Разрешен запуск установлены должным образом.
    Используемый метод (например GET или POST) отсутствует в сопоставлении сценариев для требуемого типа файлов. Чтобы проверить, присутствует ли требуемый метод, в соответствующей консоли MMC щелкните нужную папку правой кнопкой мыши, выберите пункт Свойства, перейдите на вкладку Каталог, щелкните команду Конфигурация и убедитесь, ч то в сопоставлении сценариев для требуемого типа файлов разрешено использование соответствующего метода.
  • 403.2 — Нет доступа на чтение. Убедитесь, что в конфигурации служб IIS разрешено чтение из данной папки. Кроме того, если используется документ по умолчанию, убедитесь, что данный документ существует. Дополнительные сведения об устранении данной проблемы см. в следующей статье базы знаний Майкрософт: 247677 (http://support.microsoft.com/kb/247677/) Появление сообщения об ошибке «403.2 Запрет доступа. Нет доступа на чтение.»
  • 403.3 — Нет доступа на запись. Убедитесь, что существующие разрешения IIS и разрешения NTFS позволяют выполнять запись в нужную папку.Дополнительные сведения об устранении данной проблемы см. в следующей статье базы знаний Ма й крософт: 248072 (http://support.microsoft.com/kb/248072/) Появление сообщения об ошибке «403.3 Запрет доступа. Нет доступа на запись.»
  • 403.4 — Требуется протокол SSL. Отключите параметр Требует ся безопасный канал или используйте для доступа к данной странице протокол HTTPS, а не HTTP. Если эта ошибка появляется при обращении к веб-узлу, для которого не установлен сертификат, обратитесь к следующей статье базы знаний Майкрософт: 224389 (http://support.microsoft.com/kb/224389/) Появление сообщений об ошибках 403, 403.4, 403.5 «Запрет доступа. Требуется протокол SSL.»
  • 403.5 — Требуется протокол SSL 128. Отключите параметр Требуется 12 8 -и разрядное шифрование или используйте для просмотра данной страницы веб-обозреватель, поддерживающий 128-разрядное шифрование. Если эта ошибка появляется при обращении к веб-узлу, для которого не установлен сертификат, обратитесь к следующей статье базы знаний Майкрософт: 224389 (http://support.microsoft.com/kb/224389/) Появление сообщений об ошибках 403, 403.4, 403.5 «Запрет доступа. Требуется протокол SSL.»
  • 403.6 — IP-адрес отклонен. Конфигурация веб-сервера запрещает доступ с да нн ого IP-адреса. Дополните льные сведения об устранении данной проблемы см. в следующей статье базы знаний Майкрософт: 248043 (http://support.microsoft.com/kb/248043/) При подключении к веб-серверу появляется сообщение об ошибке: «Ошибка HTTP 403.6 — Запрет доступа: IP-адрес отклонен»
  • 403.7 — Требуется сертификат для клиента. Конфигурация веб-сервера требует наличие сертификата для выполнения проверки подлинности клиента, однако серт ификат для клиента не установлен. Дополнительные сведения см. в следующих статьях базы знаний Майкрософт. 190004 (http://support.microsoft.com/kb/190004/) Появление сообщения об ошибках 403.7 или «Не удается установить соединение с сервером» 186812 (http://support.microsoft.com/kb/186812/) PRB: Появление сообщения об ошибке «403.7 Запрет доступа. Требуется сертификат для клиента.»
  • 403.8 — Отказ в доступе к узлу. Существующие ограничения на доменное имя запрещают доступ к веб-узлу из текущего домена.Дополнительные сведения об устранении данной проблемы см. в следующей статье базы знаний Майкрософт: 248032 (http://support.microsoft.c om/kb/248032/) Появление сообщения об ошибке «403.8 Запрет доступа. Отказ в доступе к узлу.»
  • 403.9 — Подключено слишком много пользователей. Число пользователей, подключенных к веб-узлу, превысило максимально допустимое число подключений, указанное в конфигурации. Дополнительные сведения об изменении данного значения см. в следующей с тать е базы знаний Майк ро софт: 248074 (http://support.microsoft.com/kb/248074/) Ошибка HTTP 403.9 — Запрет доступа: подключено слишком много пользователей Примечание. Microsoft Windows 2000 Professional и Microsoft Windows XP Professional допускают одновременное подключение к службам IIS десяти пользователей. Это значение изменить нельзя.
  • 403.12 — Отказ доступа от программы сопоставления. Для доступа к запрошенной странице необходим сертификат клиента, однако пользователь, сопоставленный используемому клиентскому сертификату, не имеет прав доступа к данному файлу. Дополнительные сведения см. в следующей статье базы знаний Майкрософт: 248075 (http://support.microsoft.com/kb/248075/) Появление сообщения об ошибке «403.12 Запрет доступа. Отказ до с тупа от программы сопоставления.»
  • 404 — Объект не найден. Данная ошибка может возникать, если запрошенный файл был удален или перемещен. Кроме того, указанное сообщение об ошибке появляется, если после установки средства URLScan был ограничен доступ к файлам с запрошенным расширением. В этом случае в файле журнала для данного запроса будет добавлена строка «Rejected by URLScan».
  • 500 — Внутренняя ошибка сервера. Данное сообщение об ошибке может появляться вследствие различных причин. Дополнительные сведения о причинах подобных ошибок могут помещаться в журнал событий. Кроме того, для получения полного описания ошибки можно отключить вывод подробных сообщений об ошибках HTTP. Дополнительные сведения об отключении вывода подробных сообщений об ошибках HTTP см. в следующей статье базы знаний Майкрософт: 294 807 (http://support.microsoft.com/kb/294807/) Отключение параметра «Выводить подробные сообщения об ошибках http» в обозревателях Internet Explorer 5.x и 6.x на стороне сервера
  • 500.12 — Приложение в процессе перезапуска. Данное сообщение появляется при попытке загрузить страницу ASP в то время, когда сервер IIS перезапускает приложение. После обновления страницы данное сообщение должно исчезнуть. Если после обновления страницы указа нно е сообщение остается, то это может быть вызвано работой антивирусной программы, которая проверяет файл Global.asa. Дополнительные сведения см. в следующей статье базы знаний Майкрософт: 248013 (http://support.microsoft.com/kb/248013/) Сообщение «Ошибка HTTP 500-12 Перезапуск приложения» при подключении к Microsoft Internet Information Services 5. 0
  • 500-100.ASP — Внутренняя ошибка ASP. Данное сообщение об ошибке появляется при загрузке страницы ASP, содержащей ошибки. Чтобы получить более полную информацию о данной ошибке, отключите вывод подробных сообщений об ошибках HTTP. По умолчанию данная ошибка может появляться только на веб-узле по умолчанию.Дополнительные сведения о том, как увидеть данную ошибку на веб-узлах, не являющихся узлами по умолчанию, см. в следующей статье базы знаний Майкрософт: 261200 (http://support.microsoft .com/kb/261200/) Вместо сообщения об ошибке из файла 500-100.asp отображается сообщение об ошибке HTTP с кодом 500
  • 502 — Неправильный шлюз. Данное сообщение об ошибке появляется при запуске сценария CGI, не возвращающего соответствующий набор заголовков HTTP.

1xx — Положительный предварительный ответ

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

  • 110 Значение маркера повторного запуска.
  • 120 Служба будет готова через ххх минут.
  • 125 Соединение для передачи данных уже уст ановл ено; передача данных начата.
  • 150 Состояние файла проверено. Сервер готов к установке соединения для передачи данных.

2xx — Оповещение о выполнении команды

Действие завершилось успешно. Клиент может выполнять следующую команду.

  • 200 Команда выполнена успешно.
  • 202 Команда не реализована. На данном узле к о манда не тре буется.
  • 211 Состояние системы или справка по системе.
  • 212 Состояние каталога.
  • 213 Состояние файла.
  • 214 Справочное сообщение.
  • 215 ИМЯ тип системы, где ИМЯ — официальное имя системы в соответствии с документом о присвое нии номеров.
  • 220 Система готова обслуживать нового пользователя.
  • 221 Служба разрывает управляющее соединение. Если необходимо, будет произведен выход из системы.
  • 225 Соединение для передачи данных установлено; передача не выполняется.
  • 226 Соединение для передачи данных разрывается. Требуемое действие выполнено (например пере да ча или прекращение переда чи файла).
  • 227 Выполняется вход в пассивный режим (h1,h2,h3,h4,p1,p2).
  • 230 Пользователь вошел в систему. Производится обработка.
  • 250 Требуемое действие завершено успешно.
  • 257 Создана папка «ПУТЬ».

3xx — Положительные промежуточные ответы

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

  • 331 Имя пользователя получено. Необходимо ввести пароль.
  • 332 Необходима учетная запись для входа в систему.
  • 350 Для выполнения запрашиваемого действия требуются дополнительные данные.

4xx — Промежуто ч ные отрицательные ответы

При выполнении команды возникла временная ошибка. Если клиент повторит команду, она может выполниться успешно.

  • 421 Служба недоступна. Управляющее соединение разрывается. Данное сообщение может отправляться в ответ на какую-либо команду, если служба должна завершить работу.
  • 425 Не удается установить соединение для передачи данных.
  • 426 Соединение разорвано; передача прекращена.
  • 450 Требуемое действие не выполнено. Файл недоступен (например, файл может быть занят).
  • 451 Выполнение требуемого действия прервано: при выполнении возникла ошибка.
  • 452 Требуемое действие не выполнено. Системе не хватает места на диске.

5xx — Окончательные отрицательные ответы

При выполнении команды возникла ошибка. Данная ошибка носит постоянный характер. Если клиент повто рит команду, при ее выполнении возникнет такая же ошибка.

  • 500 Синтаксическая ошибка. Команда не распознана. Одной из причин возникновения этой ошибки является использование слишком длинных команд.
  • 501 Синтаксическая ошибка в аргументах или параметрах.
  • 502 Команда не реализована.
  • 503 Ошибочная последовательность команд.
  • 504 Для данного параметра команда не реализована.
  • 530 Не выполнен вход в систему.
  • 532 Необходима учетная запись для сохранения файлов.
  • 550 Требуемое действие не вы п олнено. Файл недоступен (например, файл не найден или нет доступа к файлу).
  • 551 Выпо лнение требуемого действия прервано. Неизвестный тип страницы.
  • 552 Выполнение требуемого действия прервано. Превышен максимально допустимый объем места на диске (в текущей папке или в наборе данных).
  • 553 Требуемое действие не выполнено. Недопустимое имя файла.

Основные коды состояния FTP и их описание

  • 150 — Протокол FTP использует два порта: порт 21 для передачи команд и порт 20 для передачи данных. Код состояния 150 показывает, что сервер собирается установить новое соединение на порту 20 для передачи данных.
  • 226 — Команда устанавливает подключение к порту 20, чтобы выполнить какие-либо действия (например передать файл). Данное действие было завершено успешно. Соединени е разорвано.
  • 230 — Сообщение с этим кодом появляется после отправки клиентом правильного пароля. Данный код состояния показывает, что пользователь вошел в систему.
  • 331 — Сообщение с этим кодом появляется после отправки клиентом имени пользователя. Это сообщение появляется независимо от того, присутствует ли в системе указанное имя пользователя.
  • 426 — Команда устанавливает подключение к порту 20, чтобы выполнить какие-либо действия, однако выполнение действия было отменено и соединение было разорвано.
  • 530 — Данный код состояния показывает, что пользователь не может войти в систему, поскольку введена ошибочная комбинация имени пользователя и пароля. Если для входа в систему используется учетная запись пользователя, то данное сообщение может появляться, если имя пользо вателя или пароль введены н еправильно или если в систем у могут входить только анонимные пользователи. Если для входа в систему используется анонимная учетная запись, то данное сообщение может появляться, если сервер IIS не поддерживает вход анонимных пользователей.
  • 550 — Команда не выполнена, поскольку требуемый файл недоступен. Данное сообщение может появляться при попытке получить отсутствующий файл с помощью команды GET, при использовании команды PUT для сохранения файла в папке, для которой отсутствует право записи, а также в некоторых других случаях.

Улучшение безопасности IIS

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

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

На рынке существуют различные продукты, которые, как утверждается, могут сделать ваш сервер более защищенным, но не ограждают от всех возможных видов атак. Существует весьма распространенное заблуждение о том, что безопасность веб-сайта можно улучшить посредством ревизии исходного кода. Это не всегда соответствует действительности. Помимо написания безопасного кода, сайт, созданный средствами ASP.NET, следует также надежно защитить со стороны IIS-сервера. В этой статье будут различные аспекты безопасности IIS, чтобы оградить ваш сайт от незаконного проникновения.

Для того чтобы защитить IIS, специалист по безопасности должен обладать глубокими познаниями технологии .NET и, в особенности, ASP.NET, поскольку в подавляющем большинстве на IIS крутятся сайты, использующие эти технологии. Кроме того, весьма желательно понимать весь процесс разработки и развертывания веб-сервера, включая написание кода (в контексте конфигурирования сайта на ASP.NET).

Существует огромное количество видов атак на веб-сайт, начиная от лазеек в базах данных и уязвимостей в исходном коде и заканчивая вирусами, недовольными сотрудниками и социальной инженерией. Однако полная классификация всех возможных атак на IIS-сервер выходит за рамки этой статьи. Но в целом, можно сказать, что целями злоумышленников являются механизмы аутентификации, авторизации и аудита. Вначале взломщик подбирает пароль и пытается попасть в систему как легитимный пользователь. После успешной аутентификации хакер пытается получить доступ к другим ресурсам посредством изменения политики безопасности сервера. И, наконец, потом злоумышленник удаляет следы, поскольку каждое действие пользователя обычно записывается в лог при помощи механизмов аудита.

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

По сути, IIS представляет собой набор различных WWW-служб, обрабатывающих запросы, которые поступают на различные TCP/IP порты (например, за 80-м портом обычно закреплен протокол HTTP). Перед тем как до ASP.NET дойдут запросы, происходит верификация (аутентификация, авторизация и т. д.) в соответствии с настройками IIS. В IIS есть различные возможности (см. рисунок ниже) для ограничения доступа и запрета некоторых типов запросов.

Рисунок 1: Средства безопасности в IIS

Регулирование прав доступа

IIS позволяет выборочно запрещать или разрешать доступ к файлам, папкам, сайту или серверу. Системный администратор может определять, какой удаленный компьютер может подключаться к IIS, а какой нет. В отношении каждого IP-адреса или DNS-имени можно настроить отдельные ограничительные правила. Допустим, если в коде на ASP.NET есть уязвимость, то, по сути, злоумышленник имеет неограниченный доступ к веб-сайту. Однако если выставить запрет на доступ со стороны IIS, появится следующее сообщение ‘Forbidden: IP address of the client has been rejected (403.6)’ или ‘DNS name of the client is rejected (403.8)’. Соответствующий HTTP-статус будет отражен в журнале. В связи с ограничением прав существуют два термина, касающиеся настройки IIS: IP Restriction и Domain Restriction.

Запрет на соединение предпочтительнее конфигурировать на как можно более низком уровне в модели OSI.

Чтобы сконфигурировать политику относительно DNS для разрешения доступ всем, кроме специально указанных адресов, кликните на ‘Edit Feature Settings’. Появится окно ‘IP Address and Domain Restrictions’.

Рисунок 2: Запрет на доступ определенным клиентам

Затем вы можете создать правила для определенных хостов или подсетей. Чтобы создать правило, разрешающее доступ для конкретного клиента или подсети, кликните на “Allow Entry” и укажите отдельный IP-адрес или диапазон IP-адресов.

Рисунок 3: Разрешение на доступ определенным хостам

MIME предотвращает хранение на сервере неизвестных типов файлов и позволяет загружать только те файлы, которые указаны явным образом. Хотя конфигурационные и информационные файлы обычно не хранятся в корневой директории, если злоумышленник попытается загрузить файл, не разрешенный в настройках, возникнет ошибка 404.3 и HTTP-статус запишется в лог. Если вы хотите разрешить загрузку определенных типов файлов, добавьте новый MIME type, как показано на рисунке ниже.

Рисунок 4: Добавление нового MIME type

IIS позволяет настраивать наборы правил для разрешения и запрета определенных типов запросов. Фильтрация позволяет пропускать запросы для определенного пространства имен и жестко интегрирована в систему журналирования событий. Запросы могут фильтроваться по параметрам HTTP-заголовка, расширениям файлов, размеру запроса и подстроке, входящей в URL.

При фильтрации по параметрам HTTP-заголовка в секции «verbs», например, можно разрешить только GET- или POST-запросы. Следующий набор XML-тегов как раз позволяет отфильтровать HTTP-заголовок по типу запроса (необходимо добавить этот код в конфигурационный файл):

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

Запрос также может быть отклонен при превышении определенного размера запроса.

И последний пример, в котором запросы фильтруются на основе подстрок (в данном случае – «. .»), входящих в URL.

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

Когда необходимо получить информацию из внешнего источника, может возникнуть конфликт, поскольку довольно сложно разделить между собой пулы веб-приложений. Иначе говоря, код, запущенный внутри одного пула, будет влиять на работоспособность другого пула. Чтобы в некоторой степени предотвратить этот конфликт, в IIS предусмотрена настройка пула приложений. Каждый пул приложений имеет свой конфигурационный файл, которых хранится в папке %systemdriver\inetpub\temp\appPools, и дополнительный идентификатор безопасности (SID), инжектируемый в соответствующий процесс w3wp.exe. Соответственно, каждый конфигурационный файл пула закреплен за своим SID’ом через права доступа.

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

Рисунок 5: Добавление пула приложений

Используя ISAPI, разработчики часто пишут дополнительные модули, чтобы расширить функционал сервера во время запроса определенного типа файла. Например, сайты на PHP могут работать на IIS-сервере при помощи расширения PHP ISAPI. Соответственно, сайты на ASP.NET (или файлы .aspx) по умолчанию привязаны к расширению ASP.NET ISAPI. Когда клиент запрашивает файл с расширением .aspx, дальнейшая обработка происходит через расширение IIS ISAPI, которое уже определяет, какие дополнительные действия должны быть предприняты.

В IIS можно запретить или разрешить те или иные расширения ISAPI. Если расширение запрещено, при запросе файла соответствующего типа в лог заносится статус 404.2, поскольку злоумышленник может удаленно внедрить и выполнить вредоносный код. После добавления новых расширений в дальнейшем необходимо провести аудит безопасности сервера. Чтобы добавить расширение, укажите имя фильтра и путь к библиотеке DLL.

Рисунок 6: Добавление нового расширения

Хакеры часто проводят DOS-атаки, отправляя на сервер огромные запросы, что в свою очередь может сказаться на размере логов. При помощи логов, например, можно выявить факты неправомерного доступа. В ОС Windows имеет встроенная функция записи в журнал важной информации: время авторизации, попытки подбора пароля и т. д., что является одним из признаков атаки. Для каждого сайта можно настроить систему фиксации событий в формате W3C.

Рисунок 7: Настройка логов

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

Настройка страниц ошибок

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

Рисунок 8: Неудачный пример страницы с ошибкой

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

В IIS есть возможность выдачи различных страниц с ошибками для конечных пользователей, администраторов и разработчиков.

Рисунок 9: Настройка страниц ошибок

Даже после грамотной настройки IIS не следует забывать о безопасности приложений. В последнее время много внимания уделяется уязвимостям в веб-приложениях: SQL-инъекциям, межсайтовому скриптингу, воспроизведению сессий (session replay), RFI и многим другим. С каждым днем злоумышленники становятся все более изощренными. Таким образом, свои позиции следует защищать со всех фронтов.

В статье мы рассмотрели способы защиты приложения посредством грамотной конфигурации IIS, включая ограничение доступа по IP-адресу, настройку MIME-Type, фильтрацию запросов, настройку пула приложений, ISAPI и страниц ошибок. Таким образом, на данный момент у вас должно появиться более полное понимание относительно безопасности в целом и в частности относительно настроек, повышающих безопасность IIS.

Подписывайтесь на каналы «SecurityLab» в Telegram и Яндекс.Дзен, чтобы первыми узнавать о новостях и эксклюзивных материалах по информационной безопасности.

Настройка веб-сервера IIS, часть 1

Internet Information Services (IIS) это набор интернет-серверов от компании Microsoft. Основным компонентом IIS является веб-сервер, хотя этим дело не ограничивается. Последняя восьмая версия IIS поставляется со всеми редакциями Windows Server 2012 R2.

Несмотря на проприетарность IIS, доля этого набора сервисов на рынке постепенно увеличивается. В интернете можно отыскать множество сакральных споров, что же всё таки лучше — IIS, Apache или, скажем, Nginx. Не будем им уподобляться, просто скажем в каких случаях в основном используется IIS.

Самый удобный вариант использования IIS — когда всё ваше рабочее окружение (и серверная его часть тоже) работает на Windows. В таком случае Вы можете получить от IIS ряд удобных «плюшек» для работы в домене. В конце концов, ведь IIS это еще и FTP-сервер, и почтовый сервер. Интерфейс IIS довольно нагляден, что вообще свойственно Windows-среде. Ну и, конечно, IIS пригодится вам, если вы используете MS SQL.

Для включения IIS в Windows Server 2012 R2 зайдите в Диспетчер серверов.

В Диспетчере серверов найдите пункт «Добавить роли и компоненты».

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

Убедитесь, что у Вас включен CGI.

После этого в разделе Администрирование у Вас появится Диспетчер служб IIS.

Вы можете так же включить IIS в Windows 7 Профессиональная и Максимальная, а также в Windows 8. Для этого перейдите в Панель управления → Программы → Включение или отключение компонентов Windows.

Диспетчер служб представляет собой графический интерфейс управления Вашими серверами.

Справа перечислены сервера и сайты. По умолчанию на системном разделе создается папка inetpub, в которой находятся папки ftproot и wwwroot для FTP-серверов и веб-сайтов соответственно.

Установка PHP на IIS

Для установки PHP перейдите по ссылке и скачайте ZIP-архив с версией Non Thread Safe. Обозначение VC11 возле версии обозначает, что для её компиляции необходим Visual C++ Redistributable for Visual Studio 2012. Для старых версий, маркированных как VC9, требуется Visual C++ Redistributable for Visual Studio 2008 SP1.

Директорию для распаковки ZIP-архива можно выбрать по своему усмотрению. После извлечения архива создайте копию файла php.ini-production под именем php.ini в той же папке.

Файл php.ini содержит правила исполнения PHP и работы с окружением, в котором он исполняется. Есть ряд обязательных параметров, которые должны быть прописаны. Ниже список этих параметров.

extension_dir = [путь к директории расширений] — этот параметр отвечает за расположение расширений PHP. Например, C:\php\ext.

extension = xxxxx.dll — для каждого подключаемого расширения необходимо прописать такую директиву. Такие расширения будут подгружаться при старте PHP.

log_errors = On — включение лога ошибок.

error_log = [путь к файлу лога ошибок] — собственно, тут всё понятно.

cgi.force_redirect = 0 — отключение механизма защиты директорий, под IIS данный параметр должен принимать именно такое значение во избежание ошибок ядра PHP в Windows.

cgi.fix_pathinfo = 1 — включение поддержки PATH_INFO согласно спецификации CGI. IIS FastCGI использует эту настройку.

fastcgi.impersonate = 1 — включение идентификации маркеров безопасности вызывающего клиента.

fastcgi.logging = 0 — логи FastCGI в IIS необходимо отключить.

Далее в свойствах системы необходимо откорректировать переменные среды. В Windows Server 2012 R2 необходимо зайти в Панель управления, выбрать пункт Система, там Дополнительные параметры системы. На вкладке Дополнительно внизу находится кнопка Переменные среды.

Среди системных переменных находим переменную Path и в поле Значение переменной дописываем путь к каталогу PHP. В моем примере это C:\php.

Теперь нам необходимо указать в IIS как же обрабатывать php-файлы. Для этого заходим в пункт сопоставление обработчиков.

На панели действия щелкните по пункту Добавить сопоставление модуля и заполните в соответствии с тем, что видите на рисунке.

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

Проверим работу PHP. Для этого создаем файл index.php со следующим содержимым:

Если всё сделано правильно, то, набрав в адресной строке браузера http://localhost/index.php, Вы увидите следующую милую картинку:

Во второй части статьи поговорим о MySQL и phpMyAdmin.

Илон Маск рекомендует:  Что такое код swfshape >addfill
Понравилась статья? Поделиться с друзьями:
Кодинг, CSS и SQL