Назад | Перейти на главную страницу

Как узнать время последней загрузки удаленного сервера Windows, к которому у вас нет доступа?

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

Можно получить список разрешений на коробке, даже если вам не был предоставлен доступ к машине (пример PowerShell ниже), поэтому я надеюсь, что не совсем глупо подозревать, что может быть какой-то способ получить аналогичные данные во время работы ... особенно если после загрузки компьютер обновляет какой-то атрибут AD, например LastLogonTimestamp или аналогичный?

([adsi]'WinNT://myServerName/Administrators, group').psbase.Invoke("members") `
| %{$_.GetType.Invoke().InvokeMember("Name",'GetProperty', $null, $_, $null)}

Я также написал код (PowerShell и C #) для получения времени последней загрузки сервера, когда текущий пользователь имеет разрешения на удаленном компьютере.

$arrayOfServers | Get-CimInstance Win32_OperatingSystem | select csname, lastbootuptime

Дополнительные примеры см. В моем решении соответствующего вопроса по SO: https://stackoverflow.com/questions/22965686/how-to-get-last-boot-time-of-a-remote-system-in-c-sharp-or-vb-with-a-non-admin- u / 52478378 # 52478378

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

Разрешение пользователям доступа к определенному пространству имен WMI

Вы можете разрешить или запретить пользователям доступ к определенному пространству имен WMI, установив разрешение «Remote Enable» в элементе управления WMI для пространства имен. Если пользователь попытается подключиться к пространству имен, к которому ему не разрешен доступ, он получит ошибку 0x80041003. По умолчанию это разрешение доступно только администраторам. Администратор может включить удаленный доступ к определенным пространствам имен WMI для пользователя, не являющегося администратором.

Следующая процедура устанавливает разрешения удаленного включения для пользователя без прав администратора.

Чтобы установить разрешения удаленного включения

Подключитесь к удаленному компьютеру с помощью WMI Control.

Дополнительные сведения о элементе управления WMI см. В разделе Настройка безопасности пространства имен с помощью элемента управления WMI.

На вкладке «Безопасность» выберите пространство имен и нажмите «Безопасность».

Найдите соответствующую учетную запись и установите флажок «Включить удаленное управление» в списке разрешений.

Подробнее об этой теме Вот

После настроек можно было запустить WMI-запрос как таковой;

В командной строке;

wmic /node:"<computer>" OS get LastBootUpTime

В PowerShell;

Get-WmiObject Win32_OperatingSystem -ComputerName <computer> | fl LastBootUpTime