Bruke PsTools til å kontrollere andre PCer fra kommandolinjen
I dagens leksjon i vår Geek School-serie som dekker SysInternals, skal vi vise deg hvordan du bruker PsTools-settet med verktøy for å utføre alle slags administrasjonsoppgaver både lokalt og på eksterne datamaskiner.
SCHOOL NAVIGASJON- Hva er SysInternals Tools og hvordan bruker du dem?
- Forstå Process Explorer
- Bruk Prosess Explorer til Feilsøking og diagnostisering
- Forstå prosessovervåking
- Bruk Prosess Monitor til Feilsøking og Finn Register Hacks
- Ved hjelp av Autoruns å håndtere oppstartsprosesser og malware
- Bruke BgInfo til å vise systeminformasjon på skrivebordet
- Bruke PsTools til å kontrollere andre PCer fra kommandolinjen
- Analysere og administrere filer, mapper og stasjoner
- Pakke opp og bruke verktøyene sammen
Hvis du noen gang har ønsket å koble til en annen datamaskin og kjøre en kommando, raskt få informasjon om prosesser som kjører og eventuelt drepe dem, eller til og med stoppe en tjeneste på en annen PC, kan du bruke PsTools-verktøyene til å gjøre alle disse tingene og til og med mer.
Åpenbart kan du bruke Eksternt skrivebord eller en lignende tjeneste for å koble til en hvilken som helst Windows-datamaskin og faktisk se skrivebordet og gjøre alt du vil gjøre lokalt, men i PsTools-verktøyene kan du gjøre mange oppgaver fra kommandolinjen - eller enda bedre, fra et skript som du kan bruke senere.
Dette er typen verktøy som fungerer best i et bedriftsmiljø. Mastering av disse verktøyene vil definitivt gjøre deg mye bedre i systemadministrasjonsjobben, spare tid og la deg gjøre ting på en mye smartere måte. Å gjøre ting smartere og raskere er en kritisk ferdighet for å være en god sysadmin.
Det er tolv verktøy i PsTools-settet, og mens noen av dem er ekstremt nyttige, har andre blitt erstattet av verktøy som er bygd inn i nyere versjoner av Windows, og det er noen andre som ikke er nyttige for de fleste. Vi går gjennom alle dem slik at du forstår hvordan de fungerer, og hvorfor du kanskje vil bruke hver enkelt.
- PsExec - kjører prosesser på en ekstern datamaskin
- PsFile - viser filer som åpnes på den eksterne datamaskinen via nettverket
- PsGetSid - viser sikkerhetsidentifikatoren for en datamaskin eller bruker
- PsInfo - lister opp informasjon om et system
- PsKill - dreper prosesser med navn eller ID
- PsList - liste informasjon om prosesser på kommandolinjen
- PsLoggedOn - liste kontoer som er logget på enten på maskinen eller koble eksternt
- PsLogList - trekk hendelsesloggen på kommandolinjen
- PsPasswd - endre passordet for brukere
- PsPing - et ganske enkelt pingverktøy med noen ekstra funksjoner
- PsService - liste og gjøre endringer i Windows-tjenester
- PsShutdown - Slå av, logg av, eller suspendere en datamaskin
- PsSuspend - suspendere og gjenoppta prosesser (i stedet for å drepe dem)
Det er verdt å merke seg at du kan bruke et verktøy som PsExec til å utføre alle slags kommandolinjeverktøy på eksterne datamaskiner ... inkludert virkelig nyttige som Autoruns kommandolinjeverktøy og mange flere. Mulighetene er uendelige når du har tatt imot kraften i PsTools.
Alle disse verktøyene kan brukes på lokale datamaskiner, men de er mest nyttige for å koble til eksterne datamaskiner og utføre kommandoer på dem.
Koble til eksterne datamaskiner (syntaks for alle verktøy)
Alle verktøyene kan kjøres på enten den lokale eller eksterne datamaskinen, slik at de alle har det samme første argumentet for datamaskinnavn hvis det er nødvendig. Merk at du kan bruke IP-adressen hvis du vil ha det i stedet. Hvis du unnlater dette argumentet, vil kommandoen fungere på din lokale datamaskin.
psinfo \\ datamaskinnavn
Du kan også liste flere datamaskiner som psinfo \\ computer1, computer2, computer3, eller du kan sette alle navnene inn i en fil og referere til det som psinfo @ computerlist.txt. Den endelige syntaksen er psinfo \\ * som opererer på alle datamaskiner i domenet, som sannsynligvis ikke er noe du vil bruke hver dag.
Hvis du trenger å koble til med alternative legitimasjonsopplysninger fordi den lokale datamaskinens konto har et annet brukernavn og passord enn den andre datamaskinen, kan du bruke alternativene -u og -p, selv om vi vil merke at du kanskje ikke vil bruke -p på kommandolinjen med et passord i kommandoen av sikkerhetshensyn. Oppdatering: I løpet av den siste utgivelsen av PsExec, passerer ingen verktøy passordene som klar tekst lenger, så det er bare bekymring hvis noen kan lese skriptfilene dine og se passordet der.
psinfo \\ datamaskinnavn-du "bruker" -p "passord"
"Bruker" -delen av kommandoen vil endres til "DOMAIN \ user" hvis du er i et domenemiljø og må endres fra den nåværende brukeren.
Merk: Du må generelt koble til eksterne datamaskiner med en administratorkonto.
Konfigurere tilgang til ekstern administrasjon
Hvis du er i et domene miljø, som de fleste som trenger å bruke PsTools vil være, kan du ignorere denne delen helt, siden alt skal fungere helt fint. For alle som kjører Windows 7, 8 eller Vista i et hjemmemiljø eller bruker et par datamaskiner på et kontor uten et domene, må du tilpasse brukerkontokontroll på den eksterne datamaskinen for å tillate at PsTools kjører riktig.
Problemet er godt beskrevet av Microsoft:
Når en bruker som er medlem av gruppen lokale administratorer på fjernkontrollen, etablerer en ekstern administrativ tilkobling ved å bruke nettbruken * \\ remotecomputer \ Share $ -kommandoen, for eksempel vil de ikke koble til som en full administrator. Brukeren har ikke høydepotensial på den eksterne datamaskinen, og brukeren kan ikke utføre administrative oppgaver.
For å forklare det på en annen måte, når du prøver å koble til en annen datamaskin og kjøre noe som krever administratortilgang, er det ikke mulig å utløse UAC-spørringen og godta den fra datamaskinen din, så den vil ikke koble til som administrator.
Og dette er ikke en dårlig ting. Du bør ikke endre denne innstillingen uten fullstendig forståelse for at du vil tillate at en åpning for skadelig programvare spres fra en datamaskin til en annen - forutsatt at skadelig programvare har ditt lokale brukernavn og passord, og at passordet er det samme som den andre datamaskinen og malware er så vanskelig, som mest ikke er. Men det er fortsatt ikke noe å bli tatt lett på.
Og igjen, hvis du er i et domenemiljø, eksisterer dette problemet ikke og trenger ikke å endres. Og hvis du bare tester med en haug med virtuelle maskiner, har du ikke mye å bekymre deg for.
Hvis du vil justere UAC for å aktivere PsTools å kjøre, vil du åpne Registerredigering og navigere til følgende nøkkel:
HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \
Windows \ Currentversion \ Policies \ System
Når du er der, opprett en ny 32-bit DWORD på høyre side, gi den navnet LocalAccountTokenFilterPolicy og verdien av 1. Du trenger ikke å starte datamaskinen på nytt for å gjøre innstillingen til virkelighet.
Merk: Bare for å klargjøre, må denne innstillingen skje på den eksterne datamaskinen du kobler til.
PsExec
PsExec er trolig det kraftigste verktøyet i settet, da du kan utføre noen kommandoer i din lokale kommandoprompt akkurat som å kjøre den på den eksterne datamaskinen. Det inkluderer alt som kan kjøres på kommandolinjen - du kan endre registret verdier, kjøre skript og verktøy, eller koble fra den PCen til en annen. Utgangen av kommandoene vil bli vist på din lokale PC, i stedet for på den eksterne.
Syntaxen er enkel:
psexec \\ datamaskinnavn apptorun.exe
Realistisk, skjønt, vil du også inkludere brukernavn og passord på kommandolinjen. Hvis du for eksempel vil koble til en annen PC og sjekke listen over nettverkstilkoblinger, bruker du noe slikt:
psexec \\ datamaskinnavn -u bruker -p passord ipconfig
Den kommandoen ville produsere produksjon som ligner på følgende:
Neste side: Bruke PsExec til å kjøre eksterne kommandoer