IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Réseau Discussion :

Exécution du .profile impossible par SSH


Sujet :

Réseau

  1. #1
    Membre actif
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 37
    Par défaut Exécution du .profile impossible par SSH
    Bonjour,

    Je développe une application en java exécutant du code à distance. Le protocole utilisé est SSH et la librairie java utilisé est SSHtools.

    Je souhaiterais exécuter le fichier .profile pour récupérer les variables d'environnement d'utilisateurs (car il ne s'exécute pas par défaut au démarrage de la session).

    Lorsque je l'exécute sur une machine, cela ne pose pas de problème, mais lorsque j'essaye sur une autre j'obtiens le message d'erreur Not a terminal. Je pense donc que ça vient de la configuration du serveur SSH mais je ne vois pas l'option qui pourrait résoudre ce problème.

    Voici le fichier de configuration sshd_conf
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    76
    77
    78
    79
    80
    81
    82
    83
    84
    85
    86
    87
    88
    89
    90
    91
    92
    93
    94
    95
    96
    97
    98
    99
    100
    101
    102
    103
    104
    105
    106
    107
    108
    109
    110
    111
    112
    113
    114
    115
    116
    117
    118
    119
     
    #       $OpenBSD: sshd_config,v 1.59 2002/09/25 11:17:16 markus Exp $
     
    # This is the sshd server system-wide configuration file.  See
    # sshd_config(5) for more information.
     
    # This sshd was compiled with PATH=/usr/bin:/bin:/usr/sbin:/sbin:/system/product
    s/openssh/bin
     
    # The strategy used for options in the default sshd_config shipped with
    # OpenSSH is to specify options with their default value where
    # possible, but leave them commented.  Uncommented options change a
    # default value.
     
    Port 22
    Protocol 2
    #ListenAddress 0.0.0.0
    #ListenAddress ::
     
    # HostKey for protocol version 1
    #HostKey /system/products/openssh/conf/ssh_host_key
    # HostKeys for protocol version 2
    HostKey /system/products/openssh/conf/ssh_host_rsa_key
    HostKey /system/products/openssh/conf/ssh_host_dsa_key
     
    # Lifetime and size of ephemeral version 1 server key
    #KeyRegenerationInterval 3600
    #ServerKeyBits 768
     
    # Logging
    #obsoletes QuietMode and FascistLogging
    #SyslogFacility AUTH
    LogLevel INFO
     
    # Authentication:
     
    LoginGraceTime 60
    PermitRootLogin no
    StrictModes yes
     
    #RSAAuthentication yes
    PubkeyAuthentication yes
    #AuthorizedKeysFile     .ssh/authorized_keys
     
    # rhosts authentication should not be used (Deprecated option)
    #RhostsAuthentication no
    # Don't read the user's ~/.rhosts and ~/.shosts files
    ...skipping...
     
    # Lifetime and size of ephemeral version 1 server key
    #KeyRegenerationInterval 3600
    #ServerKeyBits 768
     
    # Logging
    #obsoletes QuietMode and FascistLogging
    #SyslogFacility AUTH
    LogLevel INFO
     
    # Authentication:
     
    LoginGraceTime 60
    PermitRootLogin no
    StrictModes yes
     
    #RSAAuthentication yes
    PubkeyAuthentication yes
    #AuthorizedKeysFile     .ssh/authorized_keys
     
    # rhosts authentication should not be used (Deprecated option)
    #RhostsAuthentication no
    # Don't read the user's ~/.rhosts and ~/.shosts files
    IgnoreRhosts yes
    # For this to work you will also need host keys in /system/products/openssh/conf/ssh_known_hosts
    RhostsRSAAuthentication no
    # similar for protocol version 2
    #HostbasedAuthentication no
    # Change to yes if you don't trust ~/.ssh/known_hosts for
    # RhostsRSAAuthentication and HostbasedAuthentication
    IgnoreUserKnownHosts yes
     
    # To disable tunneled clear text passwords, change to no here!
    PasswordAuthentication yes
    #PermitEmptyPasswords no
     
    # Change to no to disable s/key passwords
    #ChallengeResponseAuthentication yes
     
    # Kerberos options
    #KerberosAuthentication no
    #KerberosOrLocalPasswd yes
    #KerberosTicketCleanup yes
     
    #AFSTokenPassing no
     
    # Kerberos TGT Passing only works with the AFS kaserver
    #KerberosTgtPassing no
     
    # Set this to 'yes' to enable PAM keyboard-interactive authentication
    # Warning: enabling this may bypass the setting of 'PasswordAuthentication'
    #PAMAuthenticationViaKbdInt no
     
    X11Forwarding yes
    #X11DisplayOffset 10
    #X11UseLocalhost yes
    PrintMotd no
    PrintLastLog yes
    KeepAlive yes
    #UseLogin no
    #UsePrivilegeSeparation yes
    #PermitUserEnvironment no
    Compression no
     
    #MaxStartups 10
    # no default banner path
    Banner /system/products/openssh/conf/banner.txt
    #VerifyReverseMapping no
     
    # override default of no subsystems
    Subsystem       sftp    /system/products/openssh/libexec/sftp-server
    Est ce que le problème vient bien de ce fichier ou est autre chose qui pose problème?

    Merci pour vos réponses

  2. #2
    Expert confirmé
    Avatar de Katyucha
    Femme Profil pro
    DevUxSecScrumOps Full Stack Bullshit
    Inscrit en
    Mars 2004
    Messages
    3 287
    Détails du profil
    Informations personnelles :
    Sexe : Femme
    Localisation : Irlande

    Informations professionnelles :
    Activité : DevUxSecScrumOps Full Stack Bullshit

    Informations forums :
    Inscription : Mars 2004
    Messages : 3 287
    Par défaut
    comment l'excutes tu ?

  3. #3
    Membre actif
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 37
    Par défaut
    Citation Envoyé par Katyucha
    comment l'excutes tu ?
    Je fais appel à une classe java qui encapsule la classe com.sshtools.j2ssh.SshClient. Ma classe transmets sans modification la commande à la classe encapsulée.

    Voici le code effectuer lors de mon test unitaire
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
     
    Shell ssh = new Ssh();
    String sortie = null;
     
    try {
       sortie = ssh.exec(POSTE_DISTANT, UTILISATEUR, MOT_DE_PASSE, "\"$PWD/.profile\"");
       sLogger.debug("sortie = " + sortie);
    } catch (Exception e) {
       sLogger.error(e);
       assertTrue("Test 1.1 Une Exception n'aurait pas dû intervenir", false);
    }
    Ce code fonctionne bien sur un poste distant, mais pas sur un autre.

  4. #4
    Rédacteur/Modérateur
    Avatar de troumad
    Homme Profil pro
    Enseignant
    Inscrit en
    Novembre 2003
    Messages
    5 607
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 57
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Enseignant
    Secteur : Enseignement

    Informations forums :
    Inscription : Novembre 2003
    Messages : 5 607
    Par défaut
    Si je ne me trompe pas...
    Ça ne dépend pas du shell défini par défaut ?
    .bashrc si c'est le bash ? NOn ?
    Modérateur Mageia/Mandriva Linux
    Amicalement VOOotre
    Troumad Alias Bernard SIAUD à découvrir sur http://troumad.org
    Mes tutoriels : xrandr, algorigramme et C, xml et gtk...

  5. #5
    Membre actif
    Profil pro
    Inscrit en
    Novembre 2006
    Messages
    37
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2006
    Messages : 37
    Par défaut Problème résolu
    Je viens de trouver le pourquoi de mon problème.

    En fait, le fichier .profile contenait une commande stty qui permet, si j'ai bien compris, de modifier les modes de transmission du terminal.

    Je ne sais pas quel est le terminal offert lors d'une connexion SSH mais elle ne supporte pas, à priori, la commande stty. Donc, l'exécution de cette commande par SSH transmettait l'erreur:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    Not a terminal
    stty: : Not a typewriter

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Maven 2 : exécuter un profil par défaut
    Par ggalou08 dans le forum Maven
    Réponses: 5
    Dernier message: 09/05/2008, 16h58
  2. [Système] Exécution commande shell impossible
    Par mick84m dans le forum Langage
    Réponses: 5
    Dernier message: 28/04/2006, 15h43
  3. Partage par ssh
    Par troumad dans le forum Réseau
    Réponses: 19
    Dernier message: 15/04/2006, 08h02
  4. Sauvegarde de base de donnée par SSH
    Par onet dans le forum Réseau
    Réponses: 2
    Dernier message: 05/03/2006, 22h42
  5. script de connexion par ssh
    Par black_code dans le forum Modules
    Réponses: 2
    Dernier message: 25/07/2005, 15h10

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo