Archives de la catégorie ‘Outils en ligne de commande’

Hello RDS Guys,

Je viens de créer un partage « OneDrive » dans lequel j’ai ajouté tous les scripts (développés par mes soins) liés au rôle RDS et au protocole RDP.

Ils sont accessibles en free download, à l’URL suivante :

https://1drv.ms/f/s!Agu0mgqr6F71pUWk4wK4fwu6H5_Q

Enjoy !

HK

Vous découvrez à travers cette vidéo l’outil en ligne de commande « NET.exe » ainsi que les différents modes et contextes dans lesquels vous pouvez l’exécuter.
Pour vous permettre de vous familiariser avec l’outil, les explications sont suivies de plusieurs démonstrations techniques.

N’hésitez pas à « Liker & Partager » cette vidéo et vous abonner à notre chaine YT pour être informé de toute nouvelle vidéo publiée.
Stay in touch :);

A bientôt

HK

Cette vidéo vous montre comment retrouver tous les mots de passe Wi-Fi enregistrés sur votre machine Windows 10.

Notez que cette technique est valable aussi pour Windows Vista, Windows 7 ainsi que Windows 8 et 8.1

N’hésitez pas à vous abonner à la chaîne pour être informé de la publication des nouvelles astuces IT.

Keep in touch :).

HK.

 

S’applique à : Windows XP, Windows 2003 Server, Windows Vista, Windows 7, Windows 2008 Server, Windows 2008 Server R2, Windows 8, Windows 8.1, Windows 2012 Server, Windows 2012 Server R2, Windows 10, Windows 2015 Server

A noter que certains paramètres et instructions ne sont disponibles que sur les dernières versions de Windows Server et Windows Client, e.i Windows 8.1 /10 – Windows 2012 Server R2: lancer tsdiscon.exe /? dans un premier temps pour vérifier la liste des paramètres disponibles

Introduction

TSDiscon.exe est un outil en ligne de commande natif dans les systèmes d’exploitation Windows Server et Windows Client.

Il permet de déconnecter une session Windows « locale » ou une session « Bureau à distance » hébergée sur un Serveur Hôte de session Bureau à distance ou Terminal Server.
La déconnexion de la session n’implique pas la fermeture des programmes et processus en cours lancés par l’utilisateur, le travail non enregistré /non sauvegardé de l’utilisateur distant dont la session est déconnectée n’est pas perdu.
Important : Ne pas confondre avec l’outil Logoff.exe, qui permet de fermer une session Windows « locale ou distante » : fermeture de la session utilisateur et de tous les programmes /processus lancés par celui-ci.
Syntaxe

TSDISCON [ID_session | session] [/SERVER:serveur] [/V] [/VM]

-? | Help | Pour obtenir de l’aide. N’hésitez pas à utiliser tsdiscon /? ou tsdiscon -? pour connaître la liste complète des paramètres disponibles pour la version de Windows (Client ou Serveur) installée sur vos machines

ID_session | ID de la session (numéro de session) à déconnecter
session | Nom de la Session à déconnecter
/Server | suivi de : et le nom du serveur distant (Hote de session ou TSE) sur lequel la session à déconnecter est hébergée
/V | Permet d’afficher les informations sur les actions effectuées

NOTE

-> Si le paramètre /Server n’est pas spécifié, le serveur ou poste de travail sur lequel vous êtes connecté est spécifié par défaut !

> Attention à ne pas saisir TSDiscon.exe ou TSDiscon uniquement depuis le même serveur /poste de travail, cela déconnectera votre session actuelle et vous allez vous retrouver avec un écran noir 🙂 !

-> Toutes les commandes ci-dessous sont exécutées depuis l’invite de commande (cmd.exe) lancée en tant qu’Administrateur.

Exemples

* Pour déconnecter la session d’un utilisateur connecté sur le même serveur sur lequel vous êtes connecté

=> Depuis l’invite de commande, vous saisissez dans un premier temps : Query session

1

