Как посмотреть активные терминальные сессии в windows server 2012 + видео обзор

Содержание
  1. Как посмотреть активные терминальные сессии в windows server 2012
  2. Описание ситуации
  3. В чем отличие фермы от терминала
  4. Схема управления RDS фермой
  5. Собираем консоль управления RDS фермой
  6. Как посмотреть активные терминальные сессии в windows server 2012
  7. Войти
  8. удаленное управление сеансом пользователя windows 2012 r2
  9. RDS Shadow из Powershell
  10. 7 способов посмотреть, кто работает на сервере терминалов
  11. Как посмотреть активные терминальные сессии в windows server 2012
  12. Что такое ID сеанса
  13. Методы определения ID сеанса пользователя RDP
  14. Определение ID сеанса через quser
  15. Определение ID сеанса через qwinsta
  16. Как узнать id пользователя через диспетчер задач
  17. Как узнать id пользователя через query session
  18. Получение информации о сеансе через Get-TerminalSession
  19. Получение информации о сеансе через Get-TSSession
  20. Windows admin blog
  21. Полезные команды cmd, powershell, администрирование, фичи и решения проблем на win/winserver
  22. Полезные команды для терминального сервера
  23. query
  24. qwinsta
  25. quser
  26. RDS shadow (mstsc)
  27. change logon
  28. shutdown
  29. Видео

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

Доброго времени суток, многоуважаемые инженеры, системные администраторы и просто начинающие пользователи. Рад вас вновь приветствовать на страницах IT блога Pyatilistnik.org. Если вы мой постоянный читатель, то вы заметили, что я очень часто и много пишу про терминальные сервера и RDS фермы. Сегодня я хочу вам показать, как производится управление RDS фермой Windows Server 2012 и Windows Server 16. Я на сто процентов уверен, что данная информация будет вам полезна, так как я часто видел опытных администраторов, кто не знал как это делается, в виду старых знаний и стереотипов, о данной технологии.

Описание ситуации

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

В чем отличие фермы от терминала

Если посмотреть организацию удаленного доступа в Windows Server 2008 R2, то там схема была простой, где-то в сети устанавливался сервер лицензирования удаленных рабочих столов, а уже на нужно из серверов, куда планировалось подключение, ставилась роль «Службы удаленных рабочих столов». Ему назначались лицензии и пользователь подключался.

Если посмотреть концепцию Windows Server 2012 R2 и старше, то выглядит это уже вот так, есть некое виртуальное имя к которому все подключаются, есть серверная роль «Посредник подключения (RD Connection Broker)«, он берет на себя роль распределения нагрузки и количество сеансов пользователей, на сервера удаленного подключения «RD Session Host«, где уже работаю пользователи. Вся эта конструкция объединяется в некий пул. называемый RDS фермой, где легко создать отказоустойчивость на уровне посредников подключения и легко обслуживать хосты конечного подключения.

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

Схема управления RDS фермой

Тот сотрудник не совсем понимая схему и видя ее впервые, наивно подумал, что все управление Remote Desktop Services фермой осуществляется через посредника подключения (Connection Broker). Он попытался к нему подключиться, но его послали с формулировкой «Удаленный компьютер «имя», попытка подключения к которому выполняется, перенаправляет вас на удаленный компьютер «имя», он то и не знал, что для подключения к нужному хосту фермы нужно использовать специальные ключи.

Далее показав ему, как происходит подключение к посреднику, он попытался отыскать оснастку управления, так как в Windows Server 2008 R2, была именно такая реализация работы, но он там ничего не нашел. Он подглядел у меня, что я управляю RDS, через «Диспетчер серверов». Он его открывает и у него там то же ничего не оказалось, в итоге он побился часок и попросил ему показать. Чтобы знающих людей стало больше и грамотность системных инженеров была больше я вам написал небольшую инструкцию. Не подумайте, что я надменно отнесся к своему коллеге, я просто так же был однажды в на его месте и понимал, что это просто отсутствие опыта, что не смертельно.

Собираем консоль управления RDS фермой

Для управления настройками Remote Desktop Services вам потребуется клиентская операционная система Windows 8.1 или Windows 10, либо это могут быть Windows Server 2012 R2 и выше. Там нам потребуется оснастка «Диспетчер серверов».

Если вы знаете всех участников RDS фермы, то это хорошо, вы немного себе выиграете времени, если нет, то придется слегка пописать команды и помучить DNS-сервер.

Откройте командную строку или запустите PowerShell оболочку. Предположим у вас виртуальное имя для подключения к удаленному рабочему столу TERM. Тут у вас два варианта:

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

И та и другая выдали вам ip-адреса, в которое разрешается ваше виртуальное имя RDS фермы. В моем примере их два. Эти адреса принадлежат посредникам по подключению (Connection Broker), делаем так же запрос:

Стрелками я выделил полученные DNS имена, самое главное мы получили.

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

Теперь открывает оснастку «Диспетчер серверов» от имени той учетной записи у которой есть права на администрирование RDS фермы. В открывшейся оснастке выберите пункт «Добавить другие серверы для управления»

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

У вас откроется окно «Добавление серверов», перейдите на вкладку DNS и в поисковой строке укажите нужное имя брокера и нажмите кнопку с изображением лупы. У вас будет осуществлен поиск по базе Active Directory, если такой сервер есть, то он будет отображен в списке. Переносим его в поле выбрано.

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

Точно так же поступаем и с остальными посредниками подключений к Remote Desktop Services ферме.

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

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

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

Переходим в роль «Службы удаленных рабочих столов», в итоге у вас отобразится список всех участников RDS фермы, и для ее управления вам нужно их всех добавить в данных пул серверов.

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

В итоге у меня добавились все мои хосты подключения и сервера лицензирования. Как видите стало 20 серверов.

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

Переходим в «Службы удаленных рабочих столов», в этот раз у вас уже откроется полноценное управление коллекциями RDS. Вы увидите схему работы, вам будет представлен список всех ваших серверов и кто за какую роль отвечает. Переходим в саму коллекцию.

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

Попав в коллекцию удаленных рабочих столов, у вас будет несколько областей:

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

Так же для удобства администрирования серверов, я вам советую создавать отдельные группы по нужным вам признакам и управлять ими, но об этом уже в другой раз. Либо же вы можете создать группу серверов в Remote Desktop Connection Manager.

Источник

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

Войти

Авторизуясь в LiveJournal с помощью стороннего сервиса вы принимаете условия Пользовательского соглашения LiveJournal

удаленное управление сеансом пользователя windows 2012 r2

Спешим поделиться хорошей новостью: Microsoft вернула функционал Remote Desktop Shadowing в Windows Server 2012 R2 и Windows 8.1! Напомним, что режим Shadow (теневой сеанс) – может использовать администратором для просмотра и управления активной терминальной сессией любого пользователя. Этот режим работы поддерживается практически с первых версий терминального сервера Microsoft и неожиданно был убран в релизе Windows Server 2012 (связано с переносом стека rdp из режима ядра в пользовательский режим).

Кроме того, у режима RD Shadow и rdp клиента появился ряд новых интересных возможностей. Полный список опций rdp клиента mstsc.exe, определяющих возможность удаленного подключения к сессии конечного пользователя:

Mstsc.exe [/shadow:sessionID [/v:Servername] [/control] [/noConsentPrompt]]

/shadow:ID – подключится к терминальной сессии с указанным ID

/v:servername – имя терминального сервера (если не задано, используется текущий)

/control – возможность взаимодействия с сеансом пользователя (если не указано, используется режим просмотра сессии пользователя).

/noConsentPrompt – не запрашивать у пользователя подтверждение на подключение к сессии

Ограничения теневых сеансов RDS в Windows 2012 R2

Подключиться к сессии пользователя можно с помощью утилиты mstsc.exe или непосредственно из консоли Server Manager. Для этого в консоли Server Manager откройте коллекцию QuickSessionCollection.

Щелкнув по сессии интересующего пользователя, выберите в контекстном меню Shadow.

Появится окно параметров теневого подключения. Возможен просмотр (View) и управление (Control) сессией. Кроме того можно включить опцию Prompt for user consent (запросить согласие на подключение у пользователя).

Если выбрана опция «Запросить подтверждение», в сессии у пользователя появится запрос:

Winitproadministrator is requesting to view your session remotely. Do you accept the request?

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

Если же пользователь отклонит подключение, появится окно:

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

Этой политикой можно настроить следующие варианты подключения по RD Shadow:

RDS Shadow из Powershell

Воспользоваться функционалом Remote Desktop Services Shadow можно и из Powershell.

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

На данном сервере мы обнаружили три активных терминальных сессии. Подключимся к сессии пользователя с ID сессии 3:

Источник

7 способов посмотреть, кто работает на сервере терминалов

С чего начинается администрирование пользователей на сервере терминалов?

Конечно с просмотра «Активных» или «Отключенных» сессий пользователей.

Без этой картины администрирование сервера терминалов невозможно.

Помимо статьи, записал также, и подробное видео, о том как администрировать пользователей на сервере терминалов (Новичкам смотреть обязательно!)

Конечно, данная тема также подымается и на курсе: Администратор 1С!

И так, конечно мы должны во всех подробностях видеть, что у нас происходит на сервере терминалов!

Какие процессы запущены от имени тех или иных пользователей (в т.ч. процессы 1С) их идентификаторы, id сессий пользователей, это и многое другое помогает администратору всегда быть в курсе того что происходит на сервере и соответственно всем этим управлять, и вовремя реагировать на различные ситуации.

