Skip to content
Snippets Groups Projects
Verified Commit 04acb353 authored by David Beniamine's avatar David Beniamine
Browse files

Add luks encryption option

parent ec6c696c
No related branches found
No related tags found
No related merge requests found
Pipeline #233 failed
......@@ -23,6 +23,10 @@ do_clean(){
then
fusermount -zu $encfsmount
fi
if $luks
then
cryptsetup luksClose $luksname
fi
umount -f $dev
}
......@@ -182,6 +186,8 @@ usage(){
echo " -i | --interrupt list Interrompt les services donnés (liste
séparé par des virgules) durant la création
de l'archive tar."
echo " -l | --luks pass Utilise des disques chiffres luks,
protégés par le mot de passe donné"
echo " -w | --warnonly En cas d'erreur d'une action de sauvegarde,
le programme affiche un message mais ne
s'nterrompt pas"
......@@ -199,6 +205,8 @@ gitlab=false
mysql=false
postgres=false
encfs=false
luks=false
luksname=crypt_backup
archive=false
clone=false
MIN_SIZE=$((1024*1024))
......@@ -210,7 +218,7 @@ for arg in "$@"; do
shift
set -- "$@" `echo $arg | sed 's/^-\(-.\).*$/\1/'`
done
optspec=":hvC:dcguws:mpe:i:aP:"
optspec=":hvC:dcguws:mpe:i:l:aP:"
while getopts "$optspec" optchar; do
case "${optchar}" in
h)
......@@ -257,6 +265,10 @@ while getopts "$optspec" optchar; do
i)
SERVICES="${OPTARG//,/ }"
;;
l)
luks=true
ENCPASS="$OPTARG"
;;
w)
warn_only=true;
;;
......@@ -290,7 +302,15 @@ do_log "démarrage le `date`"
[ ! -d "$dest" ] && mkdir "$dest"
/bin/mount -t auto $dev $dest
if $luks
then
echo $ENCPASS | cryptsetup luksOpen $dev $luksname
test_and_fail $? "Impossible de déchiffrer le disque, abandon"
/bin/mount -t auto /dev/mapper/$luksname $dest
echo "OK" > $dest/test
else
/bin/mount -t auto $dev $dest
fi
test_and_fail $? "Impossible de monter le disque destination, abandon"
if $encfs
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment