Как посмотреть терминальные сессии windows 2012

Управление RDP сессиями пользователей Windows Server 2012 R2

При администрировании сервера терминалов, особенно, когда на нем работают удаленные сотрудники в специализированных программах или даже просто в 1С, возникает необходимость подключиться к сессии пользователя для различных работ (обслуживание и диагностика ПО, консультация/обучение и т.п.).

Данная технология полноценно работает в Windows Server 2012 R2 и называется – Теневая копия. Если у вас установлена и используется для сервера удаленных рабочих столов MS Windows Server 2012, то знайте – данная опция не реализована в данной версии ОС. Тем не мене в обоих случаях (2012 и 2012 R2) есть прекрасная возможность использовать дополнительное средство удаленного администрирования и поддержки пользователей – “Удаленный помощник“. Устанавливается стандартным способом (через Диспетчер управления серверами-Добавить роли и компоненты):

После установки “Удаленный Помощник” необходимо выполнить следующие настройки групповых политик на настраиваемом сервере:

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

Настройка Удаленного помощника на сервер MS Windows Server 2012 / 2012 R2 завершена.

Нашли ошибку в тексте? Выделите фрагмент текста и нажмите Ctrl+Enter

Мониторинг активности и статуса подключенных удаленных клиентов. Monitor connected remote clients for activity and status

Область применения. Windows Server (Semi-Annual Channel), Windows Server 2016 Applies To: Windows Server (Semi-Annual Channel), Windows Server 2016

Примечание. Windows Server 2012 объединяет службу DirectAccess и службы удаленного доступа (RAS) в одну роль удаленного доступа. Note: Windows Server 2012 combines DirectAccess and Remote Access Service (RAS) into a single Remote Access role.

Консоль управления на сервере удаленного доступа можно использовать для наблюдения за активностью и состоянием удаленных клиентов. You can use the management console on the Remote Access server to monitor remote client activity and status.

Для выполнения задач, описанных в этом разделе, необходимо войти в систему как член группы «Администраторы домена» или член группы «Администраторы» на каждом компьютере. You must be signed in as a member of the Domain Admins group or a member of the Administrators group on each computer to complete the tasks described in this topic. Если вы не можете выполнить задачу, войдя в учетную запись, которая является членом группы «Администраторы», попробуйте выполнить задачу, войдя в учетную запись, которая является членом группы «Администраторы домена». If you cannot complete a task while you are signed in with an account that is a member of the Administrators group, try performing the task while you are signed in with an account that is a member of the Domain Admins group.

Читайте также:  Linux mint установка времени

Мониторинг активности и состояния удаленных клиентов To monitor remote client activity and status

В диспетчере серверов щелкните Средства и выберите пункт Управление удаленным доступом. In Server Manager, click Tools, and then click Remote Access Management.

Щелкните отчеты , чтобы перейти к отчетам удаленного доступа в консоли управления удаленным доступом. Click REPORTING to navigate to Remote Access Reporting in the Remote Access Management Console.

Щелкните состояние удаленного клиента , чтобы перейти к пользовательскому интерфейсу активности и состояния удаленных клиентов в консоли управления удаленным доступом. Click Remote Client Status to navigate to the remote client activity and status user interface in the Remote Access Management Console.

Вы увидите список пользователей, подключенных к серверу удаленного доступа, и подробную статистику по ним. You will see the list of users who are connected to the Remote Access server and detailed statistics about them. Щелкните первую строку в списке, соответствующую клиенту. Click the first row in the list that corresponds to a client. При выборе строки на панели предварительного просмотра отображается активность удаленных пользователей. When you select a row, the remote user activity is shown in the preview pane.

Эквивалентные команды в Windows PowerShell Windows PowerShell Windows PowerShell equivalent commands

