Salut à tous,
J'essaye vainement de me simplifier la vie pour mettre en place un
système d'assistance aux utilisateurs basé sur VNC et SSH. En fait,
pour être exact, la solution fonctionne, mais je n'arrive pas à la
réduire à une seule commande.
Mon ~/.ssh/config est correctement écrit pour créer un tunnel sécurisé
jusqu'à la machine de l'utilisateur, et je n'ai plus qu'à lancer:
ssh user@remotemachine 'x11vnc -localhost -display :0'
puis:
vncviewer localhost:5900
et tout fonctionne.
Mais je voulais aller plus loin et réduire le tout à une seule ligne,
en utilisant l'option "LocalCommand" de ssh, qui (théoriquement) lance
une commande quand la connection a réussi. J'ai d'abord ajouté:
"LocalCommand vncviewer localhost:5900"
ce qui n'a pas lancé vncviewer. Puis j'ai réalisé que peut-être x11vnc
n'était pas encore prêt à l'autre bout du tunnel quand vncviewer était
lancé. J'ai donc changé mon .ssh/config comme suit:
"LocalCommand sleep 5 && vncviewer localhost:5900"
mais ça ne marche pas mieux. Visiblement, en lançant ssh avec -vvv, je
vois que cette ligne du fichier de config est lue et acceptée, mais
pas moyen de savoir si vncviewer a été lancé ni qu'est-ce qu'il retourne
en cas d'échec.
Une idée, quelqu'un ? Ne serait-ce que pour diagnostiquer plus finement ?
Merci de votre intérêt pour ma question.
PS: Pas bien sûr que ça ait une influence quelconque, mais ma machine
fait tourner OpenBSD, et l'utilisateur est sous Debian.
--
Étienne