Kryptert ekstern backup

Fra GNUskole
Hopp til: navigasjon, søk

Introduksjon

Med Linux kan vi benytte en ekstern maskin der vi har ssh-tilgang som en sikker lagringsplass for data. Etter at en mappe på den eksterne maskinen blir montert som forklart under, vil vi få en mappe lokalt som for OS og applikasjoner ser ut som en hvilken som helst annen mappe, men alt som dumpes i den vil bli kryptert og overført til den eksterne maskinen "on the fly". Tilsvarende blir ting vi leser fra mappen bli overført fra den eksterne maskinen, dekryptert og presentert for OS eller applikasjon.

Til dette benytter vi sshfs for å montere et filsystem over ssh og encfs for å kryptere det. Mappen kan selvsagt benyttes som en vanlig mappe, den kan benyttes som backup, fjernlagring, etc, etc.

Installasjon

sshfs og encfs ligger i Fedora-depotene, så man kan nå dem vha yum:

[root@server]# yum -y install sshfs encfs
...

Vi kan så sjekke at "fuse"-modulen er lastet; det er denne som gjør at brukere kan montere filsystemer:

[root@server]# lsmod | grep fuse
fuse                   3848

Denne bør gi en utputt som ligner den over.

Brukeren(e) som skal benytte dette må legges til i gruppen "fuse" på denne måten,

[root@server]# usermod -G fuse bruker1

og man kan så sjekke at bruker1 er lagt til ved å kjøre

[root@server]# id bruker1
uid=500(bruker1) gid=500(bruker1) groups=500(bruker1),497(fuse)

For at dette skal tre i kraft kreves det en omstart av X hvis det kjører. Enten kan maskinen rebootes, eller så kan man kjøre

 [root@server]# init3 ; sleep 5 ; init 5

Arbeidet som root er dermed gjort, og brukeren selv må lage noen mapper:

[bruker1@server]$ mkdir ~/.remote-secure-volume
[bruker1@server]$ mkdir ~/remote-encrypted-volume

Brukeren bør så logge seg på den eksterne maskinen og lage en mappe som skal inneholde de krypterte filene. Dette gjøres via ssh, og her lager vi mappen "encrypted":

[user1@remote]$ mkdir ~/encrypted

Monteringen av det eksterne filsystemet skjer i to steg. Først monteres det via sshfs (her blir man spurt om ssh-passordet til den eksterne maskinen), deretter monteres det sshfs-monterte filsystemet som et kryptert system via encfs.

Første gangen encfs kjøres blir man spurt om å oppgi et passord som beskytter området, og om metode. Velg standardmetoden og et godt passord.

Selve monteringen gjøres slik:

[bruker1@server]$ sshfs -o idmap=user user1@remote:encrypted ~/.remote-secure-volume
[bruker1@server]$ encfs ~/.remote-secure-volume ~/remote-encrypted-volume

Den første kommandoen monterer "encrypted"-mappen på den eksterne maskinen til ~/.remote-secure-volume lokalt ved hjelp av ssh (oppgi ssh-passordet når du blir bedt om det), og den andre kommandoen monterer det som et kryptert filområde. Opsjonen -o idmap=user er med i sshfs-kommandoen fordi man nødvendigvis ikke har samme navn og gid på lokal og ekstern maskin.

Bruk

Mappen ~/remote-encrypted-volume kan nå brukes som en hvilken som helst annen mappe på systemet, men alt som legges i den vil krypteres og sendes via ssh-forbindelsen til den eksterne maskinen. Ingenting lagres lokalt. Sammen med unison-verktøyet kan dette benyttes til enkelt å synkronisere en lokal mappe med en ekstern kryptert mappe.

Avmontering

[bruker1@server]$ fusermount -u ~/remote-encrypted-volume
[bruker1@server]$ fusermount -u ~/.remote-secure-volume

Både monterings- og avmonteringskommandoene kan selvsagt erstattes av skript med mer egnete navn, tilegnes ikoner, etc.

Credits:

https://wiki.ubuntu.com/SecureEncryptedRemoteVolumeHowTo