Forum général.cherche-logiciel Prise de main à distance

Posté par  . Licence CC By‑SA.
Étiquettes :
3
6
jan.
2021

Bonjour,

il m'arrive de faire du dépannage à distance d'amis qui sont sous mac ou linux. Ces machines sont sous UNIX, et elles ont un serveur ssh, ce qui m'aide pas mal. Par contre, les amis peinent beaucoup à faire une redirection de port de leur box vers leur machine. Et deuxième problème, ils sont toujours un peu frileux de laisser un mdp root à un "ami qui veut du bien" qui fait des trucs qu'ils ne voient pas.

Bref, j'aimerai simplifier tout ça. Voilà comment je vois le truc:

Chez moi, je met une redirection de port sur une machine bastion (easy).
L'ami se connecte sur cette machine bastion (ssh? mais je veux pas non plus qu'il puisse se promener sur mon bastion)
L'ami partage une session screen (ou autre)
Je me connecte sur mon bastion et je prends la main sur la session screen.
--> L'ami voit ce que je fais, il peut lui aussi taper des commandes.

Mais cette belle idée se heurte à une réalité -> comment faire? Car si l'ami se connecte au bastion, alors je verrai la session du bastion? Ou alors faut faire un tunnel inverse?

Quelqu'un a une idée?

