Forum Linux.général ssh et tmux

Posté par  . Licence CC By‑SA.
Étiquettes : aucune
0
26
avr.
2013

Bonjour,
J'ai l'habitude lorsque je me connecte en ssh à une machine de lancer tmux.
Et j'aimerai bien automatiser la chose. ssh host tmux ne fonctionne pas.

En cherchant un peu, j'ai trouvé les options

PermitLocalCommand yes
LocalCommand 'tmux'

Mais tant qu'à faire, j'aimerai autant ne plus avoir de shell intermédiaire
(je ne sais pas si je suis claire: quand je quitte tmux, j'aimerai me déconnecter en ssh).
De plus par défaut PermitLocalCommand est à false et ça ne me rassure pas.

j'ai alors trouvé la ligne de commande ssh -t host tmux qui correspond à mon besoin. Mais comme je suis flemmard, j'aimerai automatiser la chose.

Viens alors mon premier problème :
l'option

RequestTTY=yes

est l'équivalent de -t
mais quand je le met dans mon ssh_config, ssh host tmux ne fonctionne pas. À noter que ssh -o 'RequestTTY=yes' host tmux lui fonctionne.

Et mon deuxième problème, comment configurer ssh pour qu'il envoie automatiquement ma commande.

Évidemment, un alias host='ssh -t host "tmux a"' pourrait résoudre mon problème de même que

LocalCommand="tmux a && exit"

mais j'aurai aimé utiliser uniquement la configuration de ssh

  • # .profile ou équivalent ?

    Posté par  . Évalué à 1.

    Salut Étienne.

    Tu peux aussi utiliser avec profit les trucs idoines, de ton shell (.bashrc etc) ou lus par ton shell au login (.profile etc).

    Pour un sextumvirat ! Zenitram, Tanguy Ortolo, Maclag, xaccrocheur, arnaudus et alenvers présidents !

    • [^] # Re: .profile ou équivalent ?

      Posté par  . Évalué à 0.

      C'est ce à quoi je pensais lorsque j'ai proposé d'utiliser un alias.
      À moins que tu ne parle d'autre chose.

      • [^] # Re: .profile ou équivalent ?

        Posté par  . Évalué à 3.

        Je pense qu'il parle d'un .profile sur la machine distante. C'est de loin la solution la plus simple.

  • # change le shell de l'utilisateur

    Posté par  . Évalué à 2.

    si tu remplaces le shell par defaut de l'utilisateur par tmux, ca lanceras TMUX juste apres la connexion ssh

    • [^] # Re: change le shell de l'utilisateur

      Posté par  . Évalué à 0.

      Si je fais ça, su - user me renvoie une erreur et quand je me connecte en ssh, il utilise effectivement tmux mais avec le shell /bin/sh

      je pourrais écrire un petit script qui lance tmux -c /bin/bash
      mais encore une fois, cela ne me semble pas très propre.

      • [^] # Re: change le shell de l'utilisateur

        Posté par  . Évalué à 2.

        tmux n'a pas une option à mettre dans un fichier de configuration pour avoir un autre shell que sh par defaut ?

  • # ssh config

    Posté par  (site web personnel) . Évalué à 2.

    mais quand je le met dans mon ssh_config, ssh host tmux ne fonctionne pas. À noter que ssh -o 'RequestTTY=yes' host tmux lui fonctionne.

    1/ peux-tu nous montrer précisément comment tu le mets dans ssh_config ? (peut-être une erreur de syntaxe ?)

    2/ pourquoi ssh_config et non ~/.ssh/config ?

    • [^] # Re: ssh config

      Posté par  . Évalué à 0.

      1/ voilà le contenu du fichier

      Host tlb
      HostName localhost
      Port 22
      User tienslebien
      RequestTTY yes

      2/ J'utilise ~/.ssh/config, mais j'ai fait trop de man ssh_config.

      • [^] # Re: ssh config

        Posté par  . Évalué à 2.

        Cela semble correct. Essaye de te connecter avec ssh -v pour avoir les options de debug et savoir ce qu'il se passe. Si ton fichier est bien lu, tu auras les lignes de log suivantes :

        debug1: Reading configuration data /home/tienslebien/.ssh/config
        debug1: /home/tienslebien/.ssh/config line 20: Applying options for tlb
        
        

        Vérifie également les droits sur le répertoire .ssh (755) et sur .ssh/config (600). Si ssh juge que le fichier de configuration est trop accessible, il ne s'en servira pas.

        • [^] # Re: ssh config

          Posté par  . Évalué à 0.

          J'ai bien les deux lignes de debug.

          Je n'étais pas au courant pour la question des droits.
          J'ai mis ceux que tu m'as donné, ça n'a rien changé.

Suivre le flux des commentaires

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