Backups van een versleuteld filesysteem?

Om te beginnen: is dit de juiste plek op dit forum voor deze vraag?

Het lijkt me nuttig om mijn persoonlijke gegevens te versleutelen. Die zitten allemaal in /home. Ik maak regelmatig backups (mbv. rsync) van de niet-versleutelde /home, maar het is mij niet duidelijk hoe dat bij een versleutelde /home gaat zonder alles eerst te ontsleutelen en daarna op het backup-medium weer te versleutelen.
Daar is natuurlijk allang iets handigs voor bedacht: weet iemand daar iets van?

Backup is een wijd begrip en voor iedere situatie is er een backup strategie te ontwerpen.

Als je bijv. backups wilt maken van individuele bestanden (zoals jij met rsync) gaat het om een copie van de bestanden. Als die bestanden op een versleuteld file systeem staan betekent dat dat ze bij lezen niet meer versleuteld zijn. In feite zijn de bestanden nooit versleuteld, het file systeem is versleuteld. Ze staan dan onversleuteld in de systeem cache, in eventuele buffers, inwendige datastructuren van programma’s, enz. Bij wegschrijven zijn ze dus nog steeds onversleuteld, maar je kunt ze natuurlijk naar een ander versleuteld file systeem schrijven.

Je kunt ook een bestand zelf versleutelen. Dat bestand kun je dan, versleuteld, dus zonder het te ontsluiten, copieëren naar een andere plaats en daar is het dan nog steeds versleuteld. Het is dan ook versleuteld in het geheugen, cache, enz.

Je kunt er ook voor kiezen een backup van het gehele file systeem te maken (“clonen” met dd of zo). Dan is de copie natuurlijk precies hetzelfde versleuteld, maar het is een compleet andere backup strategie met voor- en nadelen.

Henk, dank voor je informatieve reactie.

Backup is een wijd begrip en voor iedere situatie is er een backup strategie te ontwerpen.

Het woord “strategie” lijkt me in mijn geval wat overspannen: ieder weekend maak ik met rsync een backup van /home en dat is het dan wel.

Als je bijv. backups wilt maken van individuele bestanden (zoals jij met rsync) gaat het om een copie van de bestanden. Als die bestanden op een versleuteld file systeem staan betekent dat dat ze bij lezen niet meer versleuteld zijn. In feite zijn de bestanden nooit versleuteld, het file systeem is versleuteld. Ze staan dan onversleuteld in de systeem cache, in eventuele buffers, inwendige datastructuren van programma’s, enz. Bij wegschrijven zijn ze dus nog steeds onversleuteld, maar je kunt ze natuurlijk naar een ander versleuteld file systeem schrijven.

Als ik je goed begrijp kan ik gewoon rsync gebruiken voor het lezen van een versleuteld systeem. En dat niet alleen: als ik je goed heb begrepen kan rsync ook schrijven naar een versleuteld systeem. Klopt dat?

Je kunt ook een bestand zelf versleutelen. Dat bestand kun je dan, versleuteld, dus zonder het te ontsluiten, copieëren naar een andere plaats en daar is het dan nog steeds versleuteld. Het is dan ook versleuteld in het geheugen, cache, enz.

Dat doe ik al sinds jaren met een bestandje met wachtwoorden. Maar het lijkt me wat bewerkelijk om op die manier een heel bestandssysteem (of een groot gedeelte daarvan) te versleutelen. Bovendien gebruik ik de opties -a en --del van rsync en dat zal wel niet mogelijk zijjn bij bestanden die op die manier zijn versleuteld.

Je kunt er ook voor kiezen een backup van het gehele file systeem te maken (“clonen” met dd of zo). Dan is de copie natuurlijk precies hetzelfde versleuteld, maar het is een compleet andere backup strategie met voor- en nadelen.

Al kan ik niet precies aanduiden waarom, maar het lijkt me verstandiger om bestanden te kopiëren dat blokken met nullen en enen. (Maar ik gebruik wel altijd dd om een iso naar een usb-stick te schrijven)

