PsExec v 2.34

HackWare.ru

Операционная система Windows предоставляет различные способы управления удалёнными системами. Telnet, RDP, VNC — это только некоторые из них. Но эти варианты обычно связаны с графическим интерфейсом пользователя. Если мы предпочитаем интерфейс командной строки, есть альтернатива под названием PsExec.

PsExec — это портативный инструмент от Microsoft, который позволяет удалённо запускать процессы с использованием учётных данных любого пользователя. Это немного похоже на программу удалённого доступа, но вместо того, чтобы управлять удаленным компьютером с помощью мыши, команды отправляются на компьютер через командную строку.

Примечание: некоторые антивирусные сканеры сообщают, что один или несколько инструментов заражены вирусом «remote admin» («удалённый администратор»). Ни один файл из пакета PsTools не содержит вирусов, но они использовались вирусами, поэтому они вызывают уведомления о нежелательном ПО.

Вы можете использовать PsExec не только для управления процессами на удалённом компьютере, но и для перенаправления вывода консоли приложения на локальный компьютер, создавая впечатление, будто процесс выполняется локально.

Установка

Просто скопируйте PsExec на путь к исполняемому файлу. При вводе PsExec отображается его синтаксис использования.

ознакомьтесь с разделом 2004 июля Windows ит Pro Magazine для получения статьи о пометке , посвященной расширенному использованию PsExec.

Использование:

Параметр Описание
-a Отдельные процессоры, на которых приложение может работать с запятыми, где 1 — это наименьший номер ЦП. Например, чтобы запустить приложение на ЦП 2 и ЦП 4, введите: «-a 2, 4»
-c Скопируйте указанный исполняемый файл в удаленную систему для выполнения. Если этот параметр не задан, приложение должно находиться в системном пути в удаленной системе.
-d Не дожидаться завершения процесса (не интерактивного).
-e Не загружает профиль указанной учетной записи.
-f Копирование указанной программы, даже если файл уже существует в удаленной системе.
-i Запустите программу, чтобы она взаимодействовала с рабочим столом указанного сеанса в удаленной системе. Если сеанс не указан, процесс выполняется в сеансе консоли. Этот флаг необходим при попытке запуска консольных приложений в интерактивном режиме (с перенаправленным СТАНДАРТным вводом-выводом).
-h Если целевая система находится в системе Vista или более поздней версии, процесс выполняется с маркером повышенной безопасности учетной записи, если он доступен.
-l Запустите процесс от имени ограниченного пользователя (поменяет группу администраторов и разрешает только привилегии, назначенные группе Пользователи). в Windows Vista процесс выполняется с низкой целостностью.
-n Указывает время ожидания в секундах при подключении к удаленным компьютерам.
-p Указывает необязательный пароль для имени пользователя. Если этот параметр не указан, будет предложено ввести скрытый пароль.
-r Указывает имя удаленной службы для создания или взаимодействия с.
-s Запустите удаленный процесс в системной учетной записи.
-u Указывает необязательное имя пользователя для входа на удаленный компьютер.
-v Скопируйте указанный файл только в том случае, если он имеет более высокий номер версии или более новый, чем тот, который находится в удаленной системе.
-w Задайте рабочий каталог процесса (относительно удаленного компьютера).
-x Отображение пользовательского интерфейса на безопасном рабочем столе Winlogon (только в локальной системе).
— приоритет Указывает-Low,-BelowNormal,-AboveNormal,-High или-реального времени для запуска процесса с другим приоритетом. Используйте-Background для запуска с нехваткой памяти и приоритетом ввода-вывода в Vista.
компьютерами Direct PsExec для запуска приложения на удаленном компьютере или указанных компьютерах. Если опустить имя компьютера, программа PsExec запустит приложение в локальной системе и при указании подстановочного знака ( *) программа PsExec выполнит команду на всех компьютерах в текущем домене.
@file PsExec выполнит команду на каждом из компьютеров, перечисленных в файле.
cmd Имя выполняемого приложения.
даваемых Аргументы для передачи (Обратите внимание, что пути к файлам должны быть абсолютными путями в целевой системе).
-AcceptEula Этот флаг подавляет отображение диалогового окна лицензии.

Приложения, имена которых содержат пробелы, можно заключать в кавычки, например

