LFTP: ajouter le support SFTP

LFTP est un excellent client FTP qui permet de facilement transférer des fichiers en ligne de commande. Il est parfait pour automatiser des tâches de sauvegarde avec des scripts bash / shell. Par défaut LFTP ne supporte que le FTP mais il suffit de rajouter la librairie SSL pour qu’il puisse se connecter en SFTP. Ce tuto explique comment recompiler LFTP avec support SSL.

Avant de commencer, vérifier les librairies utilisées.
Pour cela récupérer le chemin d’installation

which lftp
/usr/bin/lftp

Ensuite, vérifiez les librairies utilisées

ldd /usr/bin/lftp
linux-vdso.so.1 (0x00007ffe56ab8000)
        libz.so.1 => /lib/x86_64-linux-gnu/libz.so.1 (0x00007f4a8787c000)

S’il le libssl n’apparait pas dans la liste, il faut l’installer
libssl.so.0.9.7 => /usr/lib/libssl.so.0.9.7 (0xb7f5c000)

Lancer l’installation avec la commande suivante:

sudo apt-get install libssl-dev)

Il ne reste plus qu’à recompiler lftp avec le support SSL.

/configure --with-openssl=/usr/lib

Le chemin du .configure dépend de là ou vous avez décompressé lftp, voir explication sur cette page.

Si vous rencontrez le problème suivant lors de la première connexion:
Erreur fatale: Host key verification failed

Dans la conf, ajouté le paramètre suivante:
set sftp:auto-confirm yes

L’autre solution toute simple est d’installer la clé à la main en faisant une simple connexion, exemple:

ssh monseveur.com
The authenticity of host 'monseveur.com (217.160.2xx.xx)' can't be established.
ECDSA key fingerprint is 78:e5:05:a3:5d:20:e5:43:c6:81:43:f5:0b:c7:be:96.
Are you sure you want to continue connecting (yes/no)? yes

Warning: Permanently added 'monseveur.com' (ECDSA) to the list of known hosts.

et voilà, vous êtes prêt à utiliser LFTP.

Vous pouvez vérifier la connexion

lftp sftp://utilisateur:password@domaine.com

Exemple pour sauvegarder un site distant sur un disque local

lftp sftp://eric:password@geekmag.fr -e "mirror -e /wp-content/uploads/ /dd1/www/geekmag/wp-content/uploads ; quit"

Laisser un commentaire

Votre adresse de messagerie ne sera pas publiée. Les champs obligatoires sont indiqués avec *