2017-04-15 1 views
0

J'écris quelque chose dans R qui doit télécharger un fichier sur un serveur en utilisant l'authentification par clé SSH. J'utilise le code ci-dessous du paquet RCurl, mais la clé privée que j'utilise a une phrase secrète. Pour la vie de moi, je ne peux pas comprendre comment spécifier la phrase secrète pour la clé. Est-ce que quelqu'un a eu l'expérience de l'utilisation de la fonction ftpUpload, ou a peut-être une meilleure façon de le faire dans R?Phrase secrète pour clé privée utilisant la fonction ftpUpload dans R

ftpUpload(what = pathtofile, 
     to = serverlocation, 
     verbose = TRUE, 
     .opts = list(
     ssh.private.keyfile = pathtokey 
     )) 

Répondre

0

De la R Documentation pour curlOptions et en cours d'exécution listCurlOptions() il ressemble keypasswd est ce que vous cherchez.

EDIT/UPDATE: J'ai essayé d'ajouter cette option à mon propre code et de l'exécuter et cela fonctionne très bien pour moi. Votre dernier appel devrait ressembler à quelque chose comme ci-dessous:

ftpUpload(what = pathtofile, 
    to = serverlocation, 
    verbose = TRUE, 
    .opts = list(
    ssh.private.keyfile = pathtokey, 
    keypasswd = passphrase 
    )) 

Et votre sortie devrait ressembler à:

* Trying 123.456.789… 
* TCP_NODELAY set 
* Connected to 123.456.789 (123.456.789) port 22 (#0) 
* SSH MD5 fingerprint: abcdefghij123456789 
* SSH authentication methods available: publickey 
* Using SSH public key file '/Users/User1/.ssh/id_rsa.pub' 
* Using SSH private key file '/Users/User1/.ssh/id_rsa' 
* Initialized SSH public key authentication 
* Authentication complete 
* Connection #0 to host 123.456.789 left intact 
OK 
0