Comme illustré dans l’image ci-dessus, l’utilisateur hkadiri a une session RDP Actif, nommée RDP-TCP#1 et portant l’ID 3

Supposons que la session Bureau à distance de l’utilisateur hkadiri (avant déconnexion) ressemble à ça :

2

=> Maintenant que nous avons noté les informations sur la session Bureau à distance ouverte par l’utilisateur hkadiri, nous pourrons déconnecter sa session du serveur, soit en utilisant

1. Le nom de sa session actif         : TSDiscon rdp-tcp#1 
2. L’ID de sa session actif              : TSDiscon 3

Notez que dans les 2 cas, la session de l’utilisateur hkadiri est déconnectée. S’il s’agit d’une session Bureau à distance, l’utilisateur hkadiri voit apparaître le message suivant sur son écran :

3

Enfin, si l’utilisateur se reconnecte à sa session locale ou Bureau à distance, il retrouvera ses programmes et fenêtres Windows ayant été ouverts avant la déconnexion.

* Pour déconnecter la session d’un utilisateur connecté sur un serveur distant (TSE et/ou RDSH)

=> Depuis l’invite de commande, vous saisissez dans un premier temps : Query session /Server:NomDuServeurDistant

Dans l’exemple suivant, nous allons lister les sessions Bureau à distance actives sur le serveur distant LABRDSH02

4

=> Pour déconnecter la session de l’utilisateur hkadiri connecté sur le serveur distant LABRDSH02, l’une des commandes suivantes est utilisée :

1. En utilisant le nom de sa session : TSDiscon rdp-tcp#0 /Server:LABRDSH02
2. En utilisant l’ID de sa session       : TSDiscon 3 /Server:LABRDSH02

Enfin, vous pouvez utiliser le paramètre /V pour afficher les actions effectuées, plus précisément l’action de déconnexion de la session spécifiée.

Pour reprendre l’exemple précédent, nous allons déconnecter la session de l’utilisateur distant hkadiri en utilisant l’ID de session et le paramètre /V

TSDiscon 3 /Server:LABRDSH02 /V

Comme montré dans l’image ci-après, l’action (de déconnexion de session) est affichée

5

Pour terminer, le paramètre /VM peut être utilisé pour déconnecter une session ouverte sur un serveur virtuel distant ou poste de travail virtuel exécuté /hébergé sur un Hyperviseur (Hyper-V, ESXi …). Notez qu’uniquement l’ID de la session peut être utilisé mais pas le nom de la session.

 

S’applique à : Windows Vista, Windows 7, Windows 2008 Server, Windows 2008 Server R2, Windows 8, Windows 8.1, Windows 2012 Server, Windows 2012 Server R2, Windows 10, Windows 2015 Server

A noter que certains paramètres et instructions ne sont disponibles que sur les dernières versions de Windows Server et Windows Client, e.i Windows 8.1 /10 – Windows 2012 Server R2: lancer Reset.exe Session /? dans un premier temps pour vérifier la liste des paramètres disponibles

Introduction

Reset.exe est un outil en ligne de commande permettant de réinitialiser une session Bureau à distance hébergée sur un serveur Terminal Server et/ou Hôte de session Bureau à distance.

La réinitialisation de session signifie la suppression de celle ci du serveur distant, donc notez qu’il faut avertir les utilisateurs distants connectés avant de procéder à la réinitialisation de leurs sessions, faute de quoi le travail (non enregistré) sera perdu !

L’outil Reset.exe peut être utilisé dans un seul contexte qu’est : SESSION.

Depuis l’invite de commande (cmd.exe), si vous saisissez reset ou reset.exe, le résultat suivant est retourné:

RESET_1

Comme pouvez le constater, l’outil reset.exe doit toujours être suivi de SESSION, voir la section « Syntaxe » pour la liste des paramètres disponibles avec le mode RESET.EXE SESSION.

Syntaxe

RESET SESSION {NomSession | IDsession} [/SERVER:NomServeur] [/V]

-? | Help | Pour obtenir de l’aide. N’hésitez pas à utiliser reset session /? ou reset session -? pour connaître la liste complète des paramètres disponibles pour la version de Windows (Client ou Serveur) installée sur vos machines

NomSession | Nom de la Session à réinitialiser
IDsession | ID de la session (numéro de session) à réinitialiser
/Server | suivi de : et le nom du serveur distant (Hote de session ou TSE) sur lequel la session à réinitialiser est hébergée
/V | Permet d’afficher les informations sur les actions effectuées

NOTE

-> Si le paramètre /Server n’est pas spécifié, le serveur ou poste de travail sur lequel vous êtes connecté est spécifié par défaut ! 

-> Toutes les commandes ci-dessous sont exécutées depuis l’invite de commande (cmd.exe) lancée en tant qu’Administrateur.

Exemples

* Pour réinitialiser la session d’un utilisateur connecté sur le même serveur sur lequel vous êtes connecté

=> Depuis l’invite de commande, vous saisissez dans un premier temps : Query session

1

Comme illustré dans l’image ci-dessus, l’utilisateur hkadiri a une session RDP Actif, nommée RDP-TCP#1 et portant l’ID 3

=> Maintenant que nous avons noté les informations sur la session Bureau à distance ouverte par l’utilisateur hkadiri, nous pourrons lui réinitialiser sa session du serveur, soit en utilisant

  1. Le nom de sa session actif         : Reset Session rdp-tcp#1 
  2. L’ID de sa session actif              : Reset Session 3

Notez que dans les 2 cas, la session de l’utilisateur hkadiri est réinitialisée.

* Pour réinitialiser la session d’un utilisateur connecté sur un serveur distant (TSE et/ou RDSH) 

=> Depuis l’invite de commande, vous saisissez dans un premier temps : Query session /Server:NomDuServeurDistant

Dans l’exemple suivant, nous allons lister les sessions Bureau à distance actives sur le serveur distant LABRDSH02

8

=> Pour réinitialiser la session de l’utilisateur hkadiri connecté sur le serveur distant LABRDSH02, l’une des commandes suivantes est utilisée :

  1. En utilisant le nom de sa session : Reset Session rdp-tcp#1 /Server:LABRDSH02

  2. En utilisant l’ID de sa session       : Reset Session 3 /Server:LABRDSH02

Enfin, vous pouvez utiliser le paramètre /V pour afficher les actions effectuées, plus précisément l’action de Réinitialisation de la session spécifiée.

Pour reprendre l’exemple précédent, nous allons Réinitialiser la session de l’utilisateur distant hkadiri en utilisant l’ID de session et le paramètre /V

Reset Session 3 /Server:LABRDSH02 /V

Comme montré dans l’image ci-après, l’action (Réinitialisation de session) est affichée:

RESET_2

 

S’applique à : Windows XP, Windows 2003 Server, Windows Vista, Windows 7, Windows 2008 Server, Windows 2008 Server R2, Windows 8, Windows 8.1, Windows 2012 Server, Windows 2012 Server R2, Windows 10, Windows 2015 Server

A noter que certains paramètres et instructions ne sont disponibles que sur les dernières versions de Windows Server et Windows Client, e.i Windows 8.1 /10 – Windows 2012 Server R2: lancer logoff.exe /? dans un premier temps pour vérifier la liste des paramètres disponibles

Introduction

Logoff.exe est un outil en ligne de commande natif dans les systèmes d’exploitation Windows Server et Windows Client.

Il permet de fermer une session Windows « locale » ou une session « Bureau à distance » hébergée sur un Serveur Hôte de session Bureau à distance ou Terminal Server.
Syntaxe

LOGOFF [session | id_session] [/SERVER:serveur] [/V] [/VM]

-? | Help | Pour obtenir de l’aide. N’hésitez pas à utiliser logoff /? ou logoff -? pour connaître la liste complète des paramètres disponibles pour la version de Windows (Client ou Serveur) installée sur vos machines

Session | Nom de la Session à fermer
id session | ID de la session (numéro de session) à fermer
/Server | suivi de : et le nom du serveur distant (Hote de session ou TSE) sur lequel la session à fermer est hébergée
/V | Permet d’afficher les informations sur les actions effectuées

NOTE

-> Si le paramètre /Server n’est pas spécifié, le serveur ou poste de travail sur lequel vous êtes connecté est spécifié par défaut ! attention à ne pas saisir Logoff.exe ou Logoff uniquement depuis le même serveur /poste de travail, cela fermera votre session !

-> Toutes les commandes ci-dessous sont exécutées depuis l’invite de commande (cmd.exe) lancée en tant qu’Administrateur.

Exemples

* Pour fermer la session d’un utilisateur connecté sur le même serveur sur lequel vous êtes connecté

=> Depuis l’invite de commande, vous saisissez dans un premier temps : Query session

1

Comme illustré dans l’image ci-dessus, l’utilisateur hkadiri a une session RDP Actif, nommée RDP-TCP#1 et portant l’ID 3

=> Maintenant que nous avons noté les informations sur la session Bureau à distance ouverte par l’utilisateur hkadiri, nous pourrons fermer sa session du serveur, soit en utilisant

1. Le nom de sa session actif         : Logoff rdp-tcp#1 
2. L’ID de sa session actif              : Logoff 3

Notez que dans les 2 cas, la session de l’utilisateur hkadiri est fermée.

* Pour fermer la session d’un utilisateur connecté sur un serveur distant (TSE et/ou RDSH) 

=> Depuis l’invite de commande, vous saisissez dans un premier temps : Query session /Server:NomDuServeurDistant

Dans l’exemple suivant, nous allons lister les sessions Bureau à distance actives sur le serveur distant LABRDSH02

8

=> Pour fermer la session de l’utilisateur hkadiri connecté sur le serveur distant LABRDSH02, l’une des commandes suivantes est utilisée :

1. En utilisant le nom de sa session : Logoff rdp-tcp#1 /Server:LABRDSH02

2. En utilisant l’ID de sa session       : Logoff 3 /Server:LABRDSH02

Enfin, vous pouvez utiliser le paramètre /V pour afficher les actions effectuées, plus précisément l’action de Fermeture de la session spécifiée.

Pour reprendre l’exemple précédent, nous allons fermer la session de l’utilisateur distant hkadiri en utilisant l’ID de session et le paramètre /V

Logoff 3 /Server:LABRDSH02 /V

Comme montré dans l’image ci-après, l’action (fermeture de session) est affichée:

120

Pour terminer, le paramètre /VM peut être utilisé pour fermer une session ouverte sur un serveur virtuel distant ou poste de travail virtuel exécutée sur un Hyperviseur. Notez qu’uniquement l’ID de la session peut être utilisé mais pas le nom de la session.

 

S’applique à : Windows Vista, Windows 7, Windows 2008 Server, Windows 2008 Server R2, Windows 8, Windows 8.1, Windows 2012 Server, Windows 2012 Server R2, Windows 10

A noter que certains paramètres et instructions ne sont disponibles que sur les dernières versions de Windows Server et Windows Client, e.i Windows 8.1 /10 – Windows 2012 Server R2: lancer msg.exe /? dans un premier temps pour vérifier la liste des paramètres disponibles

Introduction

MSG.exe est un outil en ligne de commande natif dans les systèmes d’exploitation Windows Server et Windows Client.

Il permet d’envoyer des messages à un ou plusieurs utilisateurs du réseau ayant une session Windows active (locale ou  distante sur un serveur Hôte de session Bureau à distance /TSE).

Il est très utilisé dans les environnements TSE (Terminal Services) et/ou RDS (Remote Desktop Services ou Services Bureau à distance) pour par exemple demander à un ou plusieurs utilisateurs Bureau à distance de déconnecter leurs sessions pour une maintenance de la dernière minute ou pour demander la fermeture d’un programme /application qui consomme beaucoup de ressources (RAM, CPU..) du serveur distant ou tout simplement pour inviter les utilisateurs Bureau à distance de rejoindre une réunion de la dernière minute
Syntaxe

MSG {utilisateur | session | id_session | @nom_fichier | *} [/SERVER:serveur] [/TIME:secondes] [/V] [/W] [message]

-? | Help | Pour obtenir de l’aide. N’hésitez pas à utiliser msg /? ou msg -? pour connaître la liste complète des paramètres disponibles pour la version de Windows (Client ou Serveur) installée sur vos machines

Utilisateur | Nom d’utilisateur auquel le message sera envoyé
Session | Nom de la Session à laquelle le message sera envoyé
id session | ID de la session (numéro de session) à laquelle le message sera envoyé
@nom_fichier | Nom du fichier (texte) contenant une liste des utilisateurs ou leurs noms de sessions ou encore leurs ID de sessions auxquels le message sera envoyé. C’est pratique quand vous voulez envoyer le même message à un groupe d’utilisateurs distants. Le fichier texte peut être généré à partir de la commande Query session>C:\ListeUtilisateurs.txt
* | Le message est envoyé à tout le monde : à toute session Windows distante ouverte sur le serveur spécifié avec le paramètre /Server)
/Server | suivi de : et le nom du serveur sur lequel l’utilisateur auquel vous voulez envoyer le message est connecté /a une session active
/Time | suivi de : et le nombre de secondes durant lesquelles le message reste affiché sur la session de l’utilisateur distant

Note : si le paramètre /Server n’est pas spécifié, le serveur depuis lequel vous envoyez le message est spécifié par défaut ! | si le paramètre /Time n’est pas spécifié, le message reste affiché sur la session de l’utilisateur auquel le message est envoyé jusqu’à que celui-ci clique sur le bouton OK

ASTUCE

-> Pour connaître la liste complète des utilisateurs connectés sur un serveur local ainsi que leurs noms  de sessions ou encore ID des sessions, lancez la commande suivante depuis cmd.exe :  Query Session

-> Toutes les commandes ci-dessous sont exécutées depuis l’invite de commande (cmd.exe) lancée en tant qu’Administrateur.

Exemples

* Pour envoyer un message un utilisateur connecté via Bureau à distance sur le même serveur depuis lequel vous envoyez le message

=> Depuis l’invite de commande, vous saisissez dans un premier temps : Query session

1

Comme illustré dans l’image ci-dessus, l’utilisateur hkadiri a une session RDP Actif, nommée RDP-TCP#1 et portant l’ID 3

=> Maintenant que nous avons noté les informations sur la session Bureau à distance ouverte par l’utilisateur hkadiri, nous pourrons lui envoyer un message via MSG.exe en utilisant soit :

  1. Son nom d’utilisateur                : MSG hkadiri  « Salut Hicham, peux-tu te déconnecter STP ?! »
  2. Le nom de sa session actif         : MSG rdp-tcp#1 « Salut Hicham, peux-tu te déconnecter STP ?! »
  3. L’ID de sa session actif              : MSG 3 « Salut Hicham, peux-tu te déconnecter STP ?! »

Notez que dans les 3 cas, le message est envoyé et la boite de dialogue suivante est affichée sur la session distante de l’utilisateur hkadiri :

2

* Pour envoyer un message à plusieurs utilisateurs connectés via Bureau à distance sur le même serveur depuis lequel vous envoyez le message

=> Dans l’exemple précédent, vous avez remarqué que deux utilisateurs Bureau à distance sont connectés :hkadiri et jdeo

3

Maintenant, nous allons envoyer le même message à l’ensemble des utilisateurs Bureau à distance en utilisant le paramètre * :

MSG * « Bonjour, n’oubliez pas la réunion technique de 16h, soyez à l’heure ! »

Tous les utilisateurs ayant une session active sur le serveur depuis lequel ce message est envoyé reçoivent le message. Dans notre exemple, il s’agit des utilisateurs hkadiri & jdeo.

4

5

6

 

 

 

 

 

