Bash script wat encrypted tars maakt met openssl

Voor het backuppen van bepaalde data had ik een scriptje nodig wat net iets meer veiligheid bood dan een gewone tar met een wachtwoord. Heb toen beetje rondgekeken op het internet en na wat pielen kwam het volgende eruit.

#!/bin/bash

src='/folder'
dst='backup/folder'
 
# enables spaces in folder names
IFS=$'\n'

for dir in `ls "$src/"`
do
  if [ -d "$src/$dir" ]; then
    tar cvzPf - $src/$dir | openssl des3 -salt -k xxxxxxxxxxxxxxxxxxxx | dd of=$dst/$dir.tar.gz
  fi
done

Hoe werkt het?

De vars src en dst geven de bronmap en doelmap aan voor de backup. Hij loopt alle directories in de bronmap door en maakt per directory een {dirname}.tar.gz aan welke encrypted is met openssl met als salting key de waarde die je op de plek van de xxxxxxxxxxxxxxxxxxxx zet.

That it.

Uitpakken

Op de linux machine doe je dit met:
dd if=inputfilename|openssl des3 -d -k xxxxxxxxxxxxxxxxxxxx|tar xvzf –

Wil je deze data op een windows PC weer terughalen dan is dit goed te doen door even de windows versie van openssl voor de command line te downloaden. Daarna kun je via de CMD het volgende commando erop los laten:
C:\OpenSSL-Win32\bin>openssl des3 -d -salt -in input.tar.gz -out target.tar.gz

Geef een reactie

Jouw e-mailadres wordt niet gepubliceerd. Verplichte velden zijn gemarkeerd met *