Способи перевірити, чи активний користувач на віддаленій машині перед RDP'ing


24

У нас є спільна машина для Windows XP, яка ділиться між кількома користувачами. Усі вони використовують загальний логін для домену, щоб перейти в нього. Тепер проблема полягає в тому, що ми іноді в кінцевому підсумку приймаємо активну сесію інших осіб, не попереджаючи жодної сторони (попередження не видається, коли ми використовуємо той самий логін).

Чи є спосіб перевірити, чи активний поточний авторизований користувач на віддаленій машині (термінал заблокований?) Чи ні?

Ми не можемо використовувати VNC або LogMeIn або інші утиліти спільного використання настільних ПК з міркувань безпеки (заблоковані ІТ).

Я добре розробляю також деяку швидку утиліту для тестування (C #, C ++, сценарії тощо).

Редагувати:

  1. Оскільки ми використовуємо той самий вхід - користувачі не виходять із системи, вони просто відключають або блокують термінал.

2
Я хотів би дізнатися, як зробити саме те саме, але в середовищі Win7.
— Дарій

@Darius, щойно знайшов рішення для цього. Не перевіряв його на W7, але сподіваюся, що це працює і для вас.
— інший користувач

@Darius & YetAgetherUser: Я відповів нижче: superuser.com/a/822743/430
— Кевін Вортінгтон

Відповіді:


31

Ми можемо використовувати qwinstaдля Q uery WIN Dows STA ції і отримати список всіх активних сеансів.

Stateстовпець показує, чи користувач активний чи ні. Для цього потрібен доступ адміністратора на цільовій машині.

Отримав це на TechTalkz: Як переглянути / відключити сеанси віддаленого робочого столу від командної лінії

введіть тут опис зображення


1
+1 Це зручно. Я намагався з’ясувати, чим я користувався в минулому, але не міг це зрозуміти. Я думаю, це могло бути psexec \\COMPUTERNAME net session. Ви також можете використовувати tsdisconдля відключення.
— парадороїд

2

Подібну до прийнятої відповіді ви також можете використовувати Query.exeтак:

quser /server:<COMPUTERNAME>

Це призведе до наступного:

введіть тут опис зображення


1
Отримати доступ заборонено в підвищеному командному рядку. Я також використовую обліковий запис адміністратора домену.
— Шив

Для мене добре працював, перевіряючи, чи мій RDP-інший завантажить когось із сервера Win 2k8 R2. Статус був "Disc" (відключено), тому я можу безпечно RDP.
— Адамбей

1

Створення BAT-файлу генерує файл на загальній довірі, говорячи про використання комп'ютера. Коли користувач входить у систему, він запускає та створює цей файл. Коли користувач виходить із системи (це може зробити сценарій GP), він видаляє файл. Перед з'єднанням перевірте загальний доступ до цього файлу


1
Вибачте, що я мав зазначити, що - оскільки ми використовуємо той самий логін - користувачі не виходять із системи, вони просто відключають або блокують термінал.
— інший користувач

1

Ви можете скористатися командою NET SEND для надсилання повідомлення на апарат, щоб побачити, чи хтось на ньому. Це може бути спрощено за допомогою програми GUI - посилання нижче - це перше безкоштовне, яке я знайшов, здійснюючи пошук в Інтернеті, тому він не має жодного конкретного схвалення.

http://www.microsoft.com/resources/documentation/windows/xp/all/proddocs/en-us/net_send.mspx

http://www.fomine.com/netsend.html


+1 - чисте надсилання - хороший варіант. Це вимагає, щоб інший користувач відповідав, щоб підтвердити, чи він користується машиною, і потрібно буде чекати 4-5 хвилин, перш ніж припускати, що його не використовують. Більше цього вимагає, щоб сервіс Messenger працював у всіх системах, що в нашому випадку не відповідає дійсності.
— інший користувач

Слід зазначити, що NET SEND була правильною відповіддю на поставлене запитання, перенаправляючись на Windows XP, але це вже не для поточних версій Windows, оскільки SEND було видалено з NET через кричущі проблеми зловживань.
— Я з Монікою

1

Інший спосіб:

wmic.exe /node:<computername or IP address> computersystem get username

(тестовано на Windows 7)


З цікавості, чому, коли я намагаюся це, я отримую повідомлення про помилку "Доступ відмовлено"?
— Дарій

Ви не можете мати права адміністратора на віддаленому комп'ютері.
— Кевін Уортінгтон

Я "чистий адміністратор, я думаю, що повинен, але ти вказав на мене в правильному напрямку ....
— Дарій

Це єдина перерахована відповідь, яка дала можливість вказати користувача, як підключитися до віддаленої машини. Інші, здається, працюють лише у тому випадку, якщо ви перебуваєте в тому самому домені та працюєте як користувач із доступом.
— LeBleu

0

Як і FYI, я знаю, що це вже понад рік, але навіть якщо хтось має права адміністратора домену, існують політики GPO, які можуть блокувати певні облікові записи адміністратора (домен, підприємство тощо) віддаленого входу в систему на машині.

Це допоможе захистити машини, які є частиною віддаленого місця, від віддаленого управління хтось вище в структурі AD.

Ви можете перевірити, чи відмовлено в цьому, переглянувши ваші звіти про групову організацію для локальної машини під

                  gpreport /h report.html

з адміністративного командного рядка.


1
6 років, але хто рахує
— mic84
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.