Rdp завершение отключенного сеанса: Настройка лимитов (таймаутов) для активных/отключенных RDP/RDS сессий в Windows

Содержание

Настройка лимитов RDP-сессий

Обновлено: Опубликовано:

Тематические термины: терминальный сервер, Windows

По умолчанию, на терминальном сервере RDP-сессия длится до тех пор, пока пользователь ее явно не прервет. В некоторых случаях, это может привести к зависанию профиля или некоторых запущенных приложений.

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

Настройка на терминальном сервере

Сессии можно настроить для конкретного сервера в настройках сервера терминалов. Процесс немного отличается в зависимости от версии операционной системы Windows.

Windows 2012 и выше

В диспетчере серверов переходим в службы удаленных рабочих столов:

Переходим в коллекцию, для которой хотим поменять настройки сеанса:

В свойствах коллекции кликаем по Задачи — Изменить свойства:

Переходим в раздел Сеанс и выставляем ограничения:

* где Окончание разъединенного сеанса — время, через которое для пользователей с завершенными сеансами произойдет выход из системы; Ограничение бездействующего сеанса — время, через которое сеанс перейдет в разъединенный, если пользователь в нем не работает (не проявляет никакой активности).

 

Windows 2008 R2 и ниже

Нажимаем ПускАдминистрирование — Службы удаленных рабочих столов — Конфигурация узла сеансов удаленных рабочих столов:

В разделе «Подключения» дважды кликаем по RDP-Tcp:

На вкладке «Сеансы» ставим галочку Переопределить параметры пользователя и выставляем необходимые лимиты:

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

Настройка через GPO

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

Заходим в консоль управления политиками — создаем политику с любым понятным названием — переходим в настройку созданной политики.

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

  • Конфигурация компьютера\Политики\Административные шаблоны\Компоненты Windows\Службы удаленных рабочих столов\Узел сеансов удаленных рабочих столов\Ограничение сеансов по времени

    (Computer Configuration\Policies\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Session Time Limits)
  • Конфигурация пользователя\Политики\Административные шаблоны\Компоненты Windows\Службы удаленных рабочих столов\Узел сеансов удаленных рабочих столов\Ограничение сеансов по времени

    (User Configuration\Policies\Administrative Templates\Windows Components\Remote Desktop Services\Remote Desktop Session Host\Session Time Limits)

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

Для настройки выставляем следующие значения:






ПараметрОписаниеЗначения
Завершать сеанс при достижении ограничения по времени (End session when time limits are reached)Задает глобальную настройку, которая разрешает или запрещает лимиты, в принципе.Включено — включает режим ограничения сессий (для нашей цели выбираем это значение).
Отключено — выключает и запрещает лимиты.
Не задано — выключает для политик, но разрешает локальные настройки на сервере.
Задать ограничение по времени для активных, но бездействующих сеансов служб удаленных рабочих столов (Set time limit for active but idle Terminal Services sessions)Если пользователь завершил работу с сервером, но не завершил сеанс, можно установить ограничение сессии этим параметром. Таким образом, пользователи, которые не завершают сеанс будут автоматически выкинуты из сессии.Включено — активируем лимит для бездействующих сеансов (выставляем ее). И в выпадающем списке указываем время бездействия, например 3 часа.
Отключено — отключает лимит на бездействующие сессии.
Не задано — настройка задается локально на сервере.
Задать ограничение по времени для отключенных сеансов (Set time limit for disconnected sessions)Если пользователь отключил сеанс, но не вышел из системы, можно автоматически его разлогинить с помощью этой опции.Включено — активируем лимит для завершенных сеансов (выставляем ее). И в выпадающем списке указываем время, например 3 часа.
Отключено — отключает лимит на завершенные сессии.
Не задано — настройка задается локально на сервере.
Задать ограничение по времени для активных сеансов служб удаленных рабочих столов (Set time limit for active Remote Desktop Services sessions)Независимо от того, работает пользователь в системе или нет, сервер завершит его сеанс, отправив уведомление за 2 минуты до отключения.Включено — активируем лимит для активных сеансов. В выпадающем списке необходимо указать время. Данную опцию лучше не применять. С практической точки зрения опция создаст много неудобств.
Отключено — отключает лимит на завершенные активные сессии.
Не задано — настройка задается локально на сервере.

Для применения настроек ждем или выполняем команду на сервере:

gpupdate /force

Проверяем, применились ли политики:

gpresult /r

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

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

Для этого создаем группу в Active Directory и добавляем туда нужные серверы (или пользователей).

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

а) команда для проверки компьютера:

gpresult /r /scope:computer

б) для пользователя:

gpresult /r /scope:user

Если в созданной группе компьютера/пользователя нет, то:

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

б) на сервере выполняем команды:

klist -lh 0 -li 0x3e7 purge

gpupdate /force

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

Далее при создании групповой политики удаляем группу «Прошедние проверку», которая присутствует по умолчанию:

И добавляем созданную ранее, например:

После настраиваем политику по инструкции выше.

Чтобы проверить, что настройка применилась только у нужным нам объектам, на сервере выполняем команду:

gpresult /r

Была ли полезна вам эта инструкция?

Да            Нет

Автовыход пользователя на сервере Windows. Использование его для оптимизации работы вашего VDS / VPS сервера / Хабр

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

Любой сервер в том числе и виртуальный сервер должен работать в постоянном режиме 24 х 7 х 365. И соответственно пользователь, который запускает программы на выполнение на сервере, рассчитывает, что они будут работать в таком же режиме. Именно на это и рассчитывают наши клиенты. Однако устанавливая на VPS сервер различного рода десктопное программное обеспечение, которое разрабатывалось «умельцами» без мысли, что существуют компьютеры, не имеющие мониторов, отключившись от сервера через какое-то время замечают, что его программа перестала работать должным образом, при том что сервер активен и доступен. Замечают это как правило при следующем подключении к серверу для анализа данных с как подразумевалось работавшего ПО. Проблема, очевидно в том, что данное ПО что-то пытается брать со свойств экрана (разрешение, позиция курсора и т.д.) при том, что ни экрана, ни курсора при отключенном сеансе нет.


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

Запустим на сервере редактор «Локальной групповой политики» нажав сочетание клавиш Win+R и Набрав команду GPEDIT.MSC

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

Административные шаблоны -> Компоненты Windows -> Службы удаленных рабочих столов -> Узел сеансов удаленных рабочих столов -> Ограничение сеансов по времени.

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

  1. Для отключенных сеансов
  2. Для активных, но бездействующих сеансов
  3. Для активных сеансов
  4. Сеанс RemoteApp


Рассмотрим каждый из них несколько подробнее.

1.«Задать ограничение по времени для отключенных сеансов»


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

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

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

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


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

3.«Задать ограничение по времени для активных сеансов служб удалённых рабочих столов»


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

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

4.«Задать предел времени для выхода из сеансов RemoteApp»


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

Выход из системы или отключение пользовательских сеансов

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

Твиттер

LinkedIn

Фейсбук

Электронная почта

  • Статья
  • 2 минуты на чтение

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

Кроме того, пользователи с правами администратора могут завершить сеанс пользователя, если пользователь вышел из сеанса MultiPoint Services или забыл выйти из системы.

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

Действие Эффект
Щелкните Пуск , щелкните Параметры, щелкните имя пользователя (в правом верхнем углу), а затем щелкните Выйти . Сеанс завершен, и станция доступна для входа любым пользователем.
Щелкните Пуск , щелкните Параметры , щелкните Питание, а затем щелкните Отключить . Ваш сеанс отключен, и ваш сеанс сохраняется в памяти компьютера. Станция становится доступной для входа в систему тем же пользователем или другим пользователем.
Щелкните Пуск , щелкните Параметры, щелкните имя пользователя (в правом верхнем углу), а затем щелкните Замок Станция заблокирована, а ваш сеанс сохраняется в памяти компьютера.

Приостановка или завершение сеанса пользователя

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

Действие Эффект
Приостановка: В MultiPoint Manager используйте 9Вкладка 0028 Stations для приостановки сеанса пользователя. Дополнительные сведения см. в разделе Приостановить и оставить сеанс пользователя активным. Сеанс пользователя завершается и сохраняется в памяти компьютера. Станция становится доступной для входа в систему тем же пользователем или другим пользователем. Пользователь может войти на ту же или другую станцию ​​и продолжить свою работу.
Конец: В MultiPoint Manager используйте вкладку Stations для завершения сеанса пользователя. Вы также можете завершить все сеансы пользователей на Станции вкладка. Дополнительные сведения см. в разделе «Завершение сеанса пользователя». Сеанс пользователя завершается, и станция становится доступной для входа в систему любому пользователю. Сеанс пользователя больше не отображается на вкладке Stations и отсутствует в памяти компьютера.

См. также

Приостановить и оставить сеанс пользователя активным
Завершить сеанс пользователя
Управление рабочими столами пользователей
Выход из сеансов пользователей

Обратная связь

Просмотреть все отзывы о странице

Являются ли отключенные сеансы RDP бомбами замедленного действия в вашей сети?


Ингмар Кёхер

0 комментариев
Журнал событий, EventSentry, мониторинг, безопасность
rdp, мониторинг rdp, безопасность rdp

Я думаю, что все мы были там раньше — вы входите на сервер удаленно через RDP и делаете все необходимое — но не сразу выходите из системы. Но затем вы отвлекаетесь на телефонный звонок, электронное письмо, чат или старое доброе физическое взаимодействие с другим человеком. Поэтому, когда приходит время на ночь, вы выключаете компьютер или выходите из системы. Или, может быть, вы работали на ноутбуке, и ваш VPN был прерван. Результат тот же — ранее активные сеансы RDP автоматически отключаются. Или, может быть, кто-то (не вы, конечно) намеренно отключает свою сессию, чтобы следующий процесс входа был быстрее.

Какой бы ни была причина, ключевая проблема с отключенными сеансами RDP заключается в том, что по умолчанию они остаются подключенными на неопределенный срок, пока сервер не будет перезагружен, вы снова войдете в систему (потому что вы забыли что-то сделать?) или коллега заметит оскорбление и вежливо просит вас выйти из системы.

В этот момент вы, вероятно, думаете: « Хорошо, да, но кому какое дело до »? Со всеми серьезными вещами, которые происходят вокруг вас, вы, вероятно, задаетесь вопросом, какого черта вам вдруг нужно беспокоиться об отключенных сеансах RDP? Ну, отключенные сеансы RDP могут быть проблематичными по ряду причин:


Возможные проблемы

Путаница

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

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

Итак, это самое интересное и, я признаю, настоящая причина этого сообщения в блоге (нет, это не путаница). Оказывается, любой локальный администратор имеет возможность перехватить любой отключенный сеанс на сервере, на котором он или она является администратором. И хотя поначалу это не кажется огромной проблемой (если пользователь уже является администратором, то он может делать что угодно и т. д.), существует очень специфический сценарий, в котором это представляет значительный риск для безопасности. Быть админом на машине — большая привилегия, но вряд ли ключ к королевству. Если администратор домена (или, что еще хуже, администратор предприятия!) тем не менее входит в систему на том же хосте и отключает свой сеанс, то локальный администратор может бесплатно повысить себя до администратора домена (конечно, EventSentry обнаружит это) путем просто захват отключенного сеанса. Процесс включает в себя лишь несколько команд, одна из которых создает временную службу (EventSentry также обнаружит это).

Потребление ресурсов

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

Я надеюсь, что теперь мы (почти) все согласны с тем, что отключенные сеансы имеют ряд недостатков, поэтому давайте перейдем к способам решения этой проблемы.


Решения

Обучение пользователей

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

Уведомления

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

Таким образом, в этом сценарии событие входа пользователя запустит таймер фильтра, который, по сути, приостановит исходное событие. Он пока не перенаправит его в уведомление — только если время таймера истечет, и никакое последующее событие не удалит таймер. Более позднее событие logoff (которое связано с событием входа в систему через какое-либо свойство события, такое как идентификатор входа в систему) завершит таймер фильтра. Если событие выхода из системы не происходит (или происходит слишком поздно), EventSentry выпустит ожидающее событие (вход в систему) и может отправить уведомление, чтобы команда или пользователь знали (если шаблон входа соответствует адресам электронной почты), что время фильтрации истек.

БОНУС: если имя пользователя Windows можно сопоставить с адресом электронной почты (например, имя пользователя john.doe  и адрес электронной почты [email protected] ), то EventSentry может даже отправить электронное письмо непосредственно на пользователь (в отличие от обычного электронного письма), напоминающий ему о выходе из системы. Более того, электронное письмо можно настроить и предоставить конкретные инструкции. См. KB 465 для получения инструкций о том, как настроить это в EventSentry. На скриншоте ниже показано такое настроенное электронное письмо.

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

Принудительно

выход из отключенных сессий

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

 Политика локального компьютера
   |-- Конфигурация компьютера
       |-- Административные шаблоны
|-- Компоненты Windows
 |-- Службы удаленных рабочих столов
 |-- Узел сеансов удаленного рабочего стола
 |-- Ограничение времени сеанса 

Затем просто включите параметр и настройте соответствующее ограничение времени. Доступные параметры тайм-аута на самом деле очень полезны и варьируются от 1 минуты (что в значительной степени преобразует отключение в выход из системы) вплоть до 5 дней (что лучше, чем ничего, я полагаю, но зачем вообще беспокоиться в этот момент?). Какой вариант вы выберете здесь, во многом зависит от того, насколько вы обеспокоены использованием ресурсов и захватом сеансов. Лично я бы рекомендовал нижний предел от 30 минут до 8 часов максимум.

Проверка настроек RDP с помощью сценариев проверки EventSentry

EventSentry включает два сценария проверки, которые проверяют, включены ли тайм-ауты сеансов RDP:

1. Отключение сеансов после бездействия пользователя в течение X минут
2. Выход из отключенных сеансов через X минут

Заключение

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