Microsoft windows terminalservices rdpclient operational

Windows RDP-Related Event Logs: The Client Side of the Story

This article is going to cover the other side of Windows RDP-Related Event Logs: Identification, Tracking, and Investigation and RDP Event Log Forensics. Both of these document the events that occur when viewing logs from the server side. This documents the events that occur on the client end of the connection. I’ve followed the same actions as followed in the material above (logon, logoff, etc.), though my layout will be a bit different.

I’ve chosen to include all related events, even those that may not have the most useful information in their description. I did this to allow people to look for the full chain of events as an IOC. You may notice that some events will repeat a number of times. The event chains in here should be in chronological order with newest at the bottom (top down)

The lab contained two Windows 10 VMs with default logging (fresh, nearly unaltered images). I would highly suggest testing and verifying the results in your own environment, as logging may be different, various versions of Windows may present different logs, domain joined machines may show additional information, or I may have just screwed something up.

You can read about my methodology here: GHOST_URL/finding-event-logs-caused-by-an-action/

If you don’t like my formatting, just want to verify anything, or want some extra data, you can download the original data here: https://drive.google.com/open?id=1UV0HBw76zfwGoqW8YlqUSEWsf4dafPq_. I’ve included in this data the output of sysmon events as well, which isn’t covered here.

Lastly, I appologize, but I don’t go into nearly as much detail as the Ponder The Bit’s article above in explaining what these events mean (e.g. his notes on Event ID: 1149). For my use case, I care more about finding the pattern of events that give me an overall picture of what the user did, rather than exactly what each event log means. I think the differences in my layout reflect this, and I hope people still find this useful.

Edit: For more on the hash in Event ID 1029 hashes, go here: GHOST_URL/windows-event-id-1029-hashes/

Glossary:

  • Desktop: DESKTOP-35JV6J4 (where I’m connecting from)
  • Desktop IP: 192.168.59.129
  • Desktop User: User
  • Server: Server-01 (where I’m connecting to)
  • Server IP: 192.168.1.179
  • Server User: ServerUser01

Table Of Contents:

Repeated for Terse and Verbose, ctrl+f to get to your favorite section

  1. RDP Successful Logon [Logon]
  2. RDP Unsuccessful Logon (bad password) [FailLogon]
  3. RDP Session Disconnect (close window) [Close]
  4. RDP Session Disconnect (start -> disconnect) [Disconnect]
  5. RDP Session Reconnect [Reconnect]
  6. RDP Session Logoff [Logoff]

Microsoft windows terminalservices rdpclient operational

This forum has migrated to Microsoft Q&A. Visit Microsoft Q&A to post new questions.

Asked by:

General discussion

I am experiencing an issue connection to an RDS farm from another machine. The client tries to connect then gets the generic error ‘Remote Desktop can’t connect to the remote computer for one of these reasons:’ etc.

Читайте также:  Как создать свой ftp сервер linux

In the Microsoft-Windows-TerminalServices-RDPClient/Operational log I get the following message when the client does not connect:

Log Name: Microsoft-Windows-TerminalServices-RDPClient/Operational
Source: Microsoft-Windows-TerminalServices-ClientActiveXCore
Date: 6/9/2014 2:45:00 AM
Event ID: 226
Task Category: RDP State Transition
Level: Warning
Keywords:
User: WBC\cwestwateradmin
Computer: WBC-ITTS-01.wbc.local
Description:
RDPClient_TCP: An error was encountered when transitioning from TcpStateConnectingTransport to TcpStateDisconnected in response to 2 (error code 0x80004004).
Event Xml:

226
0
3
104
19
0x4000000000000000

12199

Microsoft-Windows-TerminalServices-RDPClient/Operational
WBC-ITTS-01.wbc.local

RDPClient_TCP
1
TcpStateConnectingTransport
11
TcpStateDisconnected
2
TcpEventConnectionTimeout
2147500036

It’s an intermittent issue but I would say 80% of the time the connection fails.

Просмотр и анализ логов RDP подключений в Windows

