Как управлять процессами на удаленном компьютере

Запустить процесс на удаленном компьютере powershell

Есть Windows сервер, на сервере крутится различный набор софта, запущенный софт отображается в процессах, предположим, что необходимо:

  • Отобразить уникальные имена процессов
  • Исключить из вывода «лишний» или стандартный софт, отобразив интересные т.е. нужные процессы
  • Если появился новый неизвестный процесс, произвести действие, например отобразить что это за процесс или выслать ахтунг
  • Если был кем-то или чем-то убит нужный процесс, произвести действие.
  • Windows периодически создает / убивает некоторые системные процессы
  • Работают шедулеры
  • Админы что то запускают, например Server Manager или cmd и т.п. и т.д.
  • etc.

Как управлять процессами на удаленном компьютере?

Иногда возникает вопрос как посмотреть какие процессы запущены на удаленном компьютере пользователя (и завершить процесс на удаленном компьютере) но при этом не ставить ни какое доп ПО и вообще что бы это было быстро и желательно из консоли ) На этот случай «мелкософт» позаботился о сисадминах и дал там волшебную команду tasklist (о всех ее функция можете посмотреть в командной строке tasklist /?)
Но перейдем к делу, а точнее к пошаговой инструкции по пользованию этой удобной утилиты!

  1. Для начала откроем командную строку Пуск-cmd
  2. Вводим команду tasklist /s winxp-test
    tasklist — команда по выводу удаленных процессов
    /s — ключ который говорит что будет подключать удаленный компьютер
    winxp-test — имя компьютера на котором нужно вывести процессы
  3. теперь зная имя процесса и его PID мы его принудительно завершим, для примера я взял процесс uTorrent с номер процесса 2720
  4. Далее запускаем другую команду taskkill /s winxp-test /pid 2720
  5. Все, радуемся жизни не поднимаю пятую точку со стула )

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

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

Windows Management Instrumentation (WMI)

Следующий способ реализации этой популярной задачи, о котором я хочу поведать – использование Windows Management Instrumentation. WMI присутствует во всех операционных системах Microsoft, начиная с Windows 2000, и даже на Windows 9x его можно установить из отдельного пакета. WMI включён по умолчанию, и не требует дополнительной настройки. Для его использования достаточно административных прав, и разрешенного на брандмауэре протокола DCOM. WMI предоставляет огромные возможности для управления системами, но нас сейчас интересует лишь одна из них.

Для запуска процессов нам потребуется метод Create класса Win32_Process. Использовать его достаточно несложно. В PowerShell это делается следующим образом:

$Computer = «main»
$Command = «cmd.exe /c systeminfo.exe > \servershare%computername%.txt»
([wmiclass]»\$Computerrootcimv2:Win32_Process»).create ($Command)

Здесь в качестве запускаемого процесса я указал cmd.exe, а уже ему, в качестве аргументов передал нужную команду. Это необходимо в случае если вам нужно использовать переменные окружения удалённого компьютера или встроенные операторы cmd.exe, такие как «>» для перенаправления вывода в файл. Метод Create не дожидается завершения процесса, и не возвращает результатов, но зато сообщает нам его идентификатор – ProcessID.

Если вы используете компьютер, на котором пока не установлен PowerShell, вы можете вызвать этот метод WMI и из сценария на VBScript. Например вот так:

Листинг №1 – Запуск процесса используя WMI (VBScript)

Computer = «PC3»
Command = «cmd.exe /c systeminfo.exe > \servershare%computername%.txt»
Set objWMIService = GetObject («winmgmts:\» & Computer & «rootcimv2:Win32_Process»)
Result = objWMIService.Create («calc.exe», Null, Null, intProcessID)

Но гораздо проще воспользоваться утилитой командной строки wmic.exe которая предоставляет достаточно удобный интерфейс для работы с WMI и входит в состав операционных систем, начиная с Windows XP. В ней чтобы запустить, например калькулятор на компьютере main достаточно выполнить следующую команду:

wmic /node:main process call create calc.exe

Разумеется, возможности WMI не ограничиваются только запуском процессов. Если вам интересно дальнейшее изучение этой технологии, я рекомендую ознакомиться со статьями Константина Леонтьева, посвященными WMI, ссылки на которые вы можете найти в конце статьи.


Запуск PowerShell через командную строку

Да, для любителей нестандартных путей, тоже способ есть)) Много способов запуска командной строки описаны здесь. Здесь же я опишу способ, который подходит для современных операционных систем. Нажимаем правой клавишей мыши по углу пуск или жмем Win+X, а в открывшемся меню выбираем подходящую командную строку. Если вам необходим PowerShell с правами администратора, то выбираем и командную строку с правами администратора.

005

В открывшееся окно вводим powershell и жмём Enter. После этого командная строка будет работать полностью как Windows PowerShell.

В открывшееся окно вводим powershell и жмём Enter. После этого командная строка будет работать полностью как Windows PowerShell.

3. Запуск Windows PowerShell через окно проводника Windows.

Открываем проводник и переходим в одну из папок:

a) 64bit PowerShell если стоит 64 битная система или 32bit PowerShell, если стоит 32 битная система
C:WindowsSystem32WindowsPowerShellv1.0

b) 32bit PowerShell на 64 битных системах находится в папке:
C:Windowssyswow64Windowspowershellv1.0

Можно просто вставить ссылку в адресную строку.

007

Если вам нужен PowerShell с обычными правами, просто запускаем выделенный файл. Если же с правами администратора, жмём правой клавишей мыши и выбираем «Запуск от имени администратора».

Как избежать повторного заражения вирусом Powershell.exe?

Вы можете попробовать несколько методов, чтобы снизить вероятность повторного заражения вирусом Powershell.exe и даже любым другим вирусом. Я перечислил их ниже:

Обновите свою защиту от вредоносных программ и антивирусное ПО.

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

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

Очень важно знать источник загружаемого программного обеспечения, потому что некоторые сайты с сомнительной репутацией могут содержать вирусы, такие как вирус Powershell.exe.

Посещайте известные сайты.

Когда вы посещаете подозрительные веб-сайты, ваш компьютер также может быть заражен вирусами. И вы никогда не должны переходить по неправильной ссылке.

Никогда не нажимайте на рекламные баннеры.

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

Оцените статью
Fobosworld.ru
Добавить комментарий

Adblock
detector