Merci

  • # un bastion avec un VPN

    Posté par  . Évalué à 3.

    tu installes ton bastion à l'extérieur de chez tout le monde
    chacun à un compte VPN qui fournit une IP fixe au client VPN

    de là tu peux régler le firewall pour que le flux ne passe qu'à ton initiative vers les clients mais pas entre les clients, ou du client vers chez toi.

    tu peux alors ouvrir un ssh vers chez ton pote,
    ou carrément un VNC/screensharing (version OSX de VNC) pour voir son écran.

    • [^] # Un bastion avec SSH ?

      Posté par  (site Web personnel) . Évalué à 5. Dernière modification le 06/01/21 à 14:13.

      Un des soucis avec screen est qu'il supporte le multi-utilisateur, mais on se retrouve assez vite embêté si les réglages des émulateurs de terminaux sont différents (fenêtres qui apparaissent tronquées), et c'est potentiellement un peu pénible à mettre en place (pas utilisé récemment, mais je crois me souvenir que screen a besoin de droits supplémentaires pour autoriser :multiuser on, :acladd $user, etc.).

      Ce qui a bien marché dans le cadre d'un dépannage lors d'une visio de type LUG :

      • L'utilisateur se connecte sur une machine extérieure en SSH et établit un tunnel SSH dans le sens inverse. L'accès à cette machine extérieure peut être restreint par exemple en filtrant sur l'adresse IP actuelle de l'utilisateur concerné. L'accès peut être limité par diverses options de configuration SSH spécifiques à cet utilisateur. L'utilisateur peut même être jetable.
      • Le débogueur se connecte sur cette même machine et utilise le tunnel SSH dans le sens inverse.
      • Le débogueur partage son écran via l'outil de visio choisi.

      Il suffit à l'utilisateur de couper sa connexion SSH vers la machine extérieure pour couper l'accès au débogueur, ce qui limite l'aspect « le débogueur a un accès permanent à la machine déboguée ». Bien évidemment, rien n'empêche le débogueur d'exploiter le tunnel existant pour déployer (potentiellement de manière automatisée, depuis une autre console non partagée par visio, etc.) une payload, mais bon…

      Pour établir le tunnel, par exemple :

      sudo apt install openssh-server wget
      wget https://une-machine-dont-les-logs-donneront-l-ip-au-débogueur-ou-bien-whatismyipaddress-ou-peu-importe.com
      ssh -R 12345:localhost:22 guest@la.machine.ssh
      

      Pour le débogueur, une fois connecté sur la.machine.ssh :

      ssh -p 12345 utilisateur@localhost
      

      et vérifier l'empreinte de clé comme habituellement.

      Si tu veux tout de même partager une session screen, la démarche sera similaire, avec soit l'utilisateur guest soit toi qui créez une session screen et l'autre qui le rejoint. Puis utiliser le tunnel inverse depuis cette session. L'avantage dans ce cas est que l'utilisateur peut taper son propre mot de passe, mais j'imagine que le débogueur, ayant accès à la machine, doit pouvoir épier la saisie du mot de passe…

      Debian Consultant @ DEBAMAX

  • # Sans bastion: tmate

    Posté par  . Évalué à 3.

  • # VNC/RDP over SSH/Wireguard

    Posté par  . Évalué à 2.

    Hello,

    J'avais eu cette problématique de prendre la main sur une machine distante linux et à l'époque j'étais passé par "VNC over SSH" en cherchant une solution similaire, je suis tombé sur ce tuto en Anglais pour "RDP over Wireguard"
    https://jphein.com/how-to-secure-windows-remote-desktop-rdp-with-wireguard-vpn/

    Sachant que c'est ton ami qui initie le serveur wireguard, il a la main sur ce composant et vu que c'est une prise en main via un outil graphique, il visualise ce que tu fais en temps réel.

    Personnellement j'utilise Teamviewer en version gratuite puisque c'est permis. Et bien que l'utilisant dans les règles, je suis des fois à 2 doigts de prendre un abonnement tellement ça fonctionne bien et c'est bien pensé (sur windows, tu peux fermer la session distante et changer d'utilisateur sans perdre la connexion par exemple)

    Julien_c'est_bien (y'a pas que Seb)

    • [^] # Re: VNC/RDP over SSH/Wireguard

      Posté par  . Évalué à 2.

      Moi aussi. Le reverse tunnel ssh…. c'est quand c'est moi qui y travaille.
      Sinon c'est TeamViewer. AweSun reste aussi à surveiller dans cette catégorie - mais pas encore de paquet Linux -, même si il me manque un peu de confiance.

    • [^] # Re: VNC/RDP over SSH/Wireguard

      Posté par  . Évalué à 3.

      sauf que le serveur wireguard sur le poste du "client",
      il faut quand meme qu'il fasse une ouverture de port sur sa box internet, ce qui n'était pas souhaité dans la question d'origine.

  • # reverse SSH

    Posté par  . Évalué à 2.

    ma famille se connecte sur mon PC qui a tous les port ouvert kivontbien sur la box avec une commande ssh kicabien aussi.

    et je 'remonte' la connexion avec mon ssh

    ssh -R 43022:localhost:22 leurpc@chezeux.local

    avec le temps, j'ai mis un rpi dedié à ce la.
    pour eux ils n'ont plus rien a configurer de leur coté

    • [^] # Re: reverse SSH

      Posté par  . Évalué à 2.

      ajoute un peu d'auto-ssh
      et leur machine quand elle s'allume, ouvrira automatique le SSH vers chez toi, et activera un port reverse de chez toi vers chez eux.

  • # Meshcentral

    Posté par  (site Web personnel) . Évalué à 4.

    Dans mon cadre de mon activité pro, je suis amené à faire du support utilisateur (multiOS) et à devoir me connecter sur des serveurs microsoft.

    Faute de mieux, j'ai longtemps utilisé teamviewer mais je pense avoir trouvé son équivalent en libre: meshcentral

    • ça se déploie facilement (appli node)
    • ça se met à jour facilement
    • c'est libre.
    • c'est gratuit.
    • développement (ré)actif
    • ça marche avec un navigateur.
    • multiutilisateur avec gestion des droits (j'ai accès à tous les clients, mais client A n'a accès qu'aux postes du groupe "client A")
    • la connexion ne passe pas par un serveur tier.
    • il y a un client pour windows, mac et linux
    • il est possible d'installer l'agent en mode interactif (c'est l'utilisateur qui prend l'initiative de donner la main sur son poste) ou non (comme teamviewer host).

    Le seul gros bemol que j'ai c'est que le téléchargement de l'agent par un utilisateur non initié peut être compliqué car souvent intercepté par windows smartscreen.

    Mes 2¢

Suivre le flux des commentaires

Note : les commentaires appartiennent à celles et ceux qui les ont postés. Nous n’en sommes pas responsables.