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

Entrée/Sortie Java Discussion :

Java- SCP copie de fichier sur une machine distante


Sujet :

Entrée/Sortie Java

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Juillet 2008
    Messages
    14
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juillet 2008
    Messages : 14
    Points : 9
    Points
    9
    Par défaut Java- SCP copie de fichier sur une machine distante
    Bonjour,

    j'utilise le package org.apache.tools.ant.taskdefs.optional.ssh
    qui n'a pas l'air de fonctionner après plus de 10heures de recherche intensive.
    j'ai essayé tous les cryptages possibles et imaginables pour la clé privée, rien ne marche. Et surtout aucune doc nulle part
    voici mon code suivi du message d'erreur:

    import org.apache.tools.ant.taskdefs.optional.ssh.*;

    public class trySCP {

    public static void main(String []args){
    int port=22;
    String scpHostUri="192.20.155.78";
    String username="user";
    String ppk_path="./user.ppk";
    String localFilePath="./fichier_a_copier_scp.xml";
    String toDir="user:@machine:/directory";
    Scp scp = new Scp();

    scp.init();

    scp.setUsername(username);
    scp.setKeyfile(ppk_path);
    scp.setPort(port);
    scp.setHost(scpHostUri);
    scp.setFile(localFilePath);
    scp.setTodir(toDir);


    scp.execute();



    }

    }

    J'obtient l'erreur suivante:

    Exception in thread "main" com.jcraft.jsch.JSchException: invaid privatekey: ./user.ppk
    at org.apache.tools.ant.taskdefs.optional.ssh.Scp.execute(Scp.java:129)
    at trySCP.main(trySCP.java:29)
    Caused by: com.jcraft.jsch.JSchException: invaid privatekey: ./user.ppk
    at com.jcraft.jsch.IdentityFile.<init>(Unknown Source)
    at com.jcraft.jsch.JSch.addIdentity(Unknown Source)
    at com.jcraft.jsch.JSch.addIdentity(Unknown Source)
    at org.apache.tools.ant.taskdefs.optional.ssh.SSHBase.openSession(SSHBase.java:156)
    at org.apache.tools.ant.taskdefs.optional.ssh.Scp.upload(Scp.java:190)
    at org.apache.tools.ant.taskdefs.optional.ssh.Scp.execute(Scp.java:118)
    ... 1 more
    Identity: com.jcraft.jsch.JSchException: invaid privatekey: ./user.ppk
    --- Nested Exception ---
    com.jcraft.jsch.JSchException: invaid privatekey: ./user.ppk
    at com.jcraft.jsch.IdentityFile.<init>(Unknown Source)
    at com.jcraft.jsch.JSch.addIdentity(Unknown Source)
    at com.jcraft.jsch.JSch.addIdentity(Unknown Source)
    at org.apache.tools.ant.taskdefs.optional.ssh.SSHBase.openSession(SSHBase.java:156)
    at org.apache.tools.ant.taskdefs.optional.ssh.Scp.upload(Scp.java:190)
    at org.apache.tools.ant.taskdefs.optional.ssh.Scp.execute(Scp.java:118)
    at trySCP.main(trySCP.java:29)

    Mon fichier ppk fonctionne tres bien sous putty.


    Comment faire pour copier un fichier à distance de windows vers linux en utilisant un scp acceptant les fichiers de clé privées?Quel package utiliser?
    Si vous avez un exemple ca serait vraiment génial. et l'encodage du fichier autorisé

    merci par avance pour votre aide

  2. #2
    Modérateur

    Profil pro
    Inscrit en
    Septembre 2004
    Messages
    12 551
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Septembre 2004
    Messages : 12 551
    Points : 21 607
    Points
    21 607
    Par défaut
    JSch est plutôt bien pour ça, simplement il ne gère pas les clés au format .ppk, plutôt au format d'OpenSSH.
    D'ailleurs, il y a autre chose que putty qui utilise ces machins .ppk ? J'ai jamais bien compris d'où leur venait cette originalité.
    N'oubliez pas de consulter les FAQ Java et les cours et tutoriels Java

Discussions similaires

  1. Accès fichier sur une machine distante
    Par Vince7-7 dans le forum Langage
    Réponses: 1
    Dernier message: 15/09/2014, 20h56
  2. Création d'un fichier sur une machine distante
    Par lazerdev dans le forum PL/SQL
    Réponses: 5
    Dernier message: 30/04/2010, 07h37
  3. copier un fichier sur une machine distante avec CP
    Par hammag dans le forum Administration système
    Réponses: 5
    Dernier message: 06/05/2008, 10h24
  4. Ouverture d'un fichier sur une machine distante
    Par minokely dans le forum Langage
    Réponses: 2
    Dernier message: 04/04/2008, 15h00
  5. Réponses: 0
    Dernier message: 18/01/2008, 11h48

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