Gestire le sessioni utente da riga di comando
A volte può capitare che su un server non sia possibile accedere tramite RDP o console e si desideri capire se c’è qualche sessione attiva o bloccata, in tal caso si può provare ad operare tramite riga di comando. Questo approccio che richiede l’esecuzione di comandi tramite credenziali con privilegi di amministratore locale sul sistema da esaminare può tornare utile in particolar modo su server virtuali che in apparenza non rispondono, ma si vuole evitare se possibile di arrestare forzatamente il sistema.
Il primo comando che è possibile utilizzare è query session che consente di visualizzare le sessioni presenti e in particolar modo il Nome, l’ID, l’utente e lo stato di ciascuna sessione:
query session /server srvtest01
NOMESESSIONE NOMEUTENTE ID STATO TIPO DISPOSITIVO
services 0 Disc
administrator 3 Disc
console admin_test 4 Attivo
31c5ce94259d4... 65536 Rimani in ascolto
rdp-tcp 65537 Rimani in ascolto
query session visualizza le informazioni sulle sessioni RDP, ma l’elenco restituito non include solo le informazioni sulle sessioni attive RDP, ma anche su altre sessioni in esecuzione nel server.
Un secondo comando è quser che restituisce le informazioni sulle sessioni utente RDP:
quser /server srvtest01
NOMEUTENTE NOMESESSIONE ID STATO INATTIVITÀ ACCESSO
administrator 3 Disc 5 05/12/2022 22:53
admin_test console 4 Attivo 7 05/12/2022 11:34
Un terzo comando per analizzare le sessioni è qwinsta che è disponibile solo su sistemi a 64 bit e che è di fatto “sinonimo” di query user:
qwinsta /server:srvtest01
NOMESESSIONE NOMEUTENTE ID STATO TIPO DISPOSITIVO
services 0 Disc
administrator 3 Disc
console admin_test 4 Attivo
31c5ce94259d4... 65536 Rimani in ascolto
rdp-tcp 65537 Rimani in ascolto
E’ possibile provare a disconnettere le sessioni tramite il comando tsdiscon che permette di disconnettere appunto una sessione RDP:
tsdiscon 3 /server:srvtest01
tsdiscon 4 /server:srvtest01
Nel caso la disconnessione non sia sufficiente è possibile resettare la connessione ovvero eliminarla tramite il comando reset session o tramite il comando rwinsta:
reset session 3 /server:srvtest01 /v
reset session 4 /server:srvtest01 /v
rwinsta 3 /server:srvtest01 /v
rwinsta 4 /server:srvtest01 /v
Ciao Ermanno, e prima di tutto tanti auguri.
Grazie per l’articolo, tu sei un po’ paragnosta, facevo vedere una cosa simile ad un collega giusto l’altro giorno; per arrivare a fare lo shadow delle sessioni.
A presto,
Fabrizio
Ciao Fabrizio, grazie e auguroni anche a te!
[…] post Gestire le sessioni utente da riga di comando avevo descritto come ricavare e gestire le sessioni utente su un computer e al momento il metodo […]