* Pour envoyer un message à une liste d’utilisateurs connectés via Bureau à distance sur le même serveur depuis lequel vous envoyez le message en utilisant un fichier texte.

=> Vous pouvez créer ou générer un fichier texte contenant la liste des utilisateurs auquel vous voulez envoyer un message. Dans l’exemple suivant, je vais utiliser un fichier texte nommé UtilisateursRDS.txt placé sur mon bureau

7

A l’aide du paramètre @nom_fichier (dans notre exemple @UtilisateursRDS.txt) nous allons envoyer le même message à l’ensemble des utilisateurs qui y sont listés. La commande suivante est utilisée :

MSG @UtilisateursRDS.txt « Rappel : une maintenance est prevue sur le serveur RDSH dans 30min ! »

Tous les utilisateurs spécifiés dans le fichier texte @UtilisateursRDS.txt reçoivent donc le message.

Note : vous devez vous positionner sur le Bureau (depuis l’invite de commande) pour que l’outil MSG.exe trouve votre fichier texte. Si vous êtes sous %windir%\system32 (généralement chemin par défaut sur cmd.exe), il faudrait utiliser la commande CD pour naviguez jusqu’au \Bureau ou \Desktop.

* Pour envoyer un message à un utilisateur connecté via Bureau à distance sur un serveur distant

ASTUCE

-> Pour connaître la liste complète des utilisateurs connectés sur un serveur distant ainsi que leurs noms  de sessions ou encore ID des sessions, lancez la commande suivante depuis cmd.exe : Query Session /Server:Hostname_Serveur_distant

=> Par exemple pour connaître la liste des utilisateurs Bureau à distance connectés sur le serveur distant LABRDSH02, la commande suivante est utilisée : Query Session /Server:LABRDSH02

=> Vous devez noter dans un premier temps le nom d’utilisateur ou le nom de la session ou encore l’ID de la session depuis le résultat retourné par la commande Query Session. Dans l’exemple suivant, l’utilisateur hkadiri est connecté sur le serveur LABRDSH02, et a une session RDP active :

8

=> Pour envoyer un message un l’utilisateur distant hkadiri connecté sur le serveur distant LABRDSH02, la commande suivante est utilisée

MSG hkadiri  /Server:LABRDSH02 « Bonjour Hicham, n’oublie pas la réunion de 16h ! »

Le message envoyé sur la session de hkadiri reste affiché jusqu’à ce que dernier clique sur le bouton OK. A l’aide du paramètre /Time vous pouvez spécifier un détail d’affichage (en secondes) du message.

=> Dans l’exemple suivant, nous allons envoyer le même message à l’utilisateur hkadiri avec un délai d’affichage de 5 secondes

MSG hkadiri  /Server:LABRDSH02 /Time:5 « Bonjour Hicham, n’oublie pas la réunion de 16h ! »

Vous pouvez utiliser le paramètre /V pour afficher des informations sur toutes les actions effectuées, comme l’envoie du message, réception du message … la commande à utiliser est donc :

MSG hkadiri  /Server:LABRDSH02 /V « Bonjour Hicham, n’oublie pas la réunion de 16h ! »

Les actions effectuées sont affichées comme illustré dans l’image ci-après :

9

Enfin, le paramètre /W peut être utilisé pour attendre la réponse de l’utilisateur distant (réponse = clic sur le bouton OK) après avoir envoyé le message, généralement il est utilisé avec le paramètre /V qui vous permet de voir si l’utilisateur distant a bien reçu le message et vous retourne l’action effectuée par celui-ci.

MSG hkadiri  /Server:LABRDSH02 /V /W « Bonjour Hicham, n’oublie pas la réunion de 16h ! »

L’accusé de réception est affiché comme illustré dans l’image ci-après :

10

Notez qu’il est recommandé d’utiliser les deux paramètres /V et /W en même temps, ça vous permettra de voir les actions effectuées, depuis l’envoie du message jusqu’à réception de la réponse de l’utilisateur distant.