На разных версиях Windows server администраторы по-разному решают этот вопрос.

Но все администраторы хотят одного:

1. Чтоб быстро посмотреть всех пользователей кто работает на сервере.

2. Чтоб это было как можно информативней.

Поэтому поводу решил собрать все лучшие, простые и быстрые способы которые (на мое мнение) стоит использовать.

Уверен, что многим начинающим администраторам эти способы помогут в администрировании сервера терминалов.

И так способ первый и самый простой (На Windows server 2012 R2)

1. Диспетчер задач.

«Диспетчер задач» – вкладка «Пользователи» – позволяет нам видеть пользователей, которые работают на этом сервере.

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

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

Правый клик мышкой на панели «Пользователь» и в появившимся контекстном меню

ставим птичку напротив «Сеанс» а также стоит поставить и напротив «Имя клиента».

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

Так мы будем знать, что этот пользователь работает у нас на сервере через RDP.

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

2. quser

Следующий метод это использование команды quser в CMD или PowerShell.

Quser – это аналог QUERY USER (Такое сокращение позволяет выполнять команду быстрее)

Здесь все просто запускаем CMD или PowerShell и пишем команду quser

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

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

Метод очень простой быстрый и достаточно информативный.

Если мы хотим посмотреть только какого-то конкретного пользователя, тогда можно написать например так:

Term01 – это логин пользователя.

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

Большинство системных администраторов отдают предпочтение именно этому способу.

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

И для этого достаточно ввести команду с параметром SERVER

Вместо IP можно указать (хост) имя сервера терминалов.

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

Формат командной строки:

QUSER [; пользователь ; | ; имя сеанса ; | ; ID сеанса ;] [/SERVER:; сервер ;]

Если Вы хотите больше узнать о технической стороне 1С, тогда регистрируйтесь на первый бесплатный модуль курса: Администратор 1С

Источник

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Получение информации о сеансе через 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)

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Источник

Windows admin blog

Полезные команды cmd, powershell, администрирование, фичи и решения проблем на win/winserver

Полезные команды для терминального сервера

Рассмотрим такие команды как:

query

query — Отображение информации о процессах; сеансах; пользователя, вошедших на сервер; и серверах, обслуживающих подключение к удаленному рабочему столу

process | session | termserver | user

Более подробно здесь рассмотрятся команды:

а точнее их более короткие аналоги: qwinsta и quser

qwinsta

qwinsta (эквивалент query session) — Отображение информации о сеансах служб удаленных рабочих столов.

С помощью этой команды можно узнать, активен ли сеанс пользователя и ID сеанса

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

Просто команда без каких либо ключей и параметров выводит список сеансов на текущем сервере:

Ключ /server позволит указать другой сервер:

Показать информацию о сеансе конкретного пользователя:

Также можно узнать информацию о сеансе пользователя на другом сервере:

Остальные параметры и подробная справка по команде:

quser

quser (эквивалент query user) — Отображение информации о пользователях, вошедших в систему

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

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

В остальном, все ключи у возможности, такие же как и у команды qwinsta:

Ключ /server позволит указать другой сервер:

Показать информацию о конкретном пользователе:

Показать информацию о конкретном пользователе на другом сервере:

Справка и все функции:

RDS shadow (mstsc)

RDS Shadow — теневое подключение к сеансу пользователя

Для того, чтобы узнать ID сеанса, нужно воспользоваться одной из вышеупомянутых команд: qwinsta или quser

Теневое подключение без возможности управления сеансом (только просмотр):

Теневое подключение для управления другим сеансом:

ключ /v:servername позволит подключиться к сеансам другого сервера:

msg — отправить сообщение пользователю

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

Можно отправить сообщение конкретному пользователю — по его логину, имени сеанса или ID сеанса. Например, так мы скажем пользователю с ID сеанса 12, что ему необходимо выйти из системы:

ID сеанса можно узнать с помощью уже рассмотренных команд qwinsta или quser

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

change logon

change logon — включение / отключение входа на терминальный сервер

Полностью отключить вход в терминальные сессии можно командой:

Все возможные ключи смотрим в справке:

shutdown

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

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

Так, например, команда shutdown со следующими параметрами:

перезагрузит ваш сервер (/r) спустя 180 секунд (/t 180), принудительно закроет все приложения (/f, используется при указании /t) и укажет причину перезагрузки или комментарий для пользователей (/c «комментарий для перезагрузки»).

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

Удаленно перезагрузить или выключить компьютер или группу компьютеров через GUI можно командой

Источник

Видео

Поделиться или сохранить к себе:
Технологии | AltArena.ru
Добавить комментарий

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