Even terzijde: jouw teksten doen me vaak denken aan de uitspraak van Wittgenstein: “Wass sich überhaupt sagen lässt, lässt sich auch klar sagen”.
(Stond dit niet als motto boven het “Revised Report” van Algol-60?)

De strategie is dat je hebt nagedacht over wat je wel, wat niet en waarom en hoe vaak wilt backuppen om wat voor probleem/calamiteit (domme tikfout gesaved, bestand per ongeluk weggegooid, schijf kapot, computer verbrand, huis verbrand) aan te kunnen. Dat heb jij kennelijk ook gedaan. Je conclusie was mogelijk: ik wil de bestanden van de gebruikers individueel kunnen terugzetten, bewaren van één, een maximaal één week oude, copie is voldoende. Ik bewaar de backup …

Dan komt de taktiek oftewel implementatie: één maal per week een rsync naar een backup file systeem op …

Ik begrijp je niet helemaal, je leest toch nu al met rsync? De applicatie/programma weet niets van encryptie. De applicatie vraagt aan de Kernel om een bestand te openen en daarvan te lezen. Of dat op Reiserfs, ext2/3/4, xfs, Btrfs, al dan niet encrypted staat weet het programma niet.
Datzelfde geldt uiteraard met schrijven. rsync weet niets van file system encrypty. Dus of aan de lees- en/of de schrijfkant een encrypted file systeem wordt gebruikt maakt niets uit.

Het lijkt mij inderdaad bewerkelijk om honderden indivuele bestanden te versleutelen, maar ik geeft alleen aan wat kan om duidelijk te maken wat het verschil is tussen een individueel bestand en een bestandssysteem.
Overigens werkt volgens mij rsync gewoon met versleutelde bestanden. Het kijkt tenslotte niet naar de inhoud. Net als bijv. dd leest/schrijft het blokken. Ook voor weggooien heb je geen sleutel nodig.

Dat ligt geheel aan de toepassing. En inderdaad, een ISO is een compleet bestandssysteem. Als je dat mount en op bestandsniveau gaat copieëren heb je wel alle bestanden, maar op een ander bestandssysteem van waarschijnlijk een ander type.

Ik heb nog even gezocht hier naar mijn Algol-60 rapport, maar kan het zo snel niet vinden :frowning:

Dank voor je commentaar en voor de preciseringen.

Ik begrijp je niet helemaal, je leest toch nu al met rsync? De applicatie/programma weet niets van encryptie. De applicatie vraagt aan de Kernel om een bestand te openen en daarvan te lezen. Of dat op Reiserfs, ext2/3/4, xfs, Btrfs, al dan niet encrypted staat weet het programma niet.
Datzelfde geldt uiteraard met schrijven. rsync weet niets van file system encrypty. Dus of aan de lees- en/of de schrijfkant een encrypted file systeem wordt gebruikt maakt niets uit.

Kijk, hiermee haal je boven water wat ik “in principe” wel wist, namelijk dat de encryptie in de Kernel wordt gedaan en dat het daarom transparant is voor de toepassingen (en voor de gebruiker).
Ik ga binnenkort hiermee experimenteren. Leuk!

Veel dank dus voor je opmerkingen.

Ik heb nog even gezocht hier naar mijn Algol-60 rapport, maar kan het zo snel niet vinden :frowning:

Mijn herinnering aan het “Revised Report” zijn van ongeveer 50 jaar geleden en dus hooguit matig betrouwbaar, maar ik meen dat de tekst ergens links boven aan de eerste pagina stond.
Hoe dan ook: Wittgenstein vervolgt de zin met: “Woruber mann nicht reden kann, darüber soll man schweigen.”

@hcvv:
Toch nog een link naar het Revised Report gevonden: http://www.masswerk.at/algol60/report.htm
Het citaat vind je onder het kopje “Description of the reference Language”.
De TH Delft verspreidde indertijd kennelijk een uittreksel uit het complete report.

Leuk. Bedankt. Ik heb het meteen opgeslagen bij mijn andere nostalgische herinneringen aan het eerste computersysteem waar ik mee werkte. De Elliott 503. Algol 60 was daar de standaard taal.

En zo kun je je met 55 nog best jong voelen :D.