La Fibre
Télécom => Logiciels et systèmes d'exploitation => Linux => Discussion démarrée par: vivien le 11 octobre 2020 à 21:25:49
-
Tutoriel pour accéder à un PC Ubuntu à distance : VNC encapsulé dans SSH
Quelques exemples de cas où c'est bien pratique :
- Prendre le contrôle à distance de PC utilisés par des proches
- Accéder à distance un PC à votre domicile que vous laissé allumé (ou que vous allumez à distance par du wake on wan)
- Pour de l'aide au devoirs, cela permet de travailler à deux sur un même poste (l’élève en local, et le maître à distance).
- Pour l’accès à distance à une application spécifique, qui ne peut se lancer que sur le PC distant.
Ce tutoriel vous y aider à le faire simplement et de façon sécurisé : La connexion VNC est encapsulée et chiffrée dans un tunnel SSH.
Le serveur VNC est déjà installé sur Ubuntu, il faut juste l'activer.
Le client VNC et le client SSH est déja installé sur Ubuntu
=> Le seul logiciel à installer et le serveur SSH.
Schéma de ce que le nous allons réaliser :
(https://lafibre.info/testdebit/ubuntu/202010_vnc_deporter_ecran_via_ssh.png)
-
Installation et configuration sur le PC distant, celui sur lequel vous souhaiter prendre le contrôle à distance
Étape N°1 : Activation du serveur VNC
Lancer les paramètres d'Ubuntu :
(https://lafibre.info/testdebit/ubuntu/menu_parametres.png)
Dans le menu "Partage", cliquer sur "Partage d'écran" :
(https://lafibre.info/testdebit/ubuntu/202010_activation_vnc_pc_distant_1.png)
- Cocher la case "Autoriser les connectés à contrôler l'écran" (si cette cas n'est pas cochée, c'est ce sera juste une partage d'écran sans possibilité de contrôler le clavier / souris).
- Cocher la case "Demander un mot de passe" si vous souhaitez pouvoir vous connecter sans avoir une validation locale. Le mot de passe fait au maximum 8 caractères. Ce n'est pas problématique d'avoir un mot de passe faible, car VNC sera protégé par le mot de passe de SSH (il faut les deux pour pouvoir se connecter).
- Activer le partage sur le réseau proposé.
(https://lafibre.info/testdebit/ubuntu/202010_activation_vnc_pc_distant_2.png)
C'est fait, il est possible de se connecter à votre poste, mais uniquement depuis le réseau local.
VNC écoute sur le port 5900. Dans le passé pour rendre possible une connexion depuis Internet, on aurait juste à ouvrir le port 5900 sur la box. Aujourd'hui cette option est dangereuse et n'est pas permis par le serveur intégré dans Ubuntu: il ne répond qu'aux requêtes venant du réseau local.
On va donc passer par SSH pour transporter et sécuriser l’accès depuis Internet.
-
Étape N°2 : Installation de SSH serveur : SSHd
(https://lafibre.info/images/logo/logo_openssh.png)
Il faut ouvrir un Terminal (Le raccourci clavier : Ctrl +Alt + T) puis taper sudo apt install ssh
(https://lafibre.info/testdebit/ubuntu/202010_installation_ssh_1.png)
SSHd écoute maintenant sur le port 22.
Changement du port d'écoute pour plus de sécurité :
Même si c'est bien sécurisé, il est préférable de compliquer la tache aux hacker en se mettant pas sur le port par défaut : Je propose d'utiliser le port 2222, mais vous pouvez bien sur utiliser le port de votre choix.
Je déconseille d'utiliser les 1024 premiers ports, qui sont réservés à certains usages.
Je déconseille d'utiliser la plage du port 32768 au port 60999, utilisée par les ports "clients" ou "ports éphémères".
=> Croissiez votre port SSH entre le port 1025 et le port 32767 + entre le port 61000 et le port 65535
Pour configurer le changement de port deux solutions :
- La mauvaise solution : Modifier le fichier /etc/ssh/sshd_config, mais lors de la mise à jour vers une prochaine version de SSH, vous aurez un avertissement car Ubuntu souhaite remplacer le fichier de configuration par le nouveau. C'est donc une solution à éviter.
- La bonne solution : Créer un nouveau fichier /etc/ssh/sshd_config.d/port.conf avec uniquement la directive Port 2222. Ce fichier sera pris en compte et ne sera pas modifié lors d'une mise à jour.
Pour configurer le port d'écoute 2222 pour SSHd, copier / coller ces deux lignes :
echo "Port 2222" > port.conf
echo "# Forcer un échange toutes les 4 secondes, pour éviter la déconnexion derrière un NAT" >> port.conf
echo "ClientAliveInterval 4" >> port.conf
echo "ClientAliveCountMax 22" >> port.conf
sudo mv port.conf /etc/ssh/sshd_config.d/
(https://lafibre.info/testdebit/ubuntu/202010_installation_ssh_2.png)
La modification sera pris en compte après le prochain redémarrage du PC.
-
Étape N°3 : Configurer votre le NAT IPv4 de votre box pour ouvrir le port 2222 vers votre PC Installation de SSH server :
Cette étape dépend de votre box. Il faut généralement aller dans le menu "Transfert de ports" qui peut se situer dans les "Paramètres avancés".
On vous demande de renseigner quelques cases :
- Nom : C'est pour vous souvenir à quoi correspond cette règle. Mettez ce que vous souhaitez
- Port de départ / Port de fin : Nous n'avons qu'un port à ouvrir, on met donc 2222 en port de départ et de fin
- Protocole : SSHd est uniquement en TCP, on se limite donc à TCP
- Adresse IP locale : C'est l'adresse de votre PC sur votre réseau local
(https://lafibre.info/testdebit/ubuntu/202010_installation_ssh_4.png)
L'Adresse IP local se récupère en allant dans les Paramètres d'Ubuntu, puis dans "Réseau" pour une connexion filaire ou "Wi-Fi" pour une connexion Wi-Fi
Il faut ensuite cliquer sur l’icône paramètre située à droite de la carte réseau / Wi-Fi utilisée
(https://lafibre.info/testdebit/ubuntu/icone_parametres.png)
On arrive sur une fenêtre de ce type où l'adresse IP locale est ici 192.168.0.20. C'est cette IP qu'il faut indiquer sur votre routeur.
(https://lafibre.info/testdebit/ubuntu/202010_installation_ssh_3.png)
Je rajouterai ultérieurement des copie d'écran pour d'autre type de box.
-
Configuration sur le PC Ubuntu local, celui depuis lequel vous aller vous connecter
On utilise Remmina, logiciel installé de base dans Ubuntu.
Si vous n'avez pas Ubuntu d'installé, il est possible de faire la prise de contrôle depuis un clé USB bootable Ubuntu : Remmina est disponible !
(https://lafibre.info/images/logo/logo_remmina.png)
Étape N°1 : Configuration de Remmina
Quand on lance Remmina, on arrive sur cette interface qui liste les connexions à distance déjà crées.
(https://lafibre.info/testdebit/ubuntu/202010_vnc_configuration_remmina_1.png)
- Point N°1: Pour créer une nouvelle connexion, il faut cliquer sur l’icône 1 située tout en haut à gauche.
On arrive sur la fenêtre ci-dessous :
(https://lafibre.info/testdebit/ubuntu/202010_vnc_configuration_remmina_2.png)
- Point N°2 : C'est un nom pour décrire votre connexion, afin de la retrouver ensuite. Indiquez ce que vous souhaitez.
- Point N°3 : Le protocole proposé par défaut est RDP, c'est le protocole pour se connecter à un PC Windows. Dans notre cas il faut prendre le "Greffon VNC pour Remmuna".
- Point N°4 : La connexion se fait sur ::1 (IPv6 locale) car SSH nous expose la connexion sur localhost. A noter que ::1 fonctionne même si vous n'avez pas d’accès à l'internet IPv6.
- Point N°5 : C'est le mot de passe du serveur VNC, celui qui est limité à 8 caractères.
- Point N°6 : Si le PC dont vous prenez le contrôle à une connexion à Internet en fibre optique, avec un bon débit montant, vous pouvez préférer avoir un affichage de qualité en mettant 65536 couleurs (16 bits par pixels) et une qualité de compression "Bonne".
- Point N°7 : Une fois ces réglages réalisés, passez sur l’onglet "Tunnel SSH"
L'onglet Tunnel SSH : (copie d'écran avec Ubuntu 20.04 LTS)
(https://lafibre.info/testdebit/ubuntu/202010_vnc_configuration_remmina_3.png)
- Point N°8 : Activer le tunnel SSH. Remina va utiliser SSH pour encapsuler la connexion VNC. SSH client est déjà installé sur Ubuntu : il n'y a rien à installer pour que cela fonctionne.
- Point N°9 : IPv4 publique ou IPv6 du PC que vous prenez le contrôle. Si l'IPv4 publique change et que votre interlocuteur ne la connaît pas, demandez lui de vous dire quelle est l'IPv4 publique affichée sur la page http://ip.lafibre.info/
L'IP est suivie d'un deux-points, puis du port où écoute SSHd, 2222 dans notre exemple.
- Point N°10 : Le nom d'utilisateur est ici le nom d'utilisateur sur le PC Ubuntu distant, celui qui est utilisé pour monter la connexion SSH.
- Point N°11 : C'est le mot de passe sur le PC distant associé au nom d'utilisateur. Il est conseillé de mettre un mot de passe fort, plus de 8 caractères. Contrairement au mot de passe du serveur VNC, là il n'y a pas de limite. Si vous avez du mal à vous y retrouver, c'est le mot de passe demandé pour passer super-utilisateur sur le PC distant.
- Point N°12 : Cela enregistre et va se connecter dans la foulée.
Avec Ubuntu 22.04 LTS, la disposition est légèrement différente. Le choix du type d'authentification se fait avant le nom de l'utilisateur :
(https://lafibre.info/testdebit/ubuntu/202201_vnc_configuration_remmina_3.png)
-
Étape N°2 : Connexion avec Remmina
Une fois la connexion configurée, elle est listée dans la fenêtre et il suffit de double cliquer pour se connecter :
(https://lafibre.info/testdebit/ubuntu/202010_vnc_connexion_remmina_1.png)
Si le mot de passe rentré n'est pas le bon, Remmina va vous proposer de re-essayer.
Ne vous trompez pas de mot de passe !
Si c'est cette fenêtre, c'est le mot de passe pour le serveur SSH, donc le mot de passe demandé pour passer super-utilisateur sur le PC distant :
(https://lafibre.info/testdebit/ubuntu/202010_vnc_connexion_remmina_2.png)
Si c'est cette fenêtre, c'est le mot de passe pour le serveur VNC, le mot de passe limité à 8 caractères, rentré dans la fenêtre "Partage d'écran" d'Ubuntu.
(https://lafibre.info/testdebit/ubuntu/202010_vnc_connexion_remmina_3.png)
N'oubliez pas de cocher la case "Enregistrer le mot de passe" si vous souhaitez ne pas avoir à rentrer un de deux mot de passe (ou les deux) les prochaines fois.
La connexion s'étable et vous avez l'écran du PC distant :
(https://lafibre.info/testdebit/ubuntu/202010_vnc_connexion_remmina_4.png)
Une notification informe l'utilisateur qui est éventuellement devant l'ordinateur que vous contrôlez son ordinateur. Vous êtes identifié comme "IPv6-localhost" car avec SSH, la demande se fait depuis l'ordinateur local (VNC ne sait pas que cela a été transporté par SSH)
-
Que faire si vous avez le message "VNC server closed connexion" ?
(https://lafibre.info/testdebit/ubuntu/202010_vnc_connexion_remmina_echec.png)
Si vous avez ce message, cela signifie que la connexion SSH sur le PC distant a bien fonctionné et vous pouvez déjà transférer des fichiers avec FileZilla (voir l'explication ci-dessous) ou vous connecter en ligne de commande.
Ce qui ne fonctionne pas, c'est VNC server, le process n'écoute pas sur le port 5900.
La cause la plus fréquente, c'est la connexion a été modifiée et que le PC distant n'est plus connecté au même réseau Wi-Fi.
En effet, pour des raisons de sécurité, il faut activer le partage d'écran, connexion par connexion. Ainsi si vous vous connecter sur un hotspots wi-fi gratuit, il ne sera pas possible à un attaquant d'essayer de trouver le mot de passe de VNC, vu qu'il n'écoutera pas sur la connexion.
Ci-dessous, on voit que la partage de connexion est activé pour le réseau Wi-Fi "IPv6forever" mais que le PC est connecté au réseau WiFi "Jacques_2Ghz" et que le partage d'écran n'est pas activé sur ce réseau Wi-Fi.
Il faut donc demander à votre interlocuteur d'activer le partage d'écran sur le réseau utilisé :
(https://lafibre.info/testdebit/ubuntu/202010_activation_vnc_pc_distant_wifi_1.png)
Si vous souhaitez complètement désactiver le partage d'écran, il faut retirer l'autorisation pour tous les réseau que vous avez autorisé, un à un.
Pour le réseau actuel c'est un commutateur et pour les autres réseaux, une petite croix en forme de "x" sur laquelle il faut cliquer pour supprimer le partage :
(https://lafibre.info/testdebit/ubuntu/202010_activation_vnc_pc_distant_wifi_2.png)
-
PC avec connexion automatique (pas besoin de saisir de mot de passe quand on l'allume) : Que faire si le mot de passe de VNC ne fonctionne pas après un redémarrage du PC ou qu'il vous demande de déverrouiller votre trousseau de clé ?
(https://lafibre.info/testdebit/ubuntu/202201_supprimer_mot_de_passe_trousseau_de_cles_0.png)
Ubuntu assure par défaut une bonne sécurité et confidentialité des données : Les mots de passes des différentes applications (exemple celui de Skype ou celui de VNC dans notre cas) ne sont plus stockés en clair dans un fichier de configuration, mais dans le "Trousseau de clés par défaut", une sorte de coffre sécurisé qui contient tous les mots de passe. Mais, pour être sécurisé, ce "coffre" a évidemment besoin lui-même d'un mot de passe et celui-ci ne doit être écrit nulle part sur le système.
Au démarrage de la session, si votre nom d'utilisateur et votre mot de passe vous sont demandés, c'est cette action qui va déverrouiller le trousseau de clés.
Si la connexion automatique est activée, Ubuntu se lance sans demander de mot de passe au démarrage de la session et le trousseau de clés n'est pas déverrouillé. VNC serveur, utilisé pour la prise de contrôle à distance n'a pas accès à son mot de passe et refuse les connexions.
Deux solutions sont possibles :
- Désactiver la connexion automatique et demander un mot de passe au démarrage de la session (à chaque démarrage de l'ordinateur)
- Stocker le "Trousseau de clés par défaut" en clair, ce qui est donc une perte de sécurité (la porte du coffre est ouverte), mais pour le contrôler un PC à distance, la sécurité est gérée par VNC et on pourrait même supprimer le mot de passe VNC si c'était autorisé (faites juste attention que le mot de passe utilisé par VNC ne soit pas utilisé autre part).
Stocker le "Trousseau de clés par défaut" en clair et cesser d'avoir des demandes pour déverrouiller le trousseau de clés
La solution est simple : il faut supprimer le mot de passe du trousseau de clés.
Cliquer sur le menu Ubuntu pour afficher toutes les applications. Cherchez l'application "Mot de passe et clés" qui est préinstallé par défaut avec Ubuntu.
(https://lafibre.info/testdebit/ubuntu/202201_supprimer_mot_de_passe_trousseau_de_cles_1.png)
Il vous indique que "Le trousseau est verrouillé". Cliquer sur "Déverrouiller"
(https://lafibre.info/testdebit/ubuntu/202201_supprimer_mot_de_passe_trousseau_de_cles_2.png)
Votre mot de passe vous est demandé :
(https://lafibre.info/testdebit/ubuntu/202201_supprimer_mot_de_passe_trousseau_de_cles_3.png)
Le "Trousseau de clés par défaut" est déverrouillé et laisse apparaître les différentes applications qui ont stockés un mot de passe (ci-dessous uniquement VNC).
On utilise a flèche en haut à gauche pour revenir à l'écran listant tous les trousseaux.
(https://lafibre.info/testdebit/ubuntu/202201_supprimer_mot_de_passe_trousseau_de_cles_4.png)
Cliquer avec le bouton droit sur le "Trousseau de clés par défaut"
Cliquer sur "Modifier le mot de passe"
(https://lafibre.info/testdebit/ubuntu/202201_supprimer_mot_de_passe_trousseau_de_cles_5.png)
Le système vous demande une dernière vois votre mot de passe :
(https://lafibre.info/testdebit/ubuntu/202201_supprimer_mot_de_passe_trousseau_de_cles_6.png)
Il vous demande le nouveau mot de passe. Pour stocker le "Trousseau de clés par défaut" en clair et cesser d'avoir des demandes pour déverrouiller le trousseau de clés, il ne faut pas mettre de nouveau mot de passe : on laisse les deux champs vides et on clique sur continuer.
(https://lafibre.info/testdebit/ubuntu/202201_supprimer_mot_de_passe_trousseau_de_cles_7.png)
Une alerte vous informe que la porte du coffre est ouverte et qu'une personne compétente connecté à votre PC sera en mesure de récupérer le contenu du trousseau de clés.
On cliquer sur continuer pour valider.
(https://lafibre.info/testdebit/ubuntu/202201_supprimer_mot_de_passe_trousseau_de_cles_8.png)
Il faut ensuite redémarrer l'ordinateur et l’accès à distance sera possible sans avoir besoin de rentrer le moindre mot de passe sur le PC, ce qui vous permet par exemple de le redémarrer à distance sans perdre la main.
-
Les options de Remmina pour être à l'aise dans une prise de contrôle à distance :
La seconde icône en haut à gauche permet de passer en plein écran.
(https://lafibre.info/testdebit/ubuntu/202010_remmina_legende_icones.png)
Une fois en plain écran, vous pouvez utiliser les icônes en haut pour revenir en mode fenêtré :
(https://lafibre.info/testdebit/ubuntu/202010_vnc_connexion_remmina_5.png)
Si vous avez un écran dans une résolution plus petite que celui sur lequel vous prenez la main (cas d'un PC portable qui prend la main sur un PC fixe), vous pouvez mettre à l'échelle automatiquement, via l’icône "Basculer en mode réduit", ce qui va permettre d'afficher tout l'écran (mais cela pourrait être difficilement lisible) :
(https://lafibre.info/testdebit/ubuntu/202010_vnc_connexion_remmina_6.png)
-
Et le transfert de fichier encapsulé dans SSH, c'est possible ?
Remmina intègre un client pour faire du transfert de fichier directement depuis Remmina, mais il est peu pratique.
Je vous conseille le logiciel FileZilla, qui est dans la logithèque Ubuntu.
(https://lafibre.info/testdebit/ubuntu/202010_filezilla_logiciel_ubuntu.png)
Pour l'installer deux solutions :
- Démarrer un terminal (Le raccourci clavier : Ctrl +Alt + T) puis taper sudo apt install filezilla
- Depuis la logithèque Ubuntu
La configuration se fait en un écran, depuis le menu "Fichier" => "Gestionnaire de Sites..." :
(https://lafibre.info/testdebit/ubuntu/202010_filezilla_configuration.png)
- Point N°1: Pour créer une nouvelle connexion, il faut cliquer sur Nouveau site
- Point N°2 : C'est un nom pour décrire votre connexion, afin de la retrouver ensuite. Indiquez ce que vous souhaitez.
- Point N°3 : Sélectionnez le protocole "SFTP - SSH File Transfert Protocol".
- Point N°4 : IPv4 publique ou IPv6 du PC que vous prenez le contrôle. Si l'IPv4 publique change et que votre interlocuteur ne la connaît pas, demandez lui de vous dire quelle est l'IPv4 publique affichée sur la page http://ip.lafibre.info/. Le port est celui où écoute SSHd, 2222 dans notre exemple.
- Point N°5 : L'identifiant est ici le nom d'utilisateur sur le PC Ubuntu distant, celui qui est utilisé pour monter la connexion SSH.
- Point N°6 : C'est le mot de passe sur le PC distant associé au nom d'utilisateur. Si vous avez du mal à vous y retrouver, c'est le mot de passe demandé pour passer super-utilisateur sur le PC distant.
- Point N°7 : Une fois terminé vous pouvez valider pour enregistrer les paramètres.
La connexion se fait depuis le menu "Fichier" => "Gestionnaire de Sites...".
Cliquer sur "Connexion"
Il est possible d’enregistrer plusieurs "Sites" qui sont autant de PC sur lequel SSHd est installé. (il n'est pas nécessaire d'avoir VNC d'activé pour faire un transfert de fichier : cela utilise directement les capacités de SSHd.
Cet tutoriel et les captures d'écran qui l'illustrent sont publiés sous la licence Creative Commons CC BY-SA 4.0 (https://creativecommons.org/licenses/by-sa/4.0/deed.fr), afin de permettre une large diffusion (il suffit de citer l'auteur, Vivien GUEANT et de mettre un lien vers ce tutoriel).
Tutoriel pour comprendre comment reprendre un contenu CC BY-SA 4.0 (https://lafibre.info/forum/creative-commons/).
-
Et pour prendre le contrôle d'un PC Ubuntu (VNC encapsulé dans SSH) depuis Windows 10 ?
Je n'ai pas eu ce besoin, mais pour ce tutoriel, j'ai cherché une solution simple, équivalente à Remmina sous Ubuntu et je ne l'ai pas trouvé.
J'ai bien trouvé un client VNC sous Windows qui propose la connexion sur SSH : TightVNC Java Viewer
Son problème ? Cela ne fonctionne pas, je n'ai jamais réussi à me connecter.
Si vous savez comment résoudre ce problème, je suis preneur.
(https://lafibre.info/testdebit/windows10/202010_vnc_over_ssh_windows10_2.png)
L'installation se fait en téléchargeant TightVNC Java Viewer sur https://www.tightvnc.com/download.php
Attention à bien prendre la version Java, TightVNC for Windows, la version standard peut se connecter à VNC, mais en direct. Il ne sait pas monter automatiquement un tunnel SSH.
Comme c'est un client Java, il faut également installer Java SE (160 Mo !) qui est disponible sur https://www.oracle.com/java/technologies/javase-downloads.html
Je suis preneur de solutions pour faire fonctionner ce client over ssh ou en avoir un autre.
Une autre solution est de monter le tunnel SSH depuis une invite de commande de Windows 10.
Depuis la mise à jour Fall Creators Update, Windows 10 intègre un client OpenSSH vous permettant de vous connecteur à un serveur SSH, sans avoir besoin d'installer Putty.
Voici les étapes à suivre pour installer le client SSH de Windows 10 :
- Dans le menu démarrer, recherchez « Fonctionnalités facultatives »
- Si le client OpenSSH n’est pas déjà présent, choisissez alors « Ajouter une fonctionnalité ».
- Sélectionner le Client OpenSSH et cliquez sur installer
Mais là aussi, j'ai utilisé la ligne de commande qui fonctionne très bien sous Ubuntu, mais pas de redirection du flux VNC sur la machine (la connexion SSH fonctionne très bien)
(https://lafibre.info/testdebit/windows10/202010_vnc_over_ssh_windows10_1.png)
Si vous avez une solution pour faire la même chose sous Windows 10, je suis preneur.
-
Un oeil la dessus, avec un proxy socks.
https://www.tuteurs.ens.fr/internet/loin/tunnel.html
-
ca fait pas mal de manip quand meme...
sinon y'a Teamviewer ...
sinon pour le client , y'a novnc qui permet d'accéder a un hote distant vnc via un interface web:
sudo apt install novnc
websockify -D --web=/usr/share/novnc/ 6080 localhost:5900 #ajuster le port a celui du vnc local
# ou voir /usr/share/novnc/utils/launch.sh
(on peut faire plus propre avec des certificats et une installation systemd ou via un daemon snap https://github.com/novnc/noVNC#quick-start )
Ensuite depuis une machine distante: http://ip:6080 depuis un navigateur web
Pour de l'accès occasionnel ca suffit largement et pas besoin d'installer quoique ce soit coté client.
Plutot que des tunnels ssh, perso j'utilise tailscale.com pour mettre un VPN P2P entre machines (ca évite d'ouvrir un port sur le router/box) et plus besoin de tunneler des services dans ssh (donc pas de sécu ssh a gerer). et je limite les binding importants a l'interface vpn (surtout quand y'a ipv6).
exemple entre 2 machines (on peut en avoir jusqu'a 100 gratuitement):
(https://i.imgur.com/iFFYy6M.png)
et vnc client vers les ip vpn.
la prochaine maj de tailscale intègrera un dns local pour utilise les noms de machines plutot que leur IP.
l'installation de tailscale sur chaque machine (linux, mac, windows, android, ios) est ultra simple.
sur ubuntu:
curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/eoan.gpg | sudo apt-key add -
curl -fsSL https://pkgs.tailscale.com/stable/ubuntu/eoan.list | sudo tee /etc/apt/sources.list.d/tailscale.list
sudo apt-get update
sudo apt-get install tailscale
sudo tailscale up
Cela affiche une url pour s'authentifier une fois et c'est terminé la machine est en VPN avec les autres (vpn en maillage P2P direct un a un).
-
Merci pour vos retours.
Un oeil la dessus, avec un proxy socks.
Oui, j'ai déjà fait un tunnel SSH avec Putty, mais c'est relativement complexe et demande deux logiciels externe (vs la solution en un clic d'Ubuntu).
SSH étant maintenant intégré avec Windows 10, j'imaginais des solutions plus simples.
Là, le boot sur ue clé bootable Ubuntu es encore plus simple.
sinon y'a Teamviewer ...
Il supporte VNC over SSH ? Il me semble qu'il ne peut se connecter que si le PC distant a installé le logiciel propriétaire.
Cela me semble problématique d'installer un logiciel propriétaire sur tous les Ubuntu pour un beoin rare de prise de controle depuis Windows.
y'a novnc qui permet d'accéder a un hote distant vnc via un interface web:
J'ai l'impression que cela expose bien plus de code que d'avoir uniquement SSH ouvert sur le PC client (dans mon tutoriel, VNC n'écoute que sur localhost).
Autre point problématique, le mot de passe est transmis en clair.
Plutot que des tunnels ssh, perso j'utilise tailscale.com pour mettre un VPN P2P entre machines (ca évite d'ouvrir un port sur le router/box) et plus besoin de tunneler des services dans ssh (donc pas de sécu ssh a gerer). et je limite les binding importants a l'interface vpn (surtout quand y'a ipv6).
Cette solution semble très intéressante.
Le point négatif que je vois, c'est que cela semble prendre plus de ressource ram (j'aide des utilisateurs qui ont souvent de vieux PC, avec souvent peu de ram)
-
J'ai l'impression que cela expose bien plus de code que d'avoir uniquement SSH ouvert sur le PC client (dans mon tutoriel, VNC n'écoute que sur localhost).
Autre point problématique, le mot de passe est transmis en clair.
avec novnc, VNC peut n'écouter que sur localhost aussi.
novnc c'est un client vnc en javascript qui tourne donc localement dans ton navigateur et accède au serveur vnc via un websocket. pour ce faire coté serveur on fait donc tourner un petit daemon qui fait une sorte de proxy vnc/websocket ( https://github.com/novnc/websockify )
client http ou https -> websockify -> protocol vnc -> vnc server
websockify a une option pour passer en https car effectivement si on n'a pas de vpn il faut chiffrer sinon le mot de passe vnc passe en clair.
Dans tous les cas, le problème de ton tuto a mon avis c'est l'étape 3: ouvrir un port dans la box. que ce soit pour ssh ou pour novnc. Ce n'est pas forcement toujours possible ou même souhaitable.
Il y a plusieurs solutions:
- un vpn P2P avec 'NAT traversal' comme tailscale.
- un produit comme TeamViewer
- initier le tunnel SSH depuis le serveur VNC mais ca suppose la présence d'un humain devant pour faire cela et ca suppose que le client VNC soit un serveur SSH accessible (on déplace donc le probleme d'ouverture du port dans la box coté client). on peut éventuellement faire un script qui ouvre le tunnel au boot et le maintient (keepalive) mais c'est pas forcement souhaitable.
- utiliser upnpc pour ouvrir le port via UPnP-IGD : pas forcement possible ou actif sur toutes les box/routeurs.
- autre solution que je ne connais pas
Pour le client VNC Window 10 j'utilise l'extension "VNC Viewer for Google Chrome" qui marche encore sinon y'a l'exécutable portable (fichier exe unique donc) VNC Viewer de RealVNC: https://www.realvnc.com/fr/connect/download/viewer/ (choisir 'standalone EXE ..').
Il y a également TigerVNC ( https://github.com/TigerVNC/tigervnc ) qui est open source et un fork de TightVNC. Binaire portable Windows: https://bintray.com/tigervnc/stable/tigervnc/1.11.0 (le dernier tout en bas)).
Je n'utilise pas TightVNC.
-
J'ai mon père, 79 ans, qui vient de se mettre au smartphone (Android).
Serait-il possible de lui installer un logiciel de prise de contrôle à distance de son Android, pour l'aider entre deux visites ?
-
Salut,
il y a quelques années j'utilisais Teamviewer de memoire. https://www.teamviewer.com/fr/solutions/acceder-et-assister-a-distance-les-appareils-android/
Je prenais bien le contrôle des smartphones depuis mon PC.
-
Merci, je vais tester.
-
Salut,
il y a quelques années j'utilisais Teamviewer de memoire. https://www.teamviewer.com/fr/solutions/acceder-et-assister-a-distance-les-appareils-android/
Je prenais bien le contrôle des smartphones depuis mon PC.
est-ce que quelqu'un connait une solution pour androidTV (idem que pour vivien => assistance distante à mes parents)
J'ai déjà essaye TeamViewer sans trop de succès. Je n'ai rien trouvé quand on n'a pas accès root...
-
J'ai oublié de faire un retour : Team Viewer sur Android répond bien à mon besoin.
Il faut par contre que la personne lance l’application pour pouvoir prendre le contrôle.
-
Pour accéder à distance à un PC avec Linux installé il y a aussi X2GO.
Présentation : https://wiki.x2go.org/doku.php/doc:newtox2go
L'installation du X2GO serveur est (à mon humble avis) super simple : https://wiki.x2go.org/doku.php/doc:installation:x2goserver
Idem pour le client X2GO (disponible sur plusieurs OS) : https://wiki.x2go.org/doku.php/doc:installation:x2goclient
C'est un logiciel libre : https://wiki.x2go.org/doku.php/sources:start
J'ai lu que parfois avec certain bureau graphique il peux y avoir des incompatibilités (https://wiki.x2go.org/doku.php/doc:de-compat), mais perso j’ai jamais eu aucun soucis. (j'utilise principalement XFCE)
-
C'est dommage que la documentation de mette pas en évidence les points fort de X2Go, vs la solution VNC proposée de base dans de nombreux systèmes Linux.
Les deux points faibles de la solution VNC encapsulé dans SSH c'est :
- Pas d'ouverture du flux via uPnP
- Pas de système simple pour récupérer l'IP Wan quand elle est dynamique
Quand j'aide des personnes âgées à distance et qu'il faut mettre en place l’accès à distance, ce sont ces deux points qui sont les plus difficiles.
-
Je suis tout à fait d'accord quand il s'agit de faire de l’assistance à distance.
Je pense également que les problématiques d''ip et uPNP sont principalement les raisons pour lesquelles des solutions comme Teamviewer sont "plus connues" du grand public (car cette solution utilise un serveur intermédiaire pour établir la connexion).
X2GO est, à mon avis, plutôt une solution pour la prise en main à distance avec un bureau graphique d'un PC Linux. (depuis un autre Linux, Windows, etc ...)
-
L'installation du X2GO serveur est super simple : https://wiki.x2go.org/doku.php/doc:installation:x2goserver
heu tout simple par rapport a quoi ? j'espere que tu compares pas a teamviewer ??
ouvrir un terminal et taper des lignes de commandes, desolé mais c'est tres tres tres loin d'etre 'simple'
-
heu tout simple par rapport a quoi ? j'espere que tu compares pas a teamviewer ??
ouvrir un terminal et taper des lignes de commandes, desolé mais c'est tres tres tres loin d'etre 'simple'
Je ne faisait aucune comparaison, j'ai juste trouvé cela simple. J'ai édité mon précédent message pour le spécifier.
-
Alternative libre à TeamViewer : DWService https://www.dwservice.net/
DWService permet de l'Accès à distance, Administration à distance, Support à distance
Il fonctionne sous Linux, Windows et MacOS (32/64 bits à chaque fois)
-
Une autre alternative:
Remotely: https://remotely.one/ compatible Windows/Linux, client et serveur Open-Source ( possibilité d'héberger son serveur de connexion).
ou bien Rustdesk: https://rustdesk.com/ Le client lui est open-source au contraire du serveur. Il y'a une implémentation libre du serveur de connexion mais celui-ci est très limité.
-
https://www.c-nergy.be/products.html
son script "xrdp-installer" (pour surfer via RDP evidemment ici pas VLC) marche bien ! et on a le retour du son si on met bien le parametre commandline "-s" à l'installation ;)