Homepage » scuola » Usare PsTools per controllare altri PC dalla riga di comando

    Usare PsTools per controllare altri PC dalla riga di comando

    Nella lezione di oggi della nostra serie di Geek School su SysInternals, mostreremo come utilizzare il set di utility PsTools per eseguire tutti i tipi di attività amministrative sia a livello locale che su computer remoti.

    NAVIGAZIONE SCOLASTICA
    1. Quali sono gli strumenti di SysInternals e come li usi?
    2. Capire Process Explorer
    3. Utilizzo di Process Explorer per la risoluzione dei problemi e la diagnosi
    4. Comprensione del monitor di processo
    5. Utilizzo di Process Monitor per la risoluzione dei problemi e la ricerca di blocchi di registro
    6. Utilizzare Autoruns per gestire i processi di avvio e il malware
    7. Utilizzo di BgInfo per visualizzare le informazioni di sistema sul desktop
    8. Usare PsTools per controllare altri PC dalla riga di comando
    9. Analisi e gestione di file, cartelle e unità
    10. Avvolgimento e utilizzo degli strumenti insieme

    Se hai mai desiderato connettersi a un altro computer ed eseguire un comando, ottenere rapidamente informazioni sui processi in esecuzione e opzionalmente eliminarli o persino interrompere un servizio su un altro PC, puoi usare le utilità di PsTools per fare tutte queste cose e persino Di Più.

    Ovviamente puoi usare Remote Desktop o un servizio simile per connetterti a qualsiasi computer Windows e vedere effettivamente il desktop e fare qualsiasi cosa tu voglia fare localmente, ma le utilità di PsTools ti permettono di fare molte attività dalla riga di comando - o meglio ancora, da uno script che puoi riutilizzare in seguito.

    Questi sono i tipi di utilità che funzionano meglio in un ambiente aziendale e la padronanza di questi strumenti ti renderà sicuramente molto più efficiente nel tuo lavoro di amministrazione del sistema, ti fa risparmiare tempo e ti consente di fare le cose in un modo molto più intelligente. Fare cose più intelligenti e veloci è un'abilità fondamentale per essere un grande amministratore di sistema.

    Ci sono dodici strumenti nel set di PsTools, e mentre alcuni di essi sono estremamente utili, altri sono stati sostituiti con strumenti incorporati in versioni più recenti di Windows, e ce ne sono altri che non sono utili per la maggior parte delle persone. Li analizzeremo tutti in modo che tu capisca come funzionano e perché potresti volerli utilizzare.

    • PsExec - esegue i processi su un computer remoto
    • PsFile: mostra i file che vengono aperti sul computer remoto attraverso la rete
    • PsGetSid: visualizza l'identificatore di sicurezza per un computer o utente
    • PsInfo: elenca le informazioni su un sistema
    • PsKill - uccide i processi per nome o ID
    • PsList: elenca le informazioni sui processi nella riga di comando
    • PsLoggedOn - elenca gli account che sono registrati sul computer o che si connettono da remoto
    • PsLogList: trascina il registro eventi sulla riga di comando
    • PsPasswd - cambia la password per gli utenti
    • PsPing: un'utilità ping abbastanza semplice con alcune funzionalità aggiuntive
    • PsService: elenca e apporta le modifiche ai servizi di Windows
    • PsShutdown - Spegni, disconnetti o sospendi un computer
    • PsSuspend - sospende e riprende i processi (anziché ucciderli)

    Vale la pena notare che è possibile utilizzare uno strumento come PsExec per eseguire tutti i tipi di utilità da riga di comando sui computer remoti ... compresi quelli veramente utili come lo strumento da riga di comando di Autoruns e molti altri. Le possibilità sono infinite una volta che hai abbracciato il potere di PsTools.

    Tutti questi strumenti possono essere utilizzati su computer locali, ma sono principalmente utili per la connessione a computer remoti e l'esecuzione di comandi su di essi.

    Connessione a computer remoti (sintassi per tutte le utilità)

    Tutti i programmi di utilità possono essere eseguiti sul computer locale o remoto, in modo che abbiano tutti lo stesso primo argomento per il nome del computer, se necessario. Si noti che è possibile utilizzare l'indirizzo IP se si desidera invece. Se ometti questo argomento, il comando funzionerà sul tuo computer locale.

    psinfo \\ computername

    È anche possibile elencare più computer come psinfo \\ computer1, computer2, computer3, oppure è possibile inserire tutti i nomi in un file e fare riferimento come psinfo @ computerlist.txt. La sintassi finale è psinfo \\ * che opera su tutti i computer nel dominio, che probabilmente non è qualcosa che userai ogni giorno.

    Se hai bisogno di connetterti con credenziali alternative perché l'account del tuo computer locale ha un nome utente e una password diversi da quelli dell'altro computer, puoi usare le opzioni -u e -p, sebbene dovremmo notare che potresti non voler usare -p su la riga di comando con una password nel comando per motivi di sicurezza. Aggiornamento: dall'ultima versione di PsExec, nessuno strumento passa più le password come testo libero, quindi l'unica preoccupazione è se qualcuno può leggere i tuoi file di script e vedere la password lì.

    psinfo \\ computername -u "user" -p "Password"

    La parte "utente" del comando cambierebbe in "DOMINIO \ utente" se ci si trova in un ambiente di dominio e si deve cambiare dall'utente correntemente in esecuzione.

    Nota: in genere sarà necessario connettersi ai computer remoti con un account amministratore.

    Configurazione dell'accesso all'amministrazione remota

    Se ti trovi in ​​un ambiente di dominio, la maggior parte delle persone che hanno bisogno di usare PsTools, puoi ignorare questa sezione perché tutto dovrebbe funzionare correttamente. Per chiunque utilizzi Windows 7, 8 o Vista in un ambiente domestico o utilizzando un paio di computer in un ufficio senza un dominio, sarà necessario modificare il controllo dell'account utente sul computer remoto per consentire a PsTools di funzionare correttamente.

    Il problema è descritto bene da Microsoft:

    Quando un utente che è membro del gruppo di amministratori locali sul computer remoto di destinazione stabilisce una connessione amministrativa remota utilizzando il comando net use * \\ remotecomputer \ Share $, ad esempio, non si connetteranno come amministratore completo. L'utente non ha potenziale di elevazione sul computer remoto e l'utente non può eseguire attività amministrative.

    Per spiegarlo in un modo diverso, quando provi a connetterti a un altro computer e esegui qualcosa che richiede l'accesso da parte dell'amministratore, non c'è modo di attivare il prompt UAC e accettarlo dal tuo computer, quindi non si connetterà come amministratore.

    E questa non è una brutta cosa. Non dovresti modificare questa impostazione senza aver compreso pienamente che consentirai un'apertura per la diffusione del malware da un computer a un altro, supponendo che il malware abbia il tuo nome utente e password locali e che la password sia la stessa dell'altro computer, e che il malware è così complicato, che la maggior parte non lo è. Ma non è ancora qualcosa da prendere alla leggera.

    E ancora, se ci si trova in un ambiente di dominio, questo problema non esiste e non è necessario modificarlo. E se stai solo provando con un gruppo di macchine virtuali, non hai molto di cui preoccuparti.

    Per ottimizzare il controllo dell'account utente per l'esecuzione di PsTools, è necessario aprire l'editor del Registro di sistema e accedere alla seguente chiave:

    HKEY_LOCAL_MACHINE \ SOFTWARE \ Microsoft \
    Windows \ CurrentVersion \ Policies \ System

    Una volta lì, creare un nuovo DWORD a 32 bit sul lato destro, assegnargli il nome LocalAccountTokenFilterPolicy e il valore di 1. Non è necessario riavviare il computer per rendere effettive le impostazioni.

    Nota: per chiarire, questa impostazione deve essere eseguita sul computer remoto a cui ci si sta connettendo.

    PsExec

    PsExec è probabilmente lo strumento più potente del kit, in quanto è possibile eseguire qualsiasi comando nel prompt dei comandi locale proprio come eseguirlo sul computer remoto. Ciò include tutto ciò che può essere eseguito sulla riga di comando: è possibile modificare i valori di registro, eseguire script e utility o connettersi da quel PC a un altro. L'output dei comandi verrà mostrato sul PC locale, anziché su quello remoto.

    La sintassi è semplice:

    psexec \\ computername apptorun.exe

    Realisticamente, però, si vorrebbe includere anche il nome utente e la password sulla riga di comando. Ad esempio, per connettersi a un altro PC e controllare l'elenco delle connessioni di rete, si utilizzerà qualcosa di simile:

    psexec \\ computername -u Utente -p Password ipconfig

    Quel comando produrrebbe un output simile al seguente:

    Pagina successiva: Utilizzo di PsExec per l'esecuzione di comandi remoti