Cómo hacer una copia de seguridad externa de una partición de disco totalmente encriptada

2

Para un tipo de NAS / servidor que ejecuta Ubuntu con SAMBA para alojar archivos para varias computadoras con Windows, me gustaría cifrar los archivos en el servidor. Sé que podría hacer esto para la partición usando ZFS o LUKS.

Pero tengo otro desafío: cada noche quiero sincronizar todos los archivos modificados en una unidad de nube a través de rsync. En la nube y antes de la transferencia, quiero que todos los archivos estén encriptados. Si la partición completa está encriptada, los archivos aparecerán sin cifrar en rsync. Desafortunadamente, rsync no admite la sincronización junto con el cifrado (debido a sus algoritmos hash y de fecha). Por lo tanto, sería mejor tener una partición sin cifrar con archivos cifrados para que rsync pueda hacer su trabajo. Tener nombres de archivos visibles no es un problema.

¿Hay recomendaciones sobre cómo resolver eso? Me pregunto si SAMBA podría hacer el cifrado / descifrado o si hay un sistema de archivos que lo admita. O tal vez hay alternativas para rsync? Cloud Drive admite FTP, SFTP, FTPS, WebDAV, SMB / CIFS con y sin VPN, SCP y rsync.

    
pregunta Felix 04.02.2018 - 20:15
fuente

3 respuestas

2

Por favor, eche un vistazo a Duplicity , que es una herramienta que se usa comúnmente para lo que quiere lograr. Puede cifrar sus archivos a través de GPG y utiliza rsync para crear copias de seguridad en algún destino.

    
respondido por el user258572 04.02.2018 - 20:51
fuente
2

Otra alternativa es usar EncFS para cifrar sus archivos en NAS. La forma en que funciona EncFS es a nivel de archivo, almacena cada archivo cifrado en su disco duro y lo desencripta sobre la marcha cuando se accede a través de sistemas de archivos montados con FUSE.

Luego, puede sincronizar sus directorios encriptados desde el disco duro a la nube tal como está, sin usar herramientas adicionales.

NB: existen problemas de seguridad relacionados con el uso de EncFS (consulte la página Wiki), pero en su caso de uso parecen ser en gran medida irrelevantes. Si aún los considera relevantes, gocryptfs es un sucesor de EncFS y corrige algunos de esos problemas.

    
respondido por el George Y. 04.02.2018 - 23:33
fuente
-1

He estado tratando de lograr algo como esto por un tiempo, y hace un par de días lo hice funcionar. Estoy usando SSHFS.

La duplicidad es buena, pero si prefieres usar herramientas más simples, mi configuración te permite hacer lo que originalmente pediste: un sistema de archivos cifrado en un servidor remoto, al que puedes acceder a través de un canal cifrado, en una Una forma lo suficientemente conveniente para que funcione rsync.

Si es seguro o no, es otra consideración importante. El único problema que he encontrado para esta configuración es el siguiente: ¿Es seguro almacenar volúmenes cifrados en servicios de sincronización en la nube?

Así es como lo configuré:

# setup

ssh remoteserver
cd /srv/storage/
sudo dd if=/dev/zero of=store1 bs=1024 count=1048576 # 1 GB
sudo chown nacht:nacht store1
exit

# make sure /etc/fuse.conf has the "user_allow_other" line uncommented, and that your account can read from this file

sudo mkdir /mnt/securestorage
sudo mkdir /mnt/store1
sudo chown nacht:nacht /mnt/securestorage
sudo chown nacht:nacht /mnt/store1
sshfs remoteserver:/srv/storage /mnt/securestorage -o allow_other
sudo losetup -a # check which loop to use
sudo losetup /dev/loop0 /mnt/securestorage/store1
sudo cryptsetup -y -v luksFormat /dev/loop0
sudo cryptsetup luksOpen /dev/loop0 store1
sudo mkfs -t ext3 -m 1 -v /dev/mapper/store1
sudo mount /dev/mapper/store1 /mnt/store1
cd /mnt/store1
sudo chown nacht:nacht .
echo "test" > test
cat test
cd ..
sudo umount /mnt/store1
sudo cryptsetup luksClose store1
sudo losetup -d /dev/loop0
sudo umount /mnt/securestorage


# turn it on
sshfs remoteserver:/srv/storage /mnt/securestorage -o allow_other
sudo losetup -a # check which loop to use
sudo losetup /dev/loop0 /mnt/securestorage/store1
sudo cryptsetup luksOpen /dev/loop0 store1
sudo mount /dev/mapper/store1 /mnt/store1
cd /mnt/store1

# turn it off
cd /
sudo umount /mnt/store1
sudo cryptsetup luksClose store1
sudo losetup -d /dev/loop0
sudo umount /mnt/securestorage
    
respondido por el Nacht 19.07.2018 - 13:39
fuente

Lea otras preguntas en las etiquetas