понедельник, 11 февраля 2013 г.

Удаленное управление с помощью PsTools

Замечательный набор утилит PsTools от Марка Руссиновича позволяет выполнять множество различных административных задач с одного рабочего места.

В состав входит:
  • PsExec — позволяет удаленно выполнять процессы;
  • PsFile — показывает удаленно открытые файлы;
  • PsGetSid — выводит идентификатор безопасности (SID) компьютера или пользователя;
  • PsInfo — выводит информацию о системе;
  • PsKill — позволяет завершать процессы по имени или идентификатору процесса;
  • PsList — выводит подробную информацию о процессах;
  • PsLoggedOn — позволяет просматривать данные о том, кто зарегистрирован в системе локально или в результате использования общих ресурсов (в комплект загрузки входит полный исходный текст программы);
  • PsLogList — позволяет выгрузить записи из журнала регистрации событий;
  • PsPasswd — позволяет менять пароли учетных записей;
  • PsService — позволяет просматривать информацию о службах и управлять ими;
  • PsShutdown — позволяет выключить и при необходимости перезагрузить компьютер;
  • PsSuspend — позволяет приостанавливать процессы;
  • PsUptime — показывает время работы системы с момента последней перезагрузки (в программу PsInfo включены функциональные возможности PsUptime).
Основное использование - связка PsExec + скрипты командной строки. Позволяет:
  1. произвести инвентаризацию сети в несколько шагов
  2. установить/обновить/удалить некоторые приложения
  3. добавить/изменить/удалить учетные данные пользователей
Первый пункт опишу на примере создания отчетов AIDA64 на каждой рабочей станции домена:

шаг 1

в сетевой папке выбирается каталог, доступный всем на чтение и запись, например, путь к нему будет \\SRV\SHARE.

шаг 2

в сетевую папку, созданную на шаге 1 закидывается скрипт do_report.cmd, запускающий AIDA64 на рабочей станции:

set AIDA_APP=\\SRV\SHARE\AIDA64BE\aida64.exe
set REPORT_DIR=\\SRV\SHARE\AIDA64BE\reports

%AIDA_APP% /R %REPORT_DIR%\$MONTH_$HOSTNAME /TEXT /SILENT



шаг 3

На третьем шаге запускаем скрипт, созданный на шаге 2, на нужных хостах. Надо помнить, что одно дело, запуск на рабочей станции, и другое - на нагруженном сервере. Поэтому формировать заранее список хостов.

PsExec.exe -c @hosts.txt -u DOMAIN\DOMAIN_ADMIN \\SRV\SHARE\do_report.cmd

Важно: для хостов "новее" XP следует добавить ключ -h.


По поводу пункта 2 - замечательное применение для обновления Adobe Flash Player (постоянные проблемы с безопасностью приводят к частому выходу обновлений, установку которых пользователи обычно откладывают).
Flash Player поставляет в двух вариантах:
  1. Flash Player для ActiveX (Internet Explorer) - install_flash_player_ax.exe
     
  2. Подключаемый модуль Flash Player (Все остальные браузеры) - install_flash_player.exe
Также понадобится утилита для удаления Adobe Flash Player: uninstall_flash_player.exe

Аналогично помещаем все эти утилиты в сетевую папку, доступную всем, и запускаем на хостах удаление:

PsExec.exe @hosts_flash.txt -d -c \\SRV\SHARE\soft\adobe\uninstall_flash_player.exe "-uninstall"

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

PsExec.exe @hosts_flash.txt -d -c \\SRV\SHARE\soft\adobe\install_flash_player_ax.exe "-install"

После можно проверить версию плеера или его наличие в системе с помощью утилиты PsInfo:

C:\toolz>PsInfo.exe -s | findstr /I adobe

PsInfo v1.77 - Local and remote system information viewer
Copyright (C) 2001-2009 Mark Russinovich
Sysinternals - www.sysinternals.com

Adobe Reader X (10.1.5) - Russian 10.1.5


Пункт 3 - использование для поиска пользователей, входящий в группу локальных администраторов:

PsExec.exe  @hosts.txt net localgroup Администраторы

А также для удаления пользователей из группы локальных администраторов:

PsExec.exe  \\TESTPC net localgroup Администраторы testuser1 /delete

или отключения учетной записи:

PsExec.exe  \\TESTPC net net user testuser2 /active:no

Комментариев нет:

Отправить комментарий