Как запустить пулы приложений iis для центра администрирования
Изменение размера стека
Применяется только при использовании модели внутрипроцессного размещения.
Настройте размер управляемого стека, задав для параметра stackSize значение в байтах в файле web.config . Размер по умолчанию — 1 048 576 байт (1 МБ). В следующем примере размер стека изменяется на 2 МБ (2 097 152 байт).
Применяется только к размещению вне процесса.
Токен связывания гарантирует, что полученные Kestrel запросы были переданы через прокси-сервер IIS, а не из какого-либо другого источника. Этот токен создается и задается модулем в переменную среды ( ASPNETCORE_TOKEN ). Он также задается в заголовке ( MS-ASPNETCORE-TOKEN ) каждого запроса, переданного через прокси-сервер. ПО промежуточного слоя IIS проверяет каждый получаемый запрос, чтобы убедиться, что заголовок с токеном связывания соответствует значению переменной среды. Если значения токена не совпадают, запрос заносится в журнал и отклоняется. Переменная среды с токеном связывания и трафик между модулем и Kestrel недоступны из расположения за пределами сервера. Не зная значение токена связывания, злоумышленник не может отправлять запросы, обходящие проверку в ПО промежуточного слоя IIS.
Если путь к общей конфигурации не на том же компьютере, где установлены службы IIS, выполните следующие действия.
- Отключите общую конфигурацию IIS.
- Запустите установщик.
- Экспортируйте обновленный файл applicationHost.config в общую папку.
- Повторно включите общую конфигурацию IIS.
Защита данных
Если набор ключей для защиты данных хранится в памяти, при перезапуске приложения происходит следующее.
Чтобы настроить защиту данных в службах IIS для хранения набора ключей, воспользуйтесь одним из следующих методов:
Создание разделов реестра для защиты данных
Настройка пула приложений IIS для загрузки профиля пользователя.
Также необходимо включить атрибут setProfileEnvironment пула приложений. Значением свойства setProfileEnvironment по умолчанию является true . В некоторых сценариях (например, в ОС Windows) для параметра setProfileEnvironment установлено значение false . Если ключи не хранятся в каталоге профиля пользователя:
- Перейдите в папку %windir%/system32/inetsrv/config .
- Откройте файл applicationHost.config .
- Найдите элемент <system.applicationHost><applicationPools><applicationPoolDefaults><processModel> .
- Убедитесь, что атрибут setProfileEnvironment отсутствует и установлено значение по умолчанию true , или же явно задайте для атрибута значение true .
Использование файловой системы в качестве хранилища набора ключей.
Измените код приложения так, чтобы в качестве хранилища набора ключей использовалась файловая система. Для защиты набора ключей используйте доверенный сертификат X509. Если сертификат — самозаверяющий, поместите его в доверенное корневое хранилище.
При использовании служб IIS в веб-ферме:
- используйте общую папку, которая доступна всем компьютерам;
- разверните сертификат X509 на каждом компьютере; настройте защиту данных в коде.
Настройка политики защиты данных на уровне компьютера
Конфигурация IIS
Операционные системы семейства Windows Server
Включите роль сервера Веб-сервер (IIS) и настройте службы роли.
В меню Управление запустите мастер Добавить роли и компоненты или в окне Диспетчер серверов щелкните соответствующую ссылку. На этапе Роли сервера установите флажок Веб-сервер (IIS) .
После этапа выбора компонентов запускается этап выбора служб роли для веб-сервера (IIS). Выберите нужные службы роли IIS или оставьте службы по умолчанию.
Проверка подлинности Windows (необязательный компонент)
Чтобы включить проверку подлинности Windows, разверните такие узлы: Веб-сервер > Безопасность. Выберите компонент Проверка подлинности Windows. Дополнительные сведения см. в статьях Проверка подлинности Windows <windowsAuthentication> и Настройка проверки подлинности Windows.
Пройдите этап Подтверждение, чтобы установить роль и службы веб-сервера. После установки роли Веб-сервер (IIS) перезагружать сервер или службы IIS не требуется.
Операционные системы Windows для настольных компьютеров
Включите компоненты Консоль управления IIS и Службы Интернета.
Последовательно выберите Панель управления > Программы > Программы и компоненты > Включение или отключение компонентов Windows (в левой части экрана).
Разверните узел Службы IIS. Разверните узел Средства управления веб-сайтом.
Установите флажок Консоль управления IIS.
Установите флажок Службы Интернета.
В группе Службы Интернета оставьте компоненты по умолчанию или настройте компоненты IIS.
Проверка подлинности Windows (необязательный компонент)
Чтобы включить проверку подлинности Windows, разверните такие узлы: Службы Интернета > Безопасность. Выберите компонент Проверка подлинности Windows. Дополнительные сведения см. в статьях Проверка подлинности Windows <windowsAuthentication> и Настройка проверки подлинности Windows.
Если во время установки IIS потребуется перезагрузка, перезагрузите систему.
Виртуальные каталоги
Вложенные приложения
В ссылках на статический ресурс во вложенном приложении следует использовать нотацию
/ . Такая нотация активирует вспомогательную функцию тега для добавления свойства pathbase вложенного приложения в начало отображаемой относительной ссылки. Для вложенного приложения с путем /subapp_path ссылка на изображение src="
/image.jpg" отображается как src="/subapp_path/image.jpg" . ПО промежуточного слоя для обработки статических файлов в главном приложении не обрабатывает такой запрос статического файла. Запрос обрабатывается соответствующим ПО вложенного приложения.
Если атрибуту src статического ресурса присваивается абсолютный путь (например, src="/image.jpg" ), ссылка отображается без свойства pathbase вложенного приложения. ПО промежуточного слоя для обработки статических файлов в главном приложении пытается найти ресурс в корневом веб-каталоге главного приложения, что приводит к ошибке 404 — Not Found (не найдено), кроме случаев, когда статический ресурс доступен из главного приложения.
Добавьте корневой веб-сайт в диспетчере служб IIS с вложенным приложением в папке внутри корневого веб-сайта.
Щелкните правой кнопкой мыши папку вложенного приложения в диспетчере служб IIS и выберите Преобразовать в приложение.
Назначение отдельного пула приложений вложенному приложению является обязательным при использовании модели внутрипроцессного размещения.
Пулы приложений
Модель размещения определяет изоляцию пула приложений:
- Внутрипроцессное размещение: Приложения должны выполняться в отдельных пулах.
- Размещение вне процесса: Рекомендуем изолировать приложения друг от друга, запуская каждое из них в собственном пуле.
В диалоговом окне Добавление веб-сайта IIS на каждое приложение по умолчанию задан один пул приложений. Если указано Имя сайта, оно автоматически переносится в текстовое поле Пул приложений. При добавлении веб-сайта создается пул приложений с именем сайта.
Identity пула приложений
Учетная запись удостоверения пула приложений позволяет запускать приложение от имени уникальной учетной записи, не создавая домены или локальные учетные записи и не управляя ими. В службах IIS начиная с версии 8.0 рабочий процесс администратора IIS (WAS) создает виртуальную учетную запись с именем нового пула приложений и по умолчанию выполняет рабочие процессы пула приложений с помощью этой учетной записи. В консоли управления IIS в окне Дополнительные параметры пула приложений для Identity необходимо выбрать ApplicationPoolIdentity .
Процесс управления IIS создает в системе безопасности Windows безопасный идентификатор с именем пула приложений. С помощью этого идентификатора можно защищать ресурсы, но он не является реальной учетной записью и не отображается в консоли управления пользователями Windows.
Если рабочему процессу IIS требуется предоставить доступ к приложению с повышенными правами, измените список управления доступом (ACL) для каталога, содержащего приложение.
Откройте проводник и перейдите к каталогу.
Щелкните каталог правой кнопкой мыши и выберите пункт Свойства.
На вкладке Безопасность нажмите кнопку Изменить, а затем — кнопку Добавить.
Разрешения на чтение и выполнение предоставляются по умолчанию. При необходимости предоставьте дополнительные разрешения.
Кроме того, доступ можно предоставить через командную строку, используя средство ICACLS. В случае с DefaultAppPool выполняется такая команда:
Дополнительные сведения об ICACLS см. здесь.
Предварительные запросы CORS
Модуль инициализации приложений и время ожидания в режиме простоя
-
. Приложение, размещенное в процессе или вне процесса, можно настроить на автоматический запуск при перезапуске рабочего процесса или сервера. . Приложение, размещенное в процессе, можно настроить на игнорирование времени ожидания в периоды неактивности.
Модуль инициализации приложений
Применяется к приложениям, размещенным в процессе и вне процесса.
Убедитесь, что включена роль инициализации приложения IIS.
На настольных компьютерах с Windows 7 или более поздней версии при локальном использовании IIS:
- Последовательно выберите Панель управления > Программы > Программы и компоненты > Включение или отключение компонентов Windows (в левой части экрана).
- Откройте Службы IIS > Службы Интернета > Компоненты разработки приложений.
- Установите флажок Инициализация приложений.
В Windows Server 2008 R2 и более поздней версии:
- Откройте Мастер добавления ролей и компонентов.
- На панели Выбор служб ролей разверните узел Разработка приложений.
- Установите флажок Инициализация приложений.
Чтобы включить модуль инициализации приложений для сайта, используйте один из следующих подходов.
При использовании диспетчера IIS:
Откройте web.config и добавьте элемент <applicationInitialization> с параметром doAppInitAfterRestart , для которого установлено значение true , к элементам <system.webServer> в файле web.config приложения.
Время ожидания в режиме простоя
Применяется только к приложениям, размещенным в процессе.
Чтобы предотвратить переход приложения из состояния простоя, задайте для пула приложений время ожидания в режиме простоя с помощью диспетчера IIS:
Чтобы не истекло время ожидания в приложениях, размещенных вне процесса, воспользуйтесь одним из таких методов:
Каждый пул приложений в IIS использует свой собственный рабочий процесс (IIS Worker Process). Удостоверение пула приложений (Application Pool Identities) представляет из себя имя учетной записи, под которой выполняется рабочий процесс этого пула.
В IIS 6.0 и IIS 7.0 пул приложений по умолчанию работал под встроенной системной учетной записью NetworkService. Эта запись не требует пароля и имеет на локальном компьютере ограниченные права, что является хорошей практикой с точки зрения безопасности. Однако под этой учетной записью могут одновременно работать разные системные службы Windows, и при использовании одного и того же идентификатора одни службы могут воздействовать на работу других.
Начиная с Windows Server 2008 SP2 для того, чтобы изолировать рабочие процессы IIS от других системных служб, можно использовать виртуальные учетные записи (Virtual Accounts). Они позволяют запускать рабочий процесс для каждого пула приложений под собственной уникальной учетной записью ApplicationPoolIdentity. Эта учетная запись не требует управления и создается автоматически при создании каждого нового пула. Также она не имеет практически никаких привилегий в системе и не использует профиль пользователя, что повышает безопасность веб-сервера.
Для примера возьмем Application Pool с именем PubSite1. Открываем Task Manager и находим рабочий процесс IIS (w3wp.exe), выполняющийся от имени PubSite1. Как видите, имя учетной записи совпадает с именем пула приложений. Дело в том, что начиная с IIS 7.5 для каждого вновь созданного пула приложений по умолчанию создается виртуальная учетная запись с именем этого пула, и его рабочий процесс запускается из под этой записи.
Настройка типа удостоверения пула приложений
При необходимости тип идентификации пула приложений можно изменить. Для этого запускаем IIS Manager, переходим в раздел Application Pools, выбираем нужный пул и открываем его свойства (Advanced Settings).
В свойствах выбираем пункт Identity.
Здесь мы указываем учетную запись, от имени которой будет работать данный пул приложений:
Кроме того, в качестве удостоверения можно использовать и обычную учетную запись пользователя. Для этого надо выбрать Custom Account, нажать кнопку Set и ввести имя пользователя и пароль. Можно указать любого доменного или локального пользователя.
Примечание. При использовании учетной записи пользователя надо отслеживать срок действия пароля и своевременно менять его.
То же самое можно сделать с помощью утилиты командной строки appcmd. Чтобы указать учетную запись, которая будет использоваться для пула приложений, используется следующий синтаксис:
appcmd set config /section:applicationpools /[name=″имя пула приложений″].processModel.identityType:SpecificUser|NetworkService|LocalService|LocalSystem
Для примера изменим тип удостоверения для пула приложений PubSite1 на NetworkService:
appcmd set config /section:applicationpools
/[name=″PubSite1″].processModel.identityType:NetworkService
Профиль пользователя
Если вы хотите настроить ApplicationPoolIdentity на использование пользовательского профиля, то надо зайти в расширенные свойства пула и перевести параметр Load User Profile в состояние True.
Настройка доступа к ресурсам
Иногда веб-приложению может потребоваться доступ к определенной папке или файлу на диске. Чтобы добавить ApplicationPoolIdentity в Access Control List (ACL):
• Запускаем Windows Explorer;
• Выбираем нужный файл или директорию, кликаем по ней правой клавишей мыши и выбираем пункт Свойства (Properties);
• Переходим на вкладку Безопасность (Security),
• Кликаем по кнопке Изменить (Edit), затем Добавить (Add);
• В поле Размещение (Locations) выбираем локальную машину;
• Вводим имя пользователя в виде ″IIS AppPool\имя пула приложений″. Так для пула приложений PubSite1 имя пользователя будет выглядеть ″IIS AppPool\PubSite1″;
• Проверяем имя клавишей Проверить имена (Check Names) и жмем ОК.
Также при желании можно воспользоваться утилитой командной строки ICACLS. Для примера дадим права на изменение для PubSite1:
ICACLS C:\Web\Pubsite1 /grant ″IIS AppPool\PubSite1″:M
Список разрешений выглядит следующим образом:
D – удаление;
F – полный доступ;
M – изменение;
RX – чтение и выполнение;
R – чтение;
W – запись.
Если ресурс находится в сети, то для доступа к нему лучше всего использовать учетную запись NetworkService. Рабочий процесс, запущенный под этим аккаунтом, для доступа к ресурсам использует учетные данные компьютера, сгенерированные при добавлении компьютера в домен. Для того, чтобы дать процессу доступ к сетевому ресурсу, в качестве пользователя указываем компьютер:
• Выбираем тип объекта (Object Type) Computers;
• В поле Размещение (Locations) выбираем домен;
• Вводим имя пользователя в виде domainname\machinename$, например contoso\SRV12$;
• Проверяем имя и жмем ОК.
Очень удобный способ предоставлять доступ к сетевым ресурсам типа файловых шар или баз данных SQL Server. Однако работает он только при наличии домена AD.
Пул приложений IIS обслуживает сайты и веб-приложения, размещенные на вашем сервере. Выделенный пул приложений IIS обеспечивает вашим клиентам определенный уровень изоляции между сайтами. Так как каждый выделенный пул приложений работает независимо, ошибки, возникающие в пуле одного пользователя, не повлияют на приложения, запущенные в пулах других пользователей.
По умолчанию всем пользователям Plesk предоставляется общий пул приложений. Однако они также могут использовать выделенные пулы ― если их хостинговый пакет включает такую опцию.
Пул приложений IIS может работать в следующих режимах:
- Общий пул ― все пользователи и сайты используют один и тот же пул.
- Выделенный пул ― по умолчанию каждому клиенту предоставляется отдельный пул. Кроме того, можно выделить отдельные пулы для каждого пакета в рамках пула клиента, что позволит изолировать сайты, относящиеся к конкретному пакету, от других сайтов клиента.
Чтобы изменить режим работы пула приложений IIS:
Перейдите на страницу Инструменты и настройки > Пул приложений IIS.
Перейдите на вкладку Глобальные настройки.
Выберите нужный режим и нажмите OK.
Чтобы настроить дополнительные параметры пула приложений IIS:
- Перейдите на страницу Инструменты и настройки > Пул приложений IIS.
- Укажите максимальное допустимое количество рабочих процессов, обрабатывающих запросы для пула приложений IIS, и период бездействия рабочего процесса (в минутах), после которого его следует завершить.
- Чтобы ограничить объем ресурсов процессора, который может использовать пул приложений IIS, уберите галочку Без ограничений и укажите число (в процентах) в поле Максимальная загрузка ЦП (%), выберите действие, которое следует выполнить, когда рабочий процесс превысит максимальную загрузку ЦП, и укажите период сброса для наблюдения за использованием процессора в пулах приложений. Когда проходит указанное количество минут с момента последнего сброса, IIS сбрасывает таймеры ЦП для вывода в журнал и периодов ограничения.
- Выберите нужные опции перезапуска в зависимости от времени или потребления ресурсов, чтобы настроить периодический перезапуск пула приложений IIS и избежать нестабильных состояний, которые могут привести к сбоям, зависаниям и утечкам памяти в приложениях.
- Нажмите OK.
Чтобы остановить все приложения, запущенные в пуле приложений сервера:
- Перейдите на страницу Инструменты и настройки > Пул приложений IIS.
- Нажмите Stop (Остановить).
Чтобы запустить все приложения в пуле приложений:
- Перейдите на страницу Инструменты и настройки > Пул приложений IIS.
- Нажмите Start (Запустить).
Чтобы перезапустить все приложения в пуле приложений:
- Перейдите на страницу Инструменты и настройки > Пул приложений IIS.
- Нажмите Перезапустить. Это может оказаться удобным, если известно, что в некоторых приложениях произошла утечка памяти или они стали функционировать нестабильно после длительного времени работы.
По умолчанию пул приложений IIS работает в 64-битном режиме. Для запуска некоторых старых версий приложений, вам может понадобиться включить 32-битный режим.
Настройка сервера приложений Creatio (веб-сервера) на IIS включает в себя настройку веб-сайта приложения в IIS и добавление пула приложения.
Настроить сайт приложения в IIS
Для создания и настройки web-сайта:
В окне управления IIS щелкните правой клавишей мыши по Sites и выберите Add Website в контекстном меню ( Рис. 1 ).
Укажите название сайта, путь к корневому каталогу с файлами Creatio, используемые IP-адреса и порт сайта ( Рис. 2 ). Путем по умолчанию для web-сайтов является путь C:\Inetpub\wwwroot. В случае необходимости можно указать свой адрес.
В области Connections щелкните правой клавишей мыши по созданному сайту и выберите команду Add Application контекстного меню ( Рис. 3 ).
Введите имя приложения “0” в поле Alias . Укажите директорию “Terrasoft.WEBApp” ( Рис. 4 ).
Добавить пул приложения
Для добавления пула приложения:
На заметку. Первый вход в систему после настройки приложения осуществляется под учетной записью Supervisor (логин — Supervisor; пароль — Supervisor).
В области Connections окна управления IIS перейдите в секцию Applications Pools .
Выберите пул Creatio .
В поле Managed pipeline mode выберите режим Integrated .
Убедитесь в том, что все необходимые разрешения активны. Для этого перейдите в Handler Mappings на уровне сервера ( Рис. 4 ).
Нажмите на Edit Feature Permissions в области Actions .
Убедитесь, что в окне Edit Feature Permissions установлены все признаки ( Рис. 5 ).
Рис. 5 — Проверка необходимых параметров в окне Edit Feature PermissionsУбедитесь, что у нового приложения сконфигурирован MIME-тип для файлов с расширениями .svg и .json. Данная конфигурация может быть выполнена как на уровне сервера (в этом случае она наследуется для всех размещенных на нем приложений), так и на уровне приложения. Для проверки:
Перейдите в MIME Types на уровне сервера или на уровне приложения ( Рис. 6 ).
Проверьте в списке наличие конфигурации для файлов с расширением .svg и .json. Если такая конфигурация есть, переходите на шаг 12.
Если конфигурации нет, нажмите Add. в области Actions . В открывшемся окне укажите расширение .svg и MIME-тип данных, соответствующий этому расширению ( Рис. 7 ). Повторите те же действия для расширения .json (MIME-тип “ application/json” ).
Рис. 7 — Настройка MIME-типа данных для файлов с расширением .svgПерезапустите web-сайт при помощи команды Restart области Manage Website ( Рис. 8 ).
Рис. 8 — Выбор команды Restart в области Manage WebsitesОткройте сайт, перейдя по адресу или при помощи команды Browse ( Рис. 9 ). Убедитесь, что открывается страница авторизации в приложении.
Рис. 9 — Выбор команды Browse в области Actions веб-сайтаДля включения русского языка:
Из дизайнера системы перейдите в раздел Языки .
Выберите русский язык и нажмите Открыть .
На открывшейся странице установите признаки Активен и Использовать по умолчанию . Сохраните изменения.
Для включения языка необходимо, чтобы пользователю, от имени которого в IIS запущен пул приложения, были предоставлены права на чтение, запись и удаление файлов и вложенных каталогов статического контента приложения (каталог .\Terrasoft.WebApp\conf).
Из дизайнера системы перейдите в раздел Системные настройки и измените значение системной настройки “Порядок ФИО” на “Last name, First name Middle name ”. Это необходимо для корректной разбивки ФИО контактов на отдельные колонки Фамилия , Имя , Отчество .
Читайте также: