namai - Aptarnavimas
Kaip nuotoliniu būdu paleisti programą. Konsolės komandų vykdymas nuotoliniuose kompiuteriuose tinkle

PsExec – programa, skirta komandoms vykdyti nuotoliniu būdu

Komandų vykdymas nuotoliniame kompiuteryje yra gana įprasta užduotis. To gali prireikti norint pakeisti sistemos nustatymus, įdiegti arba pašalinti programas ir dar daugiau. Tokioms problemoms spręsti yra nemažai įvairių priemonių, pradedant nuo rimtų programinės įrangos sistemos pvz., System Center Configuration Manager ir baigiant kukliomis komunalinėmis paslaugomis komandinė eilutė. Viena iš šių paslaugų bus aptarta šiame straipsnyje.

„PsExec“ programa yra „Sysinternals“ paketo „PsTools“ dalis. Tai leidžia vykdyti komandas nuotoliniai kompiuteriai ir jo nereikia įdiegti į sistemą. Norėdami naudoti įrankį, tiesiog nukopijuokite jį į aplanką su vykdomaisiais failais (pvz., C:\Windows\system32) ir paleiskite iš bet kurio komandinės eilutės apvalkalo: Cmd arba PowerShell.
Programos veikimo principas yra toks: vykdomojo failo PsExec.exe šaltiniuose yra dar vienas vykdomasis failas - PSEXESVC, kuris yra Windows paslauga. Prieš vykdydama komandą, PsExec išpakuoja šį šaltinį į paslėptą nuotolinio kompiuterio administravimo aplanką Admin$ (C:\Windows), į failą C:\Windows\system32\psexesvc.exe.

Pastaba. Jei naudojate raktą -c Nurodykite programai, kad reikia kopijuoti vykdomuosius failus į šią sistemą, jie taip pat bus nukopijuoti į šį aplanką.

Kai kopijavimas bus baigtas, PsExec įdiegia ir paleidžia paslaugą naudodama API „Windows“ funkcijos valdyti paslaugas. Tada, paleidus PSEXESVC, tarp jo ir PsExec užmezgamas ryšys duomenims perduoti (įvesti komandas ir gauti rezultatus). Baigęs PsExec sustabdo paslaugą ir pašalina ją iš tikslinio kompiuterio.

PsExec sintaksė yra tokia:

psexec \\kompiuteris [-u vartotojas [-p slaptažodis]] programa [argumentai]

Jums nereikia nurodyti vartotojo vardo ir slaptažodžio, tada nuotolinis procesas bus paleistas iš to paties sąskaitą, kaip PsExec programa. Tačiau kadangi nuotolinis procesas yra apsimetinėjamas, jis neturės prieigos prie nuotolinės sistemos tinklo išteklių. Jei nurodysite vartotojo vardą, nuotolinis procesas vyks pagal nurodytą paskyrą ir gaus prieigą prie tų pačių nuotolinės sistemos tinklo išteklių kaip ir ši paskyra. Tačiau atminkite, kad slaptažodis į nuotolinę sistemą siunčiamas aiškiu tekstu.

Pavyzdžiui, išvalykite nuotolinio kompiuterio SRV1 DNS talpyklą:

psexec\\SRV1 ipconfig /flushdns

Komanda bus paleista SRV1 kompiuteryje naudojant jūsų kredencialus. Baigus ipconfig, visa teksto išvestis bus išsiųsta į jūsų kompiuterį, be to, bus grąžintas komandos vykdymo kodas (klaidos kodas). Jei komanda buvo įvykdyta sėkmingai, ji bus lygi 0.

Jei reikia paleisti kelias komandas, geriau užmegzti interaktyvią sesiją su nuotoliniu kompiuteriu. Norėdami tai padaryti, įveskite komandą psexec\\SRV1 cmd. Dabar vietiniame kompiuteryje įvestos komandos bus vykdomos nuotoliniame kompiuteryje SRV1.


PsExec leidžia paleisti komandą keliuose kompiuteriuose vienu metu. Norėdami tai padaryti, galite įvesti kompiuterių pavadinimus, atskirtus kableliais: psexec\\SRV1, SRV2 arba išsaugokite juos tekstiniame faile ir nurodykite jo adresą: psexec @c:\comp.txt. Jei vietoj kompiuterio pavadinimo įdėjote žvaigždutę, atlikite šiuos veiksmus: psexec\\*, tada komanda bus vykdoma visuose domeno kompiuteriuose.


Ir dar vienas įdomus būdas naudojant PsExec įrankį. Jei nenurodysite kompiuterio pavadinimo, komanda pagal numatytuosius nustatymus bus vykdoma vietinėje sistemoje. Naudojant raktą -s Galite paleisti programas naudodami sistemos paskyrą. Pavyzdžiui, pradėkime komandinės eilutės sesiją: psexec -s cmd ir tada su komanda kas aš esu Patikrinkime, su kuriuo vartotoju šiuo metu dirbame. Ši funkcija gali būti naudinga derinant programas arba pasiekiant paslėptus registro raktus SAM ir SECURITY.


Na, keli žodžiai apie programos klavišus. Visko neaprašysiu, bet papasakosiu apie įdomiausius:

Nurodyta programa nukopijuojama į nuotolinę sistemą vykdyti. Pavyzdžiui:

psexec \\SRV1 -c test.exe

Jei šis parametras nenurodytas, programa turi būti nuotolinio kompiuterio sistemos aplanke. Jei tokia programa jau yra nuotoliniame kompiuteryje ir jos nėra sistemos kataloge, tuomet turite nurodyti visą jos kelią (jei programos pavadinime yra tarpų, ji turi būti kabutėse):

psexec \\SRV1 "c:\program files\test.exe"

Jei kartu su raktu -c naudoti raktą -f tada net jei programa jau yra nuotolinėje sistemoje, ji bus perrašyta. Ir su raktu -v ji bus perrašyta tik tuo atveju, jei nukopijuota programos versija yra naujesnė nei įdiegta sistemoje.

Programa veikia interaktyviu režimu. Pagal numatytuosius nustatymus PsExec vykdo komandas paslėptu režimu, tai yra, sistemoje, kurioje vykdoma komanda, nerodomi jokie langai ar dialogai. Tačiau tai galima pakeisti naudojant klavišą -i. Po jo galite nurodyti seanso, kuriame bus rodomi langai, numerį arba negalite jo nurodyti, tada sąsaja bus rodoma konsolės sesijoje.

Nurodo, kad nereikia laukti, kol paraiška bus baigta. Tokiu atveju negausime išvesties duomenų iš konsolės programos, tačiau galėsime paleisti kitus nelaukdami, kol bus baigta ankstesnė komanda. Ši parinktis turėtų būti naudojama tik veikiant neinteraktyvioms programoms.

Naudojamas programai paleisti režimu. Gali prireikti Operacinės sistemos Windows Vista ir naujesnės versijos, kad paleistumėte kai kurias programas, kurios keičia sistemos nustatymus (pvz., regedit).

Ir šio rakto pagalba galite, priešingai, sumažinti galias. Kai procesas prasideda, vartotojui, nepaisant jo narystės administratorių grupėje, suteikiama ribotos teisės(atimamos Administratorių grupės teisės ir vartotojui suteikiamos tik Vartotojų grupei priskirtos teisės).

Pilnas Papildoma informacija Informaciją apie visus programos klavišus galite gauti tiesiog įvedę komandą psexec komandinėje eilutėje be parametrų.

Šiame straipsnyje aptariama, kaip atlikti konsolės komandos nutolusiuose tinklo kompiuteriuose pateikiami keli labai naudingi pavyzdžiai sistemos administratoriai komandos.

Konsolės komandų nuotoliniam vykdymui naudoju 2 įrankius: PsExec ir WinRM, kiekvienas iš jų turi savų privalumų.

PsExec

Vienas iš puikių pavadinime pateiktos problemos sprendimų yra naudoti didžiojo Marko Russinovičiaus programą PsExec.

Programa veikia principu klientas-serveris: klientas veikia vietiniame kompiuteryje, kuris siunčia komandas nuotolinio kompiuterio serveriui. Ypatinga šios programos ypatybė yra ta, kad serverio dalis automatiškai įdiegiama prieš įvykdant komandą, o tada pašalinama. Taigi, norint vykdyti komandas nuotoliniuose kompiuteriuose, pakanka turėti jų administravimo teises.

Jei PsExec paleista kaip administratorius, priklausantis tame pačiame domene kaip ir nuotolinis kompiuteris, jums net nereikia įvesti jokių kredencialų. Kitu atveju galite juos nurodyti komandinėje eilutėje arba PsExec paragins juos nurodyti. PsExec veikia OS nuo Windows 2000 iki 64 bitų Windows Server 2008 R2.

Šios funkcijos yra labai naudingos PsExec:

  • Komandos vykdymas kompiuterių grupėje. Pavyzdys: ši komanda įpareigoja naujausią grupės politika:
    psexec @group.txt gpupdate /force
  • Vykdomos komandos kaip sistemos paskyra. Pavyzdys: ši komanda privers nuotolinę sistemą patikrinti, ar nėra naujinimų:
    psexec \\computer -s wuauclt /detectnow
  • Vykdomosios programos kopijavimas į nuotolinį kompiuterį prieš ją vykdant. Pavyzdys: ši komanda atnaujins jūsų narystę šio kompiuterio apsaugos grupėje Active Directory(prieigos prieigos raktas) be perkrovimo:
    psexec \\computer -c -s klist.exe valymas

Sunku pervertinti šios programos naudingumą, jei naudojate scenarijus ir konsolės komandų, integruotų sistemoje "Windows", galimybes.

„Windows“ nuotolinis valdymas

Iš pradžių tai buvo serverio technologija nuotolinio valdymo pultas aparatinė įranga, kuri buvo įdiegta Windows Server 2003 R2 kaip aparatūros valdymo funkcijos dalis, tačiau Microsoft neseniai išleido Windows paketas Valdymo sistema, kuri apima PowerShell 2.0 ir WinRM 2.0 ir yra įdiegta klientų OS kaip naujinimas. Išsamią informaciją rasite straipsnyje KB968929.

„WinRM“ grožis yra tai, kad paprastas diegimas domeno aplinkoje naudojant WSUS kaip pasirenkamas OS naujinimas ir galia, kurią jis suteikia naudojant kartu su „PowerShell“.

WinRM naudojimas vyksta per 2 komandas.

winrm.cmd padeda konfigūruoti nustatymus ir diagnozuoti WinRM klientą ir serverį.

Kad WinRM serveris pradėtų priimti komandas, Windows paslauga Nuotolinis valdymas ir jo pradinė konfigūracija baigta. Naudokite komandą

winrm quickconfig vietiniame kompiuteryje arba triukas su ausimis
psexec -s \\servername winrm quickconfig tinkle naudojant PsExec kaip sistemos paskyrą.

Būsite paraginti automatiškai paleisti WinRM paslaugą ir leisti nuotolinius ryšius, sutikite;)

Norėdami sėkmingai prisijungti prie WinRM serverio (ty serverio dalies, kuri gauna komandas), kuris nėra to paties domeno, kaip ir jūsų kliento kompiuteris, dalis, turite įtraukti šį tikslinį serverį į kliento „patikimų sąrašą“ naudodami šią komandą:

winrm set winrm/config/client @(TrustedHosts="serverio pavadinimas") , kur vietoj serverio pavadinimo galite nurodyti IP adresą arba * (žvaigždute).

Dėl „Windows“ naudotojai„Vista“ ir „Windows 7“, neveikiančios kaip įtaisytasis administratorius (dažniausiai taip yra), turite paleisti šią komandą

reg pridėti HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System /v LocalAccountTokenFilterPolicy /t REG_DWORD /d 1 /f

Pagal numatytuosius nustatymus vienu metu gali būti 5 kliento WinRM ryšiai, kad padidintumėte šį skaičių, paleiskite komandą

winrm s winrm/config/winrs @(MaxShellsPerUser="X")

winrs.exe— klientas užklausoms serverio daliai siųsti. Pavyzdys: ši komanda privers iš naujo paleisti nuotolinę sistemą...

winrs -r: serverio vardo išjungimas /r /t 0

Domeno aplinkoje siunčiant komandas naudojami veikiančio vartotojo kredencialai. Norėdami siųsti komandas kito vartotojo vardu, naudokite jungiklius -u:user -p:pass. Pavyzdys: ši komanda išvalys vietinio DNS vardo talpyklą nuotolinėje sistemoje

winrs -r:serverio vardas -u:vartotojas -p:pass ipconfig /flushdns

Priemonės, pvz., Telnet, ir nuotolinio valdymo programos, pvz., Symantec's PC Anywhere, leidžia paleisti programas nuotolinėse sistemose, tačiau jas nėra lengva įdiegti, nes reikia įdiegti ir klientą. programinė įranga tose nuotolinėse sistemose, kurias reikia pasiekti. PsExec yra lengva Telnet versija. Tai leidžia paleisti procesus nuotolinėse sistemose naudojant visas interaktyvias konsolės programų galimybes, nereikia rankiniu būdu įdiegti kliento programinės įrangos. Pagrindinis PsExec pranašumas yra galimybė interaktyviai iškviesti komandų eilutės sąsają nuotolinėse sistemose ir nuotoliniu būdu paleisti tokius įrankius kaip IpConfig. Tai vienintelis kelias ekranas vietinis kompiuteris duomenis apie nuotolinę sistemą.

Pastaba. Kai kurie antivirusiniai skaitytuvai pranešti, kad viena ar kelios iš šių programų yra užkrėstos „remote admin“ virusu. Nė vienoje iš PsTools rinkinio esančių programų nėra virusų, tačiau jas naudojo virusai, todėl pasirodo šie įspėjimai.

Montavimas

Tiesiog nukopijuokite PsExec programą į vykdomąjį aplanką. Įvedus komandą psexec, rodoma žinynas apie komandos sintaksę.

PsExec dirba operacinėse Windows sistemos Vista, NT 4.0, Win2000, Windows XP ir Server 2003, įskaitant 64 bitų OS versijas

Naudojimas

2004 m. liepos mėn. „Windows IT Pro Magazine“ numeryje Marko Russinovičiaus straipsnyje aprašomi papildomi darbo su programa metodai. PsExec.

naudojimas: psexec [\\kompiuteris[,kompiuteris2[,...] | @failas][-u naudotojas [-p slaptažodis]][-n s][-l][-s|-e][-x][-i [sesija]][-c [-f|-v]] [-w katalogas][-d][-<приоритет>][-a n,n,... ] programa [argumentai]

kompiuteris

Nurodo PsExec paleisti programą nurodytame kompiuteryje ar kompiuteriuose. Jei kompiuterio pavadinimas nenurodytas, programa PsExec paleis programą vietinėje sistemoje, bet jei vietoj kompiuterio pavadinimo bus nurodytas žvaigždutė (\\*), programa PsExec paleis programą visuose kompiuteriuose. dabartinio domeno.

@failas

Nurodo PsExec paleisti programą visuose kompiuteriuose, išvardytuose nurodytame tekstiniame faile.

Procesoriai, kuriuose gali veikti programa, yra atskirti kableliais, o procesoriai numeruojami nuo 1. Pavyzdžiui, norėdami paleisti programą antroje ir ketvirtoje procesoriuose, įveskite „-a 2,4“

Nurodyta programa nukopijuojama į nuotolinę sistemą vykdyti. Jei šis parametras nenurodytas, programa turi būti nuotolinės sistemos sistemos aplanke.

Nurodo, kad nereikia laukti, kol paraiška bus baigta. Ši parinktis turėtų būti naudojama tik veikiant neinteraktyvioms programoms.

Nurodytas paskyros profilis neįkeltas.

Nurodyta programa nukopijuojama į nuotolinę sistemą, net jei toks failas jau yra nuotolinėje sistemoje.

Paleista programa gauna prieigą prie nurodytos sesijos darbalaukio nuotolinėje sistemoje. Jei sesija nenurodyta, procesas vykdomas konsolės seansu.

Procesui prasidėjus, vartotojui suteikiamos ribotos teisės (administratorių grupės teisės yra nepaisomos ir vartotojui suteikiamos tik Vartotojų grupei priskirtos teisės). „Windows Vista“ procesas prasideda nuo žemo patikimumo lygio.

Leidžia nustatyti ryšio su nuotoliniais kompiuteriais delsą (sekundėmis).

Leidžia nurodyti pasirenkamą vartotojo vardo slaptažodį. Jei šis parametras bus praleistas, būsite paraginti įvesti slaptažodį ir slaptažodis nebus rodomas ekrane.

Nuotolinis procesas paleidžiamas iš sistemos paskyros.

Leidžia nurodyti pasirenkamą vartotojo vardą, kad galėtumėte prisijungti prie nuotolinės sistemos.

Nurodytas failas nukopijuojamas į nuotolinę sistemą vietoj esamos tik tuo atveju, jei jo versijos numeris yra didesnis arba naujesnis.

Leidžia nurodyti proceso darbo katalogą (kelią nuotolinėje sistemoje).

Rodo vartotojo sąsają „Winlogon“ darbalaukyje (tik vietinėje sistemoje).

- prioritetas(prioritetas)

Leidžia nustatyti skirtingus proceso prioritetus: -žemas (žemas), -belownormal (žemesnis nei vidutinis), -bovenormal (virš vidurkio), -aukštas (aukštas) arba -realusis (realiu laiku).

programa

Paleidžiamos programos pavadinimas.

argumentai

Argumentai, kuriuos reikia perduoti (atminkite, kad failo keliai turi būti nurodyti kaip vietiniai keliai tikslinėje sistemoje).

Norėdami nurodyti programos pavadinimą, kuriame yra tarpų, naudokite kabutes, pvz., psexec \\marklap "c:\longname\app.exe". Įvesti duomenys perkeliami į nuotolinę sistemą paspaudus klavišą „Enter“, norint užbaigti nuotolinį procesą reikia paspausti klavišų kombinaciją Ctrl-C.

Jei vartotojo vardas nenurodytas, nuotolinis procesas vykdomas iš tos pačios paskyros kaip ir PsExec. Tačiau kadangi nuotolinis procesas yra apsimetinėjamas, jis neturės prieigos prie nuotolinės sistemos tinklo išteklių. Jei nurodytas vartotojo vardas, nuotolinis procesas vykdomas naudojant nurodytą paskyrą ir įgyjama prieiga prie tų pačių tinklo išteklių nuotolinėje sistemoje kaip ir paskyra. Atkreipkite dėmesį, kad slaptažodis į nuotolinę sistemą siunčiamas aiškiu tekstu.

Prieinant prie vietinės sistemos, šią PsExec versiją galima naudoti vietoj Runas, nes PsExec nereikalauja administratoriaus teisių.

Pavyzdžiai

Ši komanda parodo interaktyvią komandų eilutės sąsają \\marklap sistemoje:

psexec\\marklap cmd

Ši komanda paleidžia IpConfig programą nuotolinėje sistemoje su parametru /all ir pateikia gautus duomenis vietinės sistemos ekrane:

psexec \\marklap ipconfig /all

Ši komanda nukopijuoja test.exe į nuotolinę sistemą ir paleidžia ją interaktyviai.

psexec \\marklap -c test.exe

Jei tokia programa jau įdiegta nuotolinėje sistemoje ir jos nėra sistemos kataloge, nurodykite visą šios programos kelią

psexec \\marklap c:\bin\test.exe

Ši komanda interaktyviai paleidžia Regedit iš sistemos paskyros, kad peržiūrėtų SAM ir SECURITY registro raktų duomenis:

psexec -i -d -s c:\windows\regedit.exe

Ši komanda naudojama programai iškviesti Internet Explorer ribotas teises turinčio vartotojo vardu:

psexec -l -d "c:\program files\internet explorer\iexplore.exe"



 


Skaityti:



Geriausių belaidžių ausinių įvertinimas

Geriausių belaidžių ausinių įvertinimas

Ar galima nebrangiai įsigyti universalių ausų? 3000 rublių – ar už tokius pinigus galima nusipirkti kokybiškų ausinių? Kaip paaiškėjo, taip. Ir kalba...

Pagrindinė mobiliojo įrenginio kamera dažniausiai yra užpakalinėje korpuso dalyje ir naudojama fotografuoti bei filmuoti

Pagrindinė mobiliojo įrenginio kamera dažniausiai yra užpakalinėje korpuso dalyje ir naudojama fotografuoti bei filmuoti

Atnaujinta planšetės versija su patobulintomis charakteristikomis ir dideliu autonomiškumu.Acer išmanieji telefonai retai lankomi...

Kaip persijungti į kitą operatorių išsaugant savo numerį

Kaip persijungti į kitą operatorių išsaugant savo numerį

Įstatymas dėl telefono numerio išsaugojimo, kai abonentas pereina prie kito mobiliojo ryšio operatoriaus, Rusijoje įsigaliojo gruodžio 1 d. Tačiau paaiškėjo, kad...

phableto apžvalga, brangi, bet labai kompetentinga

phableto apžvalga, brangi, bet labai kompetentinga

Apžvalga apie phablet, brangus, bet labai kompetentingas 2015-03-20 Esu vienintelis batsiuvys pasaulyje be batų, išmaniųjų telefonų apžvalgininkas be savo išmaniojo telefono....

tiekimo vaizdas RSS