Prise en main à distance
Pour effectuer des tâches de maintenance ou pour aider un utilisateur avec un "partage d'écran", il existe de nombreux outils parmi lesquels ceux présentés dans ce billet. Ils nécessitent généralement de connaître des informations sensibles sur la machine à prendre en main à distance :
son adresse MAC ou son adresse IP,
un code "administrateur"ou un code utilisateur.
Ce sont ces informations qui délimitent la nature des interventions possibles.
0. QQ utilitaires indispensables :
mRemoteNG ( http://www.mremoteng.org/) :
Ce logiciel permet par exemple de :
gérer de multiples connexions à des ordinateurs distants à travers divers protocoles de communication :
RDP (pour utiliser l'outil "bureau à distance") ;
VNC (partage d'écran) ;
Http ;
SSH ;
....
scanner le réseau (et les ports...)
http://quick-tutoriel.com/mremoteng-excellent-gestionnaire-connexions-distance/
conEmu (http://sourceforge.net/projects/conemu/) :
Ce logiciel présente des terminaux de commande (console) dans des onglets.
WakeOnLine de Dipisoft (https://www.dipisoft.com) :
Ce logiciel permet le réveil à distance d'un (ou plusieurs) PC. Tenez compte des conditions qui permettent le réveil à distance, signalées sur la documentation oficielle. Il faut, par exemple, que le bios de l'ordinateur à démarrer autorise un réveil à distance (voir un exemple d'utilisation au paragraphe 1 de ce billet)
Pstools (https://technet.microsoft.com/fr-fr/sysinternals/bb896649.aspx) :
FePsTools (une interface graphique pour les outils PsTools) : http://www.davitools.com/fepstools/
psexec.exe : exécution sur le PC distant du programme passé en paramètre ;
(voir un exemple d'utilisation au paragraphe 3 de ce billet)psservice.exe : gestion des services sur le poste distant
psshutdown.exe : arrêter ou rédémarrer le PC distant.
psshutdown -s \\192.168.1.30 arrête le PC d'adresse IP 192.168.1.30
psshutdown -r \\192.168.1.30 redémarre le PC d'adresse IP 192.168.1.30
Wapt : les articles du site sur Wapt et la documentation officielle
Installation de logiciels sous Windows mais à la mode de gestion des paquets "linux" (WAPT: Windows Apt)
Bat_to_Exe_Converter (http://www.f2ko.de/en/b2e.php) :
Comme son nom l'indique "convertir des scripts (bat - cmd) en exécutable. Très utile pour automatiser l'exécution de script.
1. Démarrer la machine distante
Pour cette action, il est indispensable de connaître l'adresse MAC de la carte réseau de la (des) machine(s) distante(s).
Lancer le programme "WakeOnLan.exe".
Celui-ci permet de gérer la liste des PC du réseau.
Dans l'onglet correspondant à l'emplacement du (des postes) à démarrer (éteindre), sélectionnez les postes puis effectuez un clic droit pour afficher la liste des actions possibles.
Dans notre cas, cliquez sur Reveiller(WOL).
2. Vérifier l'ouverture des ports associés aux protocoles de prise en main distante :
J'utilise habituellement les protocoles RDP (Remote Desktop Protol) pour le "bureau à distance" et VNC (Virtual Network Computing) pour un partage d'écrans.
Les ports habituels de ces protocoles sont :
RDP : 3389
VNC : 5900
Pour vérifier que ces ports sont ouverts, lancer l'outil "scan de port" de mRemoteNG.
Sur l'image jointe au chapitre 3, on peut observer que le PC "cdt.home" est accessible en prise en main à distance à travers le protocole RDP. Ce n'est pas le cas des 2 autres machines
3. Ouvrir un port fermé
Ouverture du port 3389 (à distance)
Dans un onglet de "conEmu", taper la commande :
psexec.exe \\192.16.1.14 -u administrateur -p p****** cmd -accepteula
Cette commande a pour effet d'ouvrir dans l'onglet de "conEmu", un terminal qui s'exécute sur le poste dont l'IP est 192.168.1.14
Le répertoire (pwd) de la machine distante sur lequel on est positionné est le répertoire système ( %windir% - habituellement windows\system32). Il faut bien sûr connaître le mot de passe d'un compte "administrateur" du PC à prendre en main. Ce mot de passe figure comme argument du paramètre -p (ici le mot de passe est donc p******).
Taper alors la commande :
reg add "HKEY_LOCAL_MACHINE\SYSTEM\
CurrentControlSet\Control\Terminal Server"
/v fDenyTSConnections /t REG_DWORD /d 0 /f
Après quelques secondes, un nouveau "scan de port" nous montrera que le port est bien ouvert
4. Créer une "connexion RDP" dans mRemoteNG :
Pour la création d'une connexion, je vous renvoie sur ce billet ou sur le tutoriel signalé plus haut pour la création de cette connexion.
Observez l'image jointe pour configurer votre connexion en complétant dans le fenêtre configuration :
PC (ou serveur) ciblé :
adresse IP
ou son nom complet dans le domaine
Authentification :
nom d'utilisateur
mot de passe
Protocole de communication
RDP pour un accès "bureau à distance"
port habituel : 3389
Quelques astuces :
Dans l'item "affichage", nommer votre panneau (ici : RDP-f102) car tous les panneaux portant le même nom s'ouvre dans un même onglet de "mRemoteNG".
Dans l'item "rediriger", passer l'option "lecteurs de disque" à "oui" pour permettre le couper-coller avec l'explorateur de fichiers depuis un lecteur local vers le lecteur distant.
5. Installer le lecteur tigthVnc en bureau à distance :
Dans mRemoteNG, ouvrir une connexion en RDP vers le PC choisi pour y installer le programme "tightVNC". Pour ma part, j'installe systématiquement sur tous les postes du réseau :
un client "Wapt" ;
un "paquet tightVNC".
Lorsque "TightVnc" est installé. Cliquer sur son icône de la barre des tâches pour créer vos mots de passe.
Vous pouvez maintenant dans "mRemoteNG", créer une connexion par "VNC" pour ce poste en procédant comme indiqué au paragraphe 3, mais en stipulant cette fois "VNC" comme protocole de communication.
Cette connexion permettra, en fonction de la configuration "incomming viewer connections" de tigthVNC" du poste ciblé de :
visualiser l'écran des utilisateurs sans interaction possible ;
visualiser l'écran des utilisateurs et de prendre en main (souris, clavier, ...). Cette situation est souvent nommée "partage d'écran".
Notes :
Quelques commandes utiles, à utiliser dans le terminal s'exécutant sur le poste distant :
sc pour les services
sc query
netsh winhttp show proxy
netsh interface ipv4 show interface (montre les index des cartes installées)
netsh interface ipv4 set interface [index] forcearpndwolpattern=enabled
ex : netsh interface ipv4 set interface 11 forcearpndwolpattern=enabled
net start
net stop
net use l: \\10.175.0.30\ public password /user:gob\ggal