Bonjour tout le monde,

pfiuuuu ça fait 12 ans que je suis inscrit ici... et c'est mon premier message apparemment ;-)

Alors, comme il n'est jamais trop tard, j'ai une question, sans doute un peu transverse.
Je suis sur le développement d'une appli (php) qui dois aller chercher un fichier sur un serveur distant. Ce serveur distant a ajouté la clef publique de mon utilisateur appli dans ses authorized keys.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
shell_exec('scp -v -i /home/appli/.ssh/id_rsa export@x.x.x.x:/home/export/sql.gz /tmp/');
Mais ça ne marche pas... ce qui semble logique puisque l'utilisateur apache n'a pas les droits d'aller lire la clef privée de l'utilisateur appli
Si je lance un terminal avec l'utilisateur apache et copie/colle la commande, il me dit qu'il ne peut lire /home/appli/.ssh/id_rsa
Si je lance un terminal en root et copie/colle la commande, cela fonctionne parfaitement, le fichier est bien copié dans /tmp
Je n'ai pas la main sur le serveur distant, je peux juste ajouter la clef publique de mon utilisateur, je ne peux pas ajouter un utilisateur/mdp sur le serveur distant.

Comment je peux copier ce fichu fichier chez moi? Quelle sont les bonnes pratiques dans ce cas là? Je suppose que je ne suis pas le premier à vouloir le faire

Il faudrait que apache puisse faire le scp en utilisant l'utilisateur appli ... ?

Merci à ceux qui prendront le temps de se pencher sur ce truc qui m'agace un peu... ;-)