Следующие командлеты Windows PowerShell выполняют ту же функцию, что и предыдущая процедура. The following Windows PowerShell cmdlet or cmdlets perform the same function as the preceding procedure. Вводите каждый командлет в одной строке, несмотря на то, что здесь они могут отображаться разбитыми на несколько строк из-за ограничений форматирования. Enter each cmdlet on a single line, even though they may appear word-wrapped across several lines here because of formatting constraints.

Статистику пользователя можно фильтровать на основе выбора критериев, используя поля в следующей таблице. The user statistics can be filtered, based on criteria selections, by using the fields in the following table.

Как посмотреть терминальные сессии windows 2012

Добрый день! Уважаемые читатели и гости IT блога Pyatilistnik.org. В прошлый раз мы с вами разобрали, как сделать таймер выключения компьютера. Сегодня я хочу вас научить определять ID (Уникальный идентификатор) и номер сеанса пользователя на терминальных столах. Уметь, это нужно, для решения ситуаций, когда такой сеанс зависает и пользователь не может работать и переключиться на другую ноду RDS фермы, так как посредники подключений видят, что у него есть активная сессия. Думаю. что мой опыт, описанный в статье окажется вам полезным.

Что такое ID сеанса

Когда пользователь входит на компьютер с включенными службами удаленных рабочих столов, для него запускается сеанс. Каждый сеанс идентифицируется уникальным идентификатором сеанса. Каждый такой сеанс ассоциируется с интерактивной оконной станцией (interactive window station) «WinSta0»; поэтому каждый сеанс связан со своей собственной оконной станцией «WinSta0». Для каждой оконной станции имеется три стандартных рабочих стола: рабочий стол Winlogon, рабочий стол с заставкой и интерактивный рабочий стол.

Читайте также:  Принципиальные отличия linux от windows открытость кода операционной системы

Когда пользователь выходит с сервера удаленных рабочих столов (RDC), то сеанс, который клиент имеет на сервере узла сеансов удаленных рабочих столов (ранее назывался сервер терминалов), удаляется. Однако если сеанс консоли служб удаленных рабочих столов не смог завершится, то оконные станции, связанные с сеансом консоли, не удаляются, все процессы продолжают висеть. Это влияет на поведение приложений в среде служб удаленных рабочих столов, когда они настроены для работы в контексте безопасности интерактивного пользователя, также известного как режим активации объекта «RunAs Interactive User». Вот тогда, то и выявляется ID сеанса, чтобы его грохнуть.

Методы определения ID сеанса пользователя RDP

Существует несколько методов, которые могут вам помочь определить номер сеанса и его ID на терминальных серверах и RDS фермах.

  • Утилита quser
  • Утилита qwinsta
  • Утилита Query session
  • Оснастка диспетчер задач
  • PowerShell командлет Get-TerminalSession
  • PowerShell командлет Get-TSSession

Определение ID сеанса через quser

И так у меня есть RDS ферма состоящая из хостов с Windows Server 2012 R2, в базе Active Directory есть пользователь Барбоскин Геннадий Викторович. Данный пользователь вошел на терминал, работал, но по какой-то причине он завис и чтобы корректно разлогинить его сессию нам необходимо вычислить ее номер сеанса и уникальный идентификатор. Попробуем это выполнить через утилиту quser.

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

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

  • Имя пользователя
  • Имя сеанса на сервере Session Host
  • ID сеанса
  • Состояние сеанса (активно или отключено)
  • Время простоя (количество минут с момента последнего нажатия клавиш или движения мыши во время сеанса)
  • Дата и время входа пользователя

Откройте командную строку cmd, лучше в режиме администратора и введите команду:

У вас будет выведен список всех текущих сессий на вашем терминальном сервере.Если пользователей много, то сложно сразу найти нужного, так как все идет не по алфавиту. Ранее я вам показывал, как фильтровать вывод результатов в командной строке Windows, там была команда findstr. Вводим команду:

В итоге я вижу, что номер сеанса rdp-tcp#24 и его ID 45, статус активно, это означает, что человек работает. Видно его время входа. Тот же результат можно получить и вот такой конструкцией:

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

