Faire un backup automatique de son wordpress sur son disque dur via FTP

Ce blog est hébergé chez OVH, sous debian 9. Par défaut les plugins de backup de wordpress (j’ai pré-sélectionné UpdraftPlus et BackWPup) me proposent de faire une sauvegarde sur disque. Bien sûr je pourrais louer de l’espace sur un cloud pour une somme modique (par exemple amazon S3 ça ferait du 24€ par mois pour 1To) mais je n’aime pas trop cette idée car je ne vais pas maîtriser mes coûts à priori. Donc, pourquoi ne pas utiliser un espace dédié sur un disque dur de ma machine, sur laquelle je vais installer un protocole qui permet le transfert de fichier ?

Dans cette série nous allons voir comment installer ce bon vieux FTP, puis comment le sécuriser avec FTPS et comment installer un S3 plus moderne avec minio. On démarre avec FTP (inspiré de ce tuto).

Attention, cette méthode n’est pas sécurisée.

Nous verrons plus tard comment faire du FTPS (FTP encrypté).

Tout dabor on va installer vsftpd et un user « remotebackup », dont on va changer le répertoire « home » pour ‘/media/yba/Working/FTP’ (le répertoire dédié aux backups sur mon disque dur « Working »):

sudo apt-get install vsftpd
sudo useradd -m remotebackup
sudo passwd remotebackup
sudo usermod -d /media/yba/Working/FTP remotebackup

Ensuite on va configurer vsftd en modifiant le fichier /etc/vsftpd.conf. On refuse les connections anonymes (il faudra donc un user/mdp pour se connecter, et on arrive directement dans le répertoire local du user) :

listen=YES
listen_ipv6=NO
connect_from_port_20=YES

anonymous_enable=NO
local_enable=YES
write_enable=YES
chroot_local_user=YES
allow_writeable_chroot=YES
secure_chroot_dir=/var/run/vsftpd/empty

pam_service_name=vsftpd

userlist_enable=YES
userlist_file=/etc/vsftpd.userlist
userlist_deny=NO

Comme on précise que la liste des users est dans le fichier /etc/vsftd.userlist il va falloir remplir ce fichier avec :

remotebackup

Enfin on lance le démon :

sudo service vsftd restart

Si votre disque dur est en FAT32 (le mien est formaté en ext4) alors pour que remotebackup puisse en faire sa home il vous faut faire dans /etc/fstab :

/dev/sdc1       /media/yba/HDD  vfat    user,umask=0000   0   0

Notez que vous devez ouvrir le port 21 et 20. Si vous êtes dans mon cas, ça se fait dans le panneau de configuration de la freebox. Sinon avec ufw :

sudo ufw allow 21/tcp
sudo ufw allow 01/tcp

Pour aller plus loin avec ufw (par exemple pour n’ouvrir qu’un port pour une seule appli ou une seule machine) je vous conseille ce tuto.

Rejoindre la conversation

2 commentaires

  1. Bonjour, merci pour cet article. Est-il possible de faire des sauvegardes automatiques sur notre disque dur plutot que sur un espace en ligne ? J ai en effet deja un systeme d organisation des sauvegardes et ajouter un service en ligne serait finalement plus complique.

    1. Oui. La, c’est précisément ce que je fais. Je monte un serveur FTP sur ma machine, et je l’utilises comme un cloud, puisque les plugins de backups s’appuient dessus.
      Mais il est aussi possible d’utiliser ces plugins pour faire un backup sur le serveur directement. C’est moins sécure, mais c’est la solution la plus simple pour démarrer, et ça dépanne bien déjà.
      Sinon, on peut faire un backup sur le serveur, et le rapatrier avec un rsync. C’est la solution la plus simple à priori.

Laisser un commentaire

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