В днешния урок в нашата серия Geek School, който обхваща SysInternals, ще ви покажем как да използвате комплекта от помощни програми за PsTools, за да изпълнявате всякакви административни задачи както на местно ниво, така и на отдалечени компютри.
УЧИЛИЩНА НАВИГАЦИЯАко някога сте искали да се свържете с друг компютър и да изпълните команда, бързо да получите информация за процесите, които се изпълняват и евентуално да ги убиете или дори да спрете услугата на друг компютър, можете да използвате инструментите на PsTools, за да направите всичко това и дори Повече ▼.
Очевидно можете да използвате отдалечен работен плот или подобна услуга, за да се свържете с всеки компютър с Windows и всъщност да видите работния плот и да направите всичко, което бихте направили локално, но помощните инструменти на PsTools ви позволяват да изпълнявате много задачи от командния ред - или още по-добре от скрипт, който можете да използвате по-късно.
Това са типовете комунални услуги, които работят най-добре в корпоративна среда, и овладяването на тези инструменти определено ще ви направи много по-добри в работата си за управление на системата, ще ви спести време и ще ви позволи да правите нещата по много по-умен начин. Да правите нещата по-умни и по-бързи е критично умение, за да бъдете страхотно sysadmin.
Има дванадесет инструмента в комплекта PsTools и докато някои от тях са изключително полезни, други са заменени с инструменти, вградени в по-новите версии на Windows, и има няколко други, които не са полезни за повечето хора. Ще преминем през всички тях, за да разберете как работят и защо може да искате да използвате всеки от тях.
Струва си да се отбележи, че можете да използвате инструмент като PsExec, за да изпълнявате всички видове помощни програми на командния ред на отдалечени компютри ... включително много полезни такива като инструмента за командния ред Autoruns и много други. Възможностите са безкрайни, след като сте прегърнали силата на PsTools.
Всички тези инструменти могат да се използват на локални компютри, но те са предимно полезни за свързване към отдалечени компютри и извършване на команди върху тях.
Всички помощни програми могат да се изпълняват на локален или отдалечен компютър, така че всички те имат същия първи аргумент за името на компютъра, ако е необходимо. Имайте предвид, че можете да използвате IP адреса, ако искате вместо това. Ако пропуснете този аргумент, командата ще работи на локалния ви компютър.
име на компютъра
Можете също така да изброите няколко компютъра като psinfo \ computer1, computer2, computer3 или можете да поставите всички имена във файл и справка, като psinfo @ computerlist.txt. Последният синтаксис е psinfo \ *, който работи на всички компютри в домейна, което вероятно не е нещо, което ще използвате всеки ден.
Ако трябва да се свържете с алтернативни идентификационни данни, защото профилът на локалния ви компютър има различно потребителско име и парола от другия компютър, можете да използвате опциите -u и -p, въпреки че бихме могли да забележим, че може да не искате да използвате -p на командния ред с парола в командата от съображения за сигурност.Актуализация: считано от най-новото издание на PsExec, инструментът вече не дава пароли като ясен текст, така че единствената тревога е, ако някой може да прочете файловете на скрипта и да види паролата там.
psinfo \ име на компютъра -u "потребител" -p "Парола"
Частта "потребител" на командата ще се промени на "DOMAIN \ user", ако се намирате в домейна и трябва да промените от текущия потребител.
Забележка:обикновено ще трябва да се свържете с отдалечени компютри с администраторски акаунт.
Ако сте в домейна, която повечето хора трябва да използват PsTools, можете да пренебрегнете изцяло този раздел, тъй като всичко трябва да работи добре. За всеки, който изпълнява Windows 7, 8 или Vista в домашна среда или използва няколко компютъра в офис без домейн, ще трябва да променяте контрола на потребителските акаунти на отдалечения компютър, за да позволите на PsTools да работят правилно.
Проблемът е добре описан от Microsoft:
Когато потребител, който е член на групата на местните администратори на отдалечения компютър, създава отдалечена административна връзка, използвайки например командата net \ remotecomputer \ Share $, например, няма да се свърже като пълен администратор. Потребителят няма потенциален елеватор на отдалечения компютър и потребителят не може да изпълнява административни задачи.
За да го обясните по различен начин, когато се опитате да се свържете с друг компютър и да изпълните нещо, което изисква администраторски достъп, няма начин да задействате подкана на UAC и да го приемете от компютъра си, така че няма да се свърже като администратор.
И това не е лошо нещо. Не трябва да променяте тази настройка, без да сте напълно наясно, че ще позволите разпространението на злонамерен софтуер да се разпространява от един компютър в друг - ако предположим, че злонамереният софтуер има вашето местно потребителско име и парола и паролата е същата като другата. злонамереният софтуер е толкова труден, колкото повечето не е такъв. Но това все още не е нещо, което трябва да бъде взето леко.
И отново, ако сте в домейна, този проблем не съществува и не е необходимо да се променя. И ако просто тествате с куп виртуални машини, нямате много да се притеснявате.
За да ощипвате UAC, за да позволите на PsTools да стартирате, ще искате да отворите редактора на системния регистър и да преминете към следния ключ:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \
Windows \ CurrentVersion \ Policies \ System
Щом сте там, създайте нова 32-битова DWORD от дясната страна, дайте името LocalAccountTokenFilterPolicy и стойността 1. Нямате право да рестартирате компютъра, за да влезе в сила настройката.
Забележка:само за да се изясни, тази настройка трябва да се случи на отдалечения компютър, към който се свързвате.
PsExec е може би най-мощният инструмент в комплекта, тъй като можете да изпълнявате всяка команда в локалния команден прозорец, точно както го изпълнявате на отдалечения компютър. Това включва всичко, което може да бъде стартирано на командния ред - можете да промените стойностите на системния регистър, да стартирате скриптове и помощни програми или да се свържете от този компютър с друг. Изходът на командите ще се показва на локалния ви компютър, а не на отдалечения.
Синтаксисът е прост:
psexec \ computername apptorun.exe
Реално обаче, бихте искали да включите потребителското име и паролата на командния ред. Например, за да се свържете с друг компютър и да проверите списъка с мрежови връзки, бихте използвали нещо подобно:
psexec \ име на компютъра -u User -p Password ipconfig
Тази команда ще доведе до продукция, подобна на следната:
Следваща страница: Използване на PsExec за стартиране на дистанционни команди