Intégrer un backup MFPF à Bacula, Softia vous explique point par point comment procéder.
Sur NAMEK, nous avons créer un lxc « mfpf-sshfs » (192.168.10.197) qui servira de FileDaemon bacula pour le NAS MFPF, car bacula-client n’est pas disponible sur Synology. Nous mettrons en place un partage sshfs sur le lxc, ainsi bacula pourra venir récupérer les fichiers sur ce lxc.
Premièrement, nous avons mis en place un tunnel SSH sur le LXC afin de forward le port ssh du NAS MFPF en passant par le Proxy MFPF
Fichier de config (en root):
~/.ssh/config
Host HostName User Port IdentityFile LocalForward ServerAliveInterval ServerAliveCountMax |
Il faut bien évidemment rajouter la clé ssh id_rsa sur le proxy avec un ssh-copy ( en root toujours)
ssh-keygen # si ce n’est pas déjà fait ssh-copy-id |
Nous automatisons au startup boot le tunnel ssh via systemd et autossh en créant un fichier:
/etc/systemd/system/autossh-mfpf-tunnel.service
[Unit] Description=AutoSSH tunnel service everythingcli ssh mfpf on local port After=network.target [Service] Environment="AUTOSSH_GATETIME=0" ExecStart=/usr/bin/autossh -M 0 -T -N [Install] WantedBy=multi-user.targe |
On lance le service et l’active au démarrage:
systemctl start autossh-mfpf-tunnel.service systemctl enable autossh-mfpf-tunnel.service |
Nous nous connectons au user bacula, ce qui est par default impossible puisque le shell est set à /bin/false, on effectue donc la commande suivante sur le LXC:
usermod -s /bin/bash bacula |
puis rajoutons notre clé ssh au NAS MFPF, mais pour cela il faut d’abord corriger les permissions des dossiers SUR le NAS mfpf.
Nous rajoutons finalement la clé depuis le user bacula sur le lxc vers le NAS mfpf via le tunnel ssh:
ssh-keygen # si ce n'est pas déjà faiss sh-copy-id -p |
Puis nous installons sshfs sur le lxc.
apt-get install sshfs fuse libfuse-dev fusesmb samba |
Cependant les containers lxc rencontrent des problèmes liés à fuse qui ne monte pas un certain device pourtant nécessaire à son fonctionnement lors de l’installation, les 2 lignes suivantes sont à rajouter sur proxmox dans le fichier de conf du container:
lxc.autodev: 1 lxc.hook.autodev: sh -c "mknod -m 0666 ${LXC_ROOTFS_MOUNT}/dev/fuse c 10 229" |
Ce qui donne dans notre cas:
/etc/pve/lxc/134.conf
Désormais nous nous rendons sur bacula, configurons le job et n’oublions pas de monter le sshfs avant chaque backup:
/usr/bin/sshfs /volume1 -p -o IdentityFile=/var/lib/bacula/.ssh/id_rsa |
Et d’umount après chaque backup
/bin/fusermount -u /volume1 |
Toutes nos publications sur Linkedin !