Так же есть возможность запустить для конкретного сервера, для этого есть ключ /server

Определение ID сеанса через qwinsta

QWINSTA — Это утилита командной строки Windows, в задачи которой входит извлечение информации, о пользовательских сессиях на удаленных рабочих столах и выводя много полезной информации.

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

Утилита выведет список всех авторизованных в системе пользователей, из полезной информации вы получите:

  • Сеанс — номер сеанса формата rdp-tcp#24
  • Пользователь — логин
  • ID — уникальный идентификатор сессии пользователя на терминальном столе
  • Статус — состояние сеанса (Активно или Диск (Отключено))
  • Тип
  • Устройство
Читайте также:  Планшеты с клавиатурой windows 10 prestigio

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

Как узнать id пользователя через диспетчер задач

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

Чтобы включить отображение нужных нам столбцов, вам необходимо щелкнуть правым кликом на область с именем столбцов. В контекстном меню поставьте галки на «Код» и «Сеанс».

В итоге у вас теперь появилась возможность легко просматривать идентификационный код сеанса и имя сеанса, в моем примере, это RDP-Tcp#24.

Как узнать id пользователя через query session

QUERY SESSION — это утилита командной строки так же выводящая информацию, о вошедших в систему пользователей. Вводите в командной строке query session, вывод утилиты копия qwinsta. Вы так же будите видеть номер сеанса, логин учетной записи, ID, статус подключения.

Получение информации о сеансе через Get-TerminalSession

PowerShell не зря называют могучим, он поистине может все. К сожалению родных командлетов, которые бы заменяли утилиты командной строки нет, но есть возможность установить дополнительные, из репозитория. Речь пойдет, о сборнике «PowerShell Community Extensions» (Pscx 3.2.2). Данный сборник включаем в себя огромный комплекс командлетов, нас будет интересовать Get-TerminalSession.

Установка «PowerShell Community Extensions» очень проста и выполняется одной командой. Перед установкой Pscx 3.2.2, вам необходимо обновить ваш PowerShell хотя бы до версии 5.1. Далее запускаете оболочку PowerShell от имени администратора и вводите команду:

Про сам сборник вы можете почитать по ссылке (https://www.powershellgallery.com/packages/Pscx/3.2.2)

Пишите на терминальном сервере Get-TerminalSession, или же можете запросить удаленно Get-TerminalSession -ComputerName 192 . 168 . 1 . 51

Получение информации о сеансе через Get-TSSession

Модуль PSTerminalServices, так же позволяет взаимодействовать с терминальными профилями В состав PSTerminalServices входят вот такие командлеты:

  • Disconnect-TSSession — отключает любого подключенного пользователя от сеанса.
  • Get-TSCurrentSession — предоставляет информацию о сеансе, в котором выполняется текущий процесс.
  • Get-TSProcess — получает список процессов, запущенных в определенном сеансе или во всех сеансах.
  • Get-TSServers — перечисляет все терминальные серверы в данном домене.
  • Get-TSSession — перечисляет сессии на данном терминальном сервере.
  • Send-TSMessage — отображает окно сообщения в указанном идентификаторе сеанса.
  • Stop-TSProcess — завершает процесс, запущенный в определенном сеансе или во всех сеансах.
  • Stop-TSSession — отключает сеанс, отключая любого пользователя, который может быть подключен.

Скачать PSTerminalServices вы можете по ссылке https://github.com/imseandavis/PSTerminalServices, там будет MSI пакет, если его уже по какой-то причине не будет, то можете загрузить PSTerminalServices по ссылке слева.

Установка PSTerminalServices проста до безобразия. На первом экране нажимаем «Next».

При необходимости изменяем путь установки данного модуля.

Для продолжения нажимаем «Install»

Установка модуля завершена.

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

Далее проверьте командой, что модуль PSTerminalServices доступен в системе, выполните:

Далее импортируем модуль и запускаем его:

На выходе вы получаете информацию, о всех ваших сеансах пользователей на терминальном столе

Оцените статью