Входные данные передаются в удаленную систему только при нажатии клавиши ВВОД. При нажатии клавиш CTRL + C удаленный процесс завершается.

Если не указать имя пользователя, процесс будет выполняться в контексте вашей учетной записи в удаленной системе, но не будет иметь доступа к сетевым ресурсам (так как это олицетворение). Укажите допустимое имя пользователя в DomainUser синтаксисе, если удаленный процесс требует доступа к сетевым ресурсам или для запуска в другой учетной записи. Обратите внимание, что пароль и команда шифруются при передаче в удаленную систему.

Коды ошибок, возвращаемые PsExec, относятся к выполняемым приложениям, а не PsExec.

Список всех параметров запуска Psexec.

@файл
Указывает программе PsExec, что нужно запустить приложение на всех компьютерах, перечисленных в заданном текстовом файле.

-a
Процессоры, на которых можно запустить приложение, отделяются запятыми, при этом процессоры нумеруются, начиная с 1. Например, чтобы запустить приложение на процессорах втором и четвертом, введите «-a 2,4»

-c
Указанная программа копируется в удаленную систему для выполнения. Если этот параметр не задан, то приложение должно находиться в системной папке удаленной системы.

-d
Указывает, что не нужно ждать завершения приложения. Этот параметр следует использовать только при запуске неинтерактивных приложений.

-e
Указанный профиль учетной записи не загружается.

-f
Указанная программа копируется в удаленную систему, даже если такой файл в удаленной системе уже есть.

-i
Запускаемая программа получает доступ к рабочему столу указанного сеанса в удаленной системе. Если сеанс не задан, то процесс выполняется в консольном сеансе.

-l
При запуске процесса пользователю предоставляются ограниченные права (права группы администраторов отменяются, и пользователю предоставляются только права, назначенные группе «пользователи»). В ОС Windows Vista процесс запускается с низким уровнем благонадежности.

-n
Позволяет задать задержку подключения к удаленным компьютерам (в секундах).

-p
Позволяет указать необязательный пароль для имени пользователя. Если этот параметр опущен, то будет выдан запрос на ввод пароля, при этом пароль не будет отображаться на экране.

-s
Удаленный процесс запускается из системной учетной записи.

-u
Позволяет указать необязательное имя пользователя для входа в удаленную систему.

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

-w
Позволяет указать для процесса рабочий каталог (путь внутри удаленной системы).

-x
Отображает интерфейс пользователя на рабочем столе Winlogon (только в локальной системе).

pwd

Команда pwd выводит абсолютный путь до вашего текущего «местоположения» на сервере — вашей рабочей директории. Если вы подключаетесь под пользователем root, то вы можете оказаться в папке /root/ , но можете оказаться и в домашней директории вашей учетной записи на сервере. Поэтому бывает очень полезно выполнить команду pwd и увидеть на экране где вы на самом деле оказались.

В этот же пункт логически отнести и команду ls , которая выводит на экран список файлов и папок вашей рабочей директории. Вызов команды ls выглядит, например, так:

Это список файлов и папок директории /bitrix/ установленного сайта. Можно также отсортировать вывод, например по дате последнего изменения:

Где -G — параметр, который красит директории другим цветом, а -t — параметр, который сортирует вывод по дате изменения (последние изменившиеся вверху)

Команда cd это аналог перехода между папками в Проводнике Windows, только в командной строке. Допустим, на сервере установлена виртуальная машина 1С-Битрикс, корень сайта в ней обычно располагается по такому пути — /home/bitrix/www/ . Как сделать папку www своей рабочей директорией, как в нее перейти? Вызвать команду cd и указать ей путь нужной папки. Вот так:

Вы окажитесь в папке www . Ок, как теперь перейти на уровень вверх, в папку bitrix ? Можно выполнить команду cd /home/bitrix , а можно еще проще, просто указать две точки после самой команды — вот так:

Эта команда поднимет вас на уровень вверх по дереву каталогов.

Еще пример — вы находитесь в папке /home/bitrix/www , как перейти на два уровня вверх? Вызвать команду cd и два раза написать в ней две точки, вот так:

Две точки «..» можно повторять столько раз, на сколько уровней вы хотите подняться вверх. На данном примере это может показаться глупо, ведь можно просто вызвать cd /home , но, поверьте, когда вы глубоко в папках — намного проще пользоваться двойными точками для поднятия на несколько уровней вверх, чем писать полный путь от корня сервера.

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