В этой статье мы рассмотрим, особенности аудита / анализа логов RDP подключений в Windows. Как правило, описанные методы могут пригодиться при расследовании различных инцидентов на терминальных / RDS серверах Windows, когда от системного администратора требуется предоставить информацию: какие пользователи входили на RDS сервер, когда авторизовался и завершил сеанс конкретный пользователь, откуда / с какого устройства (имя или IP адрес) подключался RDP-пользователь. Я думаю, эта информация будет полезна как для администраторов корпоративных RDS ферм, так и владельцам RDP серверов в интернете (Windows VPS как оказалось довольно популярны).

Как и другие события, логи RDP подключения в Windows хранятся в журналах событий. Откройте консоль журнала событий (Event Viewer). Есть несколько различных журналов, в которых можно найти информацию, касающуюся RDP подключения.

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

  1. Network Connection
  2. Authentication
  3. Logon
  4. Session Disconnect/Reconnect
  5. Logoff

Network Connection: – установление сетевого подключение к серверу от RDP клиента пользователя. Событие с EventID – 1149 (Remote Desktop Services: User authentication succeeded). Наличие этого события не свидетельствует об успешной аутентификации пользователя. Этот журнал находится в разделе Applications and Services Logs -> Microsoft -> Windows -> Terminal-Services-RemoteConnectionManager -> Operational. Включите фильтр по данному событию (ПКМ по журналу-> Filter Current Log -> EventId 1149).

В результате у вас получится список с историей всех сетевых RDP подключений к данному серверу. Как вы видите, в логах указывается имя пользователя, домен (используется NLA аутентификация, при отключенном NLA текст события выглядит иначе) и IP адрес компьютера, с которого осуществляется RDP подключение.

Authentication: – успешная или неуспешная аутентификация пользователя на сервере. Журнал Windows -> Security. Соответственно нас могут интересовать события с EventID – 4624 (успешная аутентификация — An account was successfully logged on) или 4625 (ошибка аутентификации — An account failed to log on). Обратите внимание на значение LogonType в событии. При входе через терминальную службу RDP — LogonType = 10 или 3. Если LogonType = 7, значит выполнено переподключение к уже имеющейся RDP сессии.

При этом имя пользователя содержится в описании события в поле Account Name, имя компьютера в Workstation Name, а имя пользователя в Source Network Address.

Читайте также:  Установщик windows 10 домашняя

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

Get-EventLog security -after (Get-date -hour 0 -minute 0 -second 0) | ? <$_.eventid -eq 4624 -and $_.Message -match 'logon type:\s+(10)\s'>| Out-GridView

Logon: – RDP вход в систему, событие появляющееся после успешной аутентификации пользователя. Событие с EventID – 21 (Remote Desktop Services: Session logon succeeded). Этот журнал находится в разделе Applications and Services Logs -> Microsoft -> Windows -> TerminalServices-LocalSessionManager -> Operational. Как вы видите здесь можно узнать идентификатор RDP сессии для пользователя — Session ID.

Событие с EventID – 21 (Remote Desktop Services: Shell start notification received) означает успешный запуск оболочки Explorer (появление окна рабочего стола в RDP сессии).

Session Disconnect/Reconnect – события отключения / переподключения к сессии имеют разные коды в зависимости от того, что вызвало отключение пользователя (отключение по неактивности, выбор пункта Disconnect в сессии, завершение RDP сессии другим пользователем или администратором и т.д.). Эти события находятся в разделе журналов Applications and Services Logs -> Microsoft -> Windows -> TerminalServices-LocalSessionManager -> Operational. Рассмотрим RDP события, которые могут быть интересными:

Событие с EventID – 4778 в журнале Windows -> Security (A session was reconnected to a Window Station). Пользователь переподключился к RDP сессии (пользователю выдается новый LogonID).

Событие с EventID 4799 в журнале Windows -> Security (A session was disconnected from a Window Station). Отключение от RDP сеанса.

Logoff: – выход пользователя из системы. При этом в журнале Applications and Services Logs -> Microsoft -> Windows -> TerminalServices-LocalSessionManager -> Operational фиксируется событие с EventID 23 (Remote Desktop Services: Session logoff succeeded).

