Forum Programmation.shell Faire un ssh après un sudo

Posté par  . Licence CC By‑SA.
Étiquettes :
0
17
mar.
2014

Bonjour,

Je voudrais me connecter à une machineB avec certain user qui n’est accessible qu’après un sudo.

Je peux me connecter à une machineA
ssh machineA
Puis
machineA> sudo su – superman
puis
superman@machineA> ssh machineB

En effet sur la machineB je ne peux pas faire de sudo.
machineA> sudo su – superman ssh machineB
me demande un mot de passe.
machineA> sudo –l
donne
(root) NOPASSWD: /usr/bin/su - superman, (root) /[a-z]*app/travail/*/*.sh

J’ai testé
machineA> sudo su – superman << eof
ssh machineB
eof
mais je retourne à la machineA apres une connexion furtive à la machineB.
Y-a-t’il un moyen de garder le prompt ou de se connecter avec une seule ligne de commande ?

  • # Question bête?

    Posté par  . Évalué à 4.

    La commande

    ssh superman@machineB

    ne marche pas?

  • # hum

    Posté par  (site web personnel) . Évalué à 1. Dernière modification le 17 mars 2014 à 22:05.

    J'ai pas tout compris mais

    sudo -u superman -i ssh machineB
    

    Is it a Bird? Is it a Plane?? No, it's Super Poil !!!

    • [^] # Re: hum

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

      Sinon :

      ssh -A -t machineA /usr/bin/sudo -u superman ssh -A -t machineB
      

      Is it a Bird? Is it a Plane?? No, it's Super Poil !!!

  • # Si je comprends bien...

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

    totoz@machineA:~> sudo su - outherUser -c "ssh machineB"

    Ou au pire :

    totoz@machineA:~> sudo su - otherUser -c "ssh encoreOtherUser@machineB"

    Mais j'ai peut être mal compris…

  • # Faire un ssh après un sudo

    Posté par  . Évalué à 1.

    ssh -A -t machineA /usr/bin/sudo -u superman ssh -A -t machineB
    Password:

    Je n’ai pas le mot de passe du user superman.

    lambda@machineA:~> sudo su - superman-c "ssh machineB"
    Password:

    lambda@machineA:~> sudo su - superman-c "ssh superman@machineB"
    Password:

    je n’ai pas de sudo pour utilisateur superman sur la machine B.

    lambda@machineA $ /usr/local/bin/sudo -ll

    Matching Defaults entries for lambda on this host:
    logfile=/var/logapp/weblogic.sudoers.log, log_year, !syslog, runas_default=root, badpass_message="Documentation", insults
    User lambda may run the following commands on this host:
    Sudoers entry:
    RunAsUsers: root
    Commands:
     !/usr/bin/su
    Sudoers entry:
    RunAsUsers: root
    Commands:
    /usr/bin/sh, /usr/bin/csh, /usr/bin/ksh, /bin/bash
    Sudoers entry:
    RunAsUsers: root
    Commands:
    NOPASSWD: /apps/sudoers.d/check_droits_sudo
    Sudoers entry:
    RunAsUsers: root
    Commands:
    NOPASSWD: /bin/cat /var/logapp/[a-z]*app/*
    RunAsUsers: root
    Commands:
    /bin/less /var/log/[a-z]*app/*
    RunAsUsers: root
    Commands:
    /bin/more /var/log/[a-z]*app/*
    RunAsUsers: root
    Commands:
    /bin/ls /var/log/[a-z]*app/*
    Sudoers entry:
    RunAsUsers: root
    Commands:
    NOPASSWD: /apps/sudoers.d/check_droits_sudo
    Sudoers entry:
    RunAsUsers: root
    Commands:
    NOPASSWD: /usr/bin/su - superman
    RunAsUsers: root
    Commands:
    /[a-z]*app/exploit/*/*.sh

    Quand je me connecte depuis mon PC Cygwin je ne peux me connecter que sur la machineA.
    L’utilisateur lambda de la machineA ou machineB n’a pas beaucoup de droit.

    Je crois que la seule solution est d’avoir un droit de sudo sur la machineB pour le user userman

Suivre le flux des commentaires

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