none
Forcer la fermeture de toutes les sessions RDP d'un serveur RDS à une heure donnée RRS feed

  • Question

  • Bonjour,

    Je gère une ferme de 3 serveurs RDS. Je voudrai que toutes les sessions utilisateur soient fermées à une heure donnée (pour les sauvegardes). Je suppose que c'est possible via un script Powershell. J'ai trouvé la commande "reset session", mais je n'arrive pas à la faire fonctionner pour toutes les sessions actives de ma ferme RDS (ou tout du moins sur un serveur) J'ai aussi trouvé aussi un module PSTerminalServices (d'un projet Open source CASSIA) que je connais pas.

    Bref, je cherche une solution qui a déjà fait ses preuves.

    Merci pour vos conseils.

    David.

    jeudi 17 juillet 2014 14:48

Réponses


  • Bonjour,

    Il est possible  de visualiser, déconnecter et arrêter des sessions RDP sur un serveur distant via Powershell. En utilisant les commandes:

    Get-TerminalSession
    Disconnect-TerminalSession
    et
    Stop-TerminalSession

    ces commandes sont disponible avec l'ajout de PowerShell Community Extensions (PSCX) disponible ici

    • Marqué comme réponse Florin Ciuca mardi 22 juillet 2014 10:24
    jeudi 17 juillet 2014 15:18
  • Bonjour,

    On peut imaginer le script batch suivant :

    ======================================================================

    REM ## Visualisation & Export des users connectés avant déconnexion | voir fichier ListRDUsers.txt dans C:\ ##

    query user /server:NOM_SRV_RDS>C:\ListRDUsers.txt 

    REM ## Déconnexion de toutes les sessions distantes actives ##

    logoff /server:NOM_SRV_RDS ID_DE_LA_SESSION | e.i logoff /server:SRVTSE01 1 && logoff /server:SRVTSE01 2 

    =======================================================================

    Une fois le script batch créé, tu peux créer une tâche planifié pour le lancer /l'exécuter à une heure précise.

    Tu peux faire la même chose avec un script PS1 (PowerShell) en utilisant les cmdlettes : 

    > Disconnect-TerminalSession

    > Stop-TerminalSession

    Si bien évidemment le PSCX est présent sur chaque serveur RDS.

    A+
    HK.


    Hicham KADIRI | Just Another IT Guy




    vendredi 18 juillet 2014 18:57

Toutes les réponses


  • Bonjour,

    Il est possible  de visualiser, déconnecter et arrêter des sessions RDP sur un serveur distant via Powershell. En utilisant les commandes:

    Get-TerminalSession
    Disconnect-TerminalSession
    et
    Stop-TerminalSession

    ces commandes sont disponible avec l'ajout de PowerShell Community Extensions (PSCX) disponible ici

    • Marqué comme réponse Florin Ciuca mardi 22 juillet 2014 10:24
    jeudi 17 juillet 2014 15:18
  • Bonjour,

    On peut imaginer le script batch suivant :

    ======================================================================

    REM ## Visualisation & Export des users connectés avant déconnexion | voir fichier ListRDUsers.txt dans C:\ ##

    query user /server:NOM_SRV_RDS>C:\ListRDUsers.txt 

    REM ## Déconnexion de toutes les sessions distantes actives ##

    logoff /server:NOM_SRV_RDS ID_DE_LA_SESSION | e.i logoff /server:SRVTSE01 1 && logoff /server:SRVTSE01 2 

    =======================================================================

    Une fois le script batch créé, tu peux créer une tâche planifié pour le lancer /l'exécuter à une heure précise.

    Tu peux faire la même chose avec un script PS1 (PowerShell) en utilisant les cmdlettes : 

    > Disconnect-TerminalSession

    > Stop-TerminalSession

    Si bien évidemment le PSCX est présent sur chaque serveur RDS.

    A+
    HK.


    Hicham KADIRI | Just Another IT Guy




    vendredi 18 juillet 2014 18:57