Команда сама поймет, что bit* это папка bitrix и подставит туда полное название, а нам меньше писать. Очень удобно, когда работа идет с длинным названиями папок. Если же на одном уровне будет лежать несколько папок, которые подходят под указанную нами маску, то будет подставлена та, что идет первее по алфавиту, две одинаковые папки рядом быть не может.

Через реестр

Модификация реестра на пользовательских машинах ― странный вариант, лишь на случай крайней необходимости. Можно использовать ветки Run или RunOnce. Подробнее о них ― в документации. Сама модификация реестра может проводиться через групповые политики или из командной строки ― например, такой командой:

В зависимости от ветки реестра, процесс будет выполняться или под пользователем, выполнившим вход в систему, или под аккаунтом SYSTEM.

Есть и другие способы, такие как правка ярлыков в папке «Автозагрузка» или добавление в ярлык к популярной программе && script.cmd, но эти методы уже из серии «можно, но не нужно».

Теперь перейдем к новым инструментам.

nbtstat — статистика протокола и текущих подключений TCP/IP с помощью NBT

NBT (Network BIOS через TCT/IP) или протокол NETBIOS — один из старейших протоколов, разработанный в далёком1983 году по заказу компании IBM. NETBIOS предназначен для передачи данных в пределах одного логического сегмента сети.

nbtstat -n — выводит список зарегистрированных NetBIOS-имен на компьютере. Список отображается для всех активных сетевых соединений.

nbtstat -RR — выполнит очистку и перерегистрацию NetBIOS-имен на локальном компьютере.

nbtstat

Remote Shell

Remote Shell — инструмент удаленного управления, запускаемый из командной строки, очень похожий на Remote Command и telnet. Remote Shell состоит из двух компонентов: серверного (rshsvc.exe) и клиентского (rsh.exe). Оба компонента входят в состав Microsoft Windows 2000 Server Resource Kit и набор ресурсов NT Server 4.0.

Remote Shell — кросс-платформенный инструмент. Многие серверы Unix совместимы с Remote Shell, а большинство операционных систем с поддержкой TCP/IP располагает клиентом Remote Shell. Благодаря такой поддержке Remote Shell может быть альтернативой для Remote Command в гетерогенных средах. Однако Remote Shell защищена хуже, чем Remote Command и telnet.

В папке %systemroot%system32driversetc необходимо создать файл с именем RHOSTS для хранения списка компьютеров, на которых может работать rsh.exe, и имен пользователей, имеющих право запускать rsh.exe на конкретной машине. При попытке пользователя установить связь Rshsvc.exe выполняет поиск в этом файле в обратном порядке. Программа разрешит соединение только после того, как обнаружит имя компьютера и пользователя. Для обращения к Remote Shell пароля не требуется.

Из-за слабых встроенных функций защиты Remote Shell многие администраторы предпочитают более надежные варианты инструмента производства независимых компаний. В частности, широко распространен пакет Secure Shell компании SSH Communications.

Команды для Windows Server

Все указанные команды предназначены для самых разных задач. Я постараюсь рассортировать их по функционалу. В общей сложности вышло 65 команд, без учета дополнительных параметров и атрибутов в некоторых из них.

Настройка подключений

arp – данная команда предназначена для просмотра и изменения записей в кэше ARP. Это протокол, представляющий собой таблицу соответствия IP-адресов с MAC-адресами сетевых устройств.

dnscmd – диагностирует, исправляет ошибки в конфигурациях и еще выполняет множество других действий при администрировании сервера DNS.

ftp – передает туда и обратно файлы на компьютер, в котором запущена служба протокола FTP. У команды есть несколько параметров. Вот некоторые из них, которые будут наиболее полезны:

bye

Завершает сеанс FTP на удаленном компьютере; есть аналогичная этой команда – FTP Quit

delete

Стирает указанные файлы на удаленном компьютере

mget

Копирует файлы с удаленного на локальный компьютер, используя текущий тип перемещения файлов

mkdir

Создает новую папку на удаленном компьютере

open

Подключается к указанному FTP-серверу

rmdir

Стирает выбранный каталог на удаленном ПК

status

Показывает текущее состояние FTP-подключений

ftp trace

Переключает трассировку пакетов, отображает внутренние вызовы функций FTP при запуске команды

type

Задает или отображает тип перемещения файла

user

Указывает пользователя для удаленного компьютера

mdelete

Стирает файлы на удаленном компьютере

getmac – данный запрос определяет mac-адрес компьютера, а еще он используется для отображения mac-адресов сетевых адаптеров.

hostname – показывает наименование узла в полном имени компьютера.

ipconfig – этот параметр отображает актуальные на момент проверки параметры протокола TCP/IP. Он также применяется для обновления некоторых характеристик, задаваемых при автоматической конфигурации сетевых интерфейсов, задействующих протокол DHCP. К данной команде можно добавлять следующие атрибуты:

/all

Выдает все доступные конфигурации IP

/displaydns

Отображает кэш DNS

/flushdns

Сбрасывает кэш DNS

/registerdns

Обновляет и повторно регистрирует параметры DNS

/release

/renew

Обновляет сведения для сетевых адаптеров

/setclassid

Меняет DHCP Class ID

/showclassid

Отображает DHCP Class ID

msg – запускает отправку сообщения указанному удаленному пользователю.

mstsc – запускает подключение к удаленному рабочему столу.

net view – показывает имя компьютера в текущем домене.

netsh – сетевое служебное приложение, позволяет локально или удаленно отображать или изменять конфигурацию сети компьютера. Программу можно запустить как в командной строке, так и в Windows PowerShell.

shadow – удаленное управление активным сеансом другого пользователя.

netstat – показывает состояние TCP-подключений и портов, на которых компьютер прослушивается, статистику Ethernet, таблицу маршрутизации IP-адресов, а без использования параметров команда отображает лишь активные TCP-подключения.

nbtstat – отображает статистику протокола и активных подключений TCP/IP посредством NetBT, причем как для локального, так и для удаленных компьютеров. При использовании без параметров эта команда выдает только справочные данные.

nslookup – выдает сведения, используемые для диагностики DNS. Чаще всего используется для определения IP-адреса по доменному имени.

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

pathping – точно так же, как и tracert, выполняет трассировку, дополнительно предоставляя сведения о задержке сети и сетевой утрате в промежуточных узлах.

ping – проверяет подключение и доступность указанного компьютера на уровне TCP/IP. В результате показывается сообщения с информацией о получении соответствующих ответов, а также время кругового пути. Это основная команда для проверки и устранения неполадок подключения, доступности и разрешения имен.

qappsrv – показывает полный список доступных удаленных рабочих столов в текущем сеансе.

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

  • имя пользователя;
  • наименование сеанса на узле;
  • идентификатор сеанса;
  • состояние – активно или отключено;
  • время простоя – означает промежуток времени с момента последнего нажатия клавиши или перемещения мыши в сеансе;
  • дата и время входа пользователя.

rpcinfo – выводится список программ, установленных на удаленных компьютерах.

rasphone – инструмент для управления сетевыми подключениями, в основном используется на модемных линиях или в PPPOE, PPPTP.

route – можно просмотреть и изменить записи в локальной таблице маршрутизации IP. Если использовать без параметров, команда даст справку.

telnet – осуществление подключения по протоколу telnet. Позволяет проверять доступность портов. По умолчанию он не установлен, поэтому такая команда не всегда может сработать.

Работа в системе

at – запрос отвечает за планирование выполнения команд или запуска приложений в заданное время. Используется только совместно со службой расписания и с правами администратора.

compmgmt.msc – эта команда откроет инструмент «Управление компьютером», в котором можно просмотреть запланированные задачи, события, общие папки и пользователей. Также там есть инструмент для управления дисками, еще отображается раздел со списком служб и приложений.

control – запускает «Панель управления». Есть множество ее подвидов, позволяющих запустить окна для управления отдельными элементами. Среди них актуальными будут следующие:

  • control admintools – переход в раздел «Администрирование» в панели управления.
  • control color – открытие раздела Персонализация» из параметров системы, где можно настроить экран, темы, цвета и так далее.
  • control folders – параметры «Проводника».
  • control Userpasswords – свойства локальной учетной записи.

devmgmt.msc – команда запускает «Диспетчер устройств», утилиту для управления основными аппаратными и программными компонентами.