При этом в журнале Security нужно смотреть событие EventID 4634 (An account was logged off).

Событие Event 9009 (The Desktop Window Manager has exited with code ( ) в журнале System говорит о том, что пользователь инициировал завершение RDP сессии, и окно и графический shell пользователя был завершен.

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

Иногда бывает удобно с логами в таблице Excel, в этом случае вы можете выгрузить любой журнал Windows в текстовый файл и импортировать в Excel. Экспорт журнала можно выполнить из консоли Event Viewer (конечно, при условии что логи не очищены) или через командную строку:

WEVTUtil query-events Security > c:\ps\security_log.txt

get-winevent -logname «Microsoft-Windows-TerminalServices-LocalSessionManager/Operational» | Export-Csv c:\ps\rdp-log.txt -Encoding UTF8

Список текущих RDP сессий на сервере можно вывести командой:

Команда возвращает как идентификатор сессии (ID), имя пользователя (USERNAME)и состояние (Active/Disconnect). Эту команду удобна использовать, когда нужно определить ID RDP сессии пользователя при теневом подключении.

Список запущенных процессов в конкретной RDP сессии (указывается ID сессии):

На RDP-клиенте логи не такие информационные, основное чем часто пользуются информация об истории RDP подключений в реестре.

Microsoft windows terminalservices rdpclient operational

Общие обсуждения

I am experiencing an issue connection to an RDS farm from another machine. The client tries to connect then gets the generic error ‘Remote Desktop can’t connect to the remote computer for one of these reasons:’ etc.

Читайте также:  Virtual floppy drive windows x64

In the Microsoft-Windows-TerminalServices-RDPClient/Operational log I get the following message when the client does not connect:

Log Name: Microsoft-Windows-TerminalServices-RDPClient/Operational
Source: Microsoft-Windows-TerminalServices-ClientActiveXCore
Date: 6/9/2014 2:45:00 AM
Event ID: 226
Task Category: RDP State Transition
Level: Warning
Keywords:
User: WBC\cwestwateradmin
Computer: WBC-ITTS-01.wbc.local
Description:
RDPClient_TCP: An error was encountered when transitioning from TcpStateConnectingTransport to TcpStateDisconnected in response to 2 (error code 0x80004004).
Event Xml:

226
0
3
104
19
0x4000000000000000

12199

Microsoft-Windows-TerminalServices-RDPClient/Operational
WBC-ITTS-01.wbc.local

RDPClient_TCP
1
TcpStateConnectingTransport
11
TcpStateDisconnected
2
TcpEventConnectionTimeout
2147500036

It’s an intermittent issue but I would say 80% of the time the connection fails.

Microsoft windows terminalservices rdpclient operational

Общие обсуждения

перепробовал всё даже переустанавливал систему результат не меняется.

пытаюсь подключится к с помощью RDP . клиента если не сразу выкинет, то через

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

приведу пару ошибок которые для меня не ясны

  • Изменен тип Igor Leyko Moderator 31 октября 2010 г. 12:35 давность

Все ответы

такая же проблема, но при подключении на Windows 2008 R2 SP1

на самом терминале размер элементов выставлен в 100%

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

Дата и время: 17.03.2011 13:32:21
Имя журнала: Microsoft-Windows-TerminalServices-LocalSessionManager/Operational
Источник: Microsoft-Windows-TerminalServices-LocalSessionManager
Номер события: 20
Уровень: 1
Регистрация компьютера: trm-srv.company.com
Пользователь: NT AUTHORITY\система
Описание:
Попытка отправить сообщение connect видеоподсистеме Windows не удалась. Соответствующий код ошибки: 0xffffffffd0000001.

присоединюсь!-такая же проблема в МОМе. может модераторы из ветки МОМа привлекут людей?!

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

ЗЫ: удаленный компьютер под ОС Windows 2008 R2 SP1 Web Edition, подключаюсь к нему с Windows 7.

Update: вот все что смог нарыть в журнале событий по фильтру событий: критическое, предупреждение, ошибка.

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

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