Bonjour à tous,
Je cherche à valider une solution d'automatisation de transfert de fichiers par SFTP entre 2 machines Linux en utilisant le client sftp et en activant des clés d'authentification de type RSA afin de ne pas avoir à saisir un mot de passe.
La configuration sur les 2 postes (client et serveur) a été effectuée (échange de clés publiques, etc).
Depuis le poste client, je peux à présent me connecter au poste serveur, soit par ssh ou par sftp sans demande de mot de passe ssh <user>@<adresse IP> ou sftp <user>@<adresse IP>
J'aborde à présent l'automatisation des transferts de fichiers à partir d'un fichier de commandes en utilisant l'option -b (batchfile) du client sftp.
Le ficher de commande : batchfile.txt utilisé pour l'essai contient les commandes suivantes :
1 2 3 4 5 6
| cd <repertoire>
mget *.txt
mget *.csv
mput *.txt
mput *.csv
bye |
La commande passée pour l'exécution de ce fichier de commande :
sftp -b batchfile.txt <user>@<adresse IP>
La commande se déroule correctement, je récupère bien les fichiers indiqués par les commandes mget, comme je transmets bien les fichiers indiqués par les commandes mput.
J'ai refait le même type d'essai, mais en indiquant des fichiers d'extension (*.xml).
Dans cet essai, le fichier de commande : batchfile.txt contient les commandes suivantes :
1 2 3 4
| cd <repertoire>
mput *.xml
mget *.xml
bye |
Dans cet essai, j'ai un comportement étrange, les fichiers (*.xml) sont bien déposés sur le serveur SFTP, mais dans la commande suivante : mget *.xml, j'ai un message indiquant ne pas trouver de fichiers (not found).
J'en conclus qu'il doit exister une règle de sécurité pour la récupération des fichiers (*.xml) sur le serveur SFTP.
Avez vous une idée sur le problème rencontré ?
D'avance merci de votre retour.
Cordialement.
Partager