explorer – позволяет открыть «Проводник Windows».

logman – создает сеансы трассировки событий, управляет ими и журналами производительности, а также поддерживает многие функции мониторинга системы из командной строки.

mmc – открывает определенную консоль MMC, можно в режиме автора и с указанием версии – 32 или 64-разрядной.

mode – показывает состояние системы, изменяет параметры, перестраивает порты или устройства. При задаче команды без параметров отображаются все управляемые атрибуты консоли и доступные устройства com.

msconfig – открывает инструмент для тонкой настройки системы, управления загрузкой и автозагрузкой, а также активными службами и сервисами.

msinfo32 – запускает утилиту «Сведения о системе», где отображен полный список установленного оборудования, а также системных и программных компонентов на локальном компьютере.

PowerShell – запуск нового сеанса для утилиты Windows PowerShell через окно командной строки.

PowerShell_ise – запускает сеанс в интегрированной среде сценариев Windows PowerShell (ISE). В таком режиме можно применять необязательные настройки для открытия некоторых файлов, проводить запуск без определенного профиля и так далее.

regedit – открывается редактора реестра.

secedit – анализируется и настраивается безопасность системы, текущая конфигурация сравнивается с актуальными шаблонами безопасности.

services.msc – открывается консоль для работы со службами и сервисами.

shutdown – выключение/перезагрузка локальных или удаленных компьютеров. Для той или иной процедуры стоит использовать соответствующий параметр.

  • shutdown /r – перезагрузка компьютера после завершения работы.
  • shutdown /s – полное завершение работы компьютера.

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

wuauclt – открывает раздел параметров «Обновления Windows».

Работа с локальными и виртуальными жесткими дисками

attach vdisk – подключает виртуальный жесткий диск с дальнейшим его отображением в меню главного компьютера в качестве локального. Для отключения его отображения должна быть использована команда detach vdisk.

chkdsk – этот запрос запускает утилиту для проверки дисков и метаданных на наличие логических и физических ошибок. При использовании без параметров лишь отображает состояние и не исправляет ошибки. Для устранения ошибок следует дополнительно вводить параметр /f. Параметр /r запустит поиск поврежденных секторов.

cleanmgr – запускает инструмент «Очистка диска», отвечающий за удаление ненужных файлов с жесткого диска компьютера. Введя отдельные параметры, можно настроить утилиту на стирание временных файлов, кэша интернета, а также провести перезапуск файлов bin.

convert – преобразует диск из одного формата в другой.

defrag – выполняет дефрагментацию файловой системы. Определяет также степень фрагментации диска, объединяет файлы для повышения производительности ОС.

dfrg.msc – с помощью этого запроса включается дефрагментатор дисков.

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

expand vdisk – расширяет созданный виртуальный жесткий диск до определенного размера, указанного в параметрах. Предварительно для выполнения данной команды рекомендуется отключить VHD.

ntbackup – запускает из командной строки резервное копирование и восстановление компьютера и файлов.

recover – проводится восстановление данных, доступных для чтения, с поврежденного или дефектного диска. Эта команда считывает файл и сектор, а затем восстанавливает данные.

sfc /scannow – выполняется проверка целостности всех защищенных системных файлов и по возможности восстановление файлов с проблемами.

Работа с файлами и папками

copy – копирует нужный файл из исходного расположение в другое.

del – удаляет один или несколько файлов. Есть аналогичная – erase. Используя определенные параметры, можно активировать запрос для подтверждения удаления, также запустить принудительное стирание файлов, доступных только для чтения.

expand – разархивирует один или несколько сжатых файлов.

fsmgmt.msc – включается консоль с общими папками в системе.

manage-bde – активирует и дезактивирует BitLocker, задает способы разблокировки, обновляет методы восстановления и разблокирует защищенные диски.

md – создает новый каталог или подкаталог. Похожая команда – это mkdir.

mqbkup – запускает инструмент для архивирования и резервного копирования сообщений MSMQ, параметров реестра на запоминающее устройство, также проводит восстановление ранее сохраненных сообщений и параметров.

Интерфейс командной строки

cls – проводит очистку командной строки.

color – меняет цвет и фон утилиты.

exit – закрывает командную строку.

help – отображает полный список команд, доступных для задействования в данном инструменте.

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

Adblock
detector