Hyppää sisältöön

Docs CSC now features an automatic Finnish translation. Click here for more information.

Warning!

Puhti and Mahti are being decommissioned in stages, and their storage areas will become fully unavailable from 15 October 2026. Clean up unnecessary files and move any data you need to keep by 31 August 2026. See the Roihu data migration guide for instructions on transferring your data to Roihu.

Puhti scratch is very full: keep only active data there and move or delete everything else. No new Puhti scratch quota will be granted.

Salatut pysyvät taltiot

Tässä artikkelissa kerrotaan, miten salattua pysyvää taltiota käytetään Poudassa. Taltio salataan virtuaalikoneen (VM) sisällä LUKSilla (Linux Unified Key Setup), mikä varmistaa, että taltiolle tallennettu data pysyy levossa salattuna. Vain käyttäjät, joilla on salauslause, voivat käyttää taltion sisältöä. Taltio salataan ja puretaan virtuaalikoneen sisällä LUKSilla.

Info

Jos käsittelet sensitiivistä dataa, harkitse Sensitiivisen datan palveluita tai ePoutaa, jotka on suunniteltu tähän tarkoitukseen.

Esivaatimukset

Uuden laitteen tunnistaminen

Kun taltio on liitetty, kirjaudu VM:ään SSH:n (Secure SHell) kautta ja listaa lohkolaitteet:

lsblk

Järjestelmälevy on /dev/vda. Uusi liitetty taltio näkyy seuraavana vapaana laitteena, yleensä /dev/vdb. Varmista, että sillä on odotettu koko eikä tiedostojärjestelmää:

sudo lsblk -f /dev/vdb

FSTYPE-sarakkeen pitäisi olla tyhjä. Tämän artikkelin loppuosa olettaa, että laite on /dev/vdb.

Cryptsetupin asentaminen

Testauksessa käytetty Ubuntu 26.04 LTS -levykuva sisältää cryptsetup-paketin oletuksena. Varmista asennus suorittamalla:

cryptsetup --version

Jos cryptsetup ei ole asennettu, asenna se paketinhallinnalla.

Ubuntussa ja Debianissa:

sudo apt update
sudo apt install -y cryptsetup

Rocky Linuxissa ja AlmaLinuxissa:

sudo dnf install -y cryptsetup

LUKS-säiliön luominen

Alusta taltio LUKS2-säiliöksi. Tämä vaihe tehdään vain ensimmäisellä käyttökerralla:

sudo cryptsetup luksFormat --type luks2 /dev/vdb

Sinua pyydetään kirjoittamaan vahvistukseksi YES isoilla kirjaimilla ja sen jälkeen syöttämään salauslause kahdesti. Valitse vahva salauslause ja tallenna se salasananhallintaan.

Varmista, että säiliö luotiin:

sudo cryptsetup luksDump /dev/vdb

Tulosteessa näkyvät Version: 2, salausalgoritmi (aes-xts-plain64 oletuksena) ja yksi käytössä oleva avainpaikka.

Säiliön avaaminen ja tiedostojärjestelmän luominen

LUKS-säiliön avaaminen luo puretun laitteen polkuun /dev/mapper/<name>:

sudo cryptsetup luksOpen /dev/vdb securedata

Sinulta kysytään salauslausetta. Nimi securedata on vapaavalintainen; mikä tahansa nimi käy.

Luo XFS-tiedostojärjestelmä puretulle laitteelle:

sudo mkfs.xfs /dev/mapper/securedata

Luo liitospiste ja liitä laite:

sudo mkdir -p /media/securedata
sudo mount /dev/mapper/securedata /media/securedata

Vaihda omistajuus niin, että tavallinen käyttäjä voi kirjoittaa taltiolle. Alla oleva esimerkki käyttää käyttäjää ubuntu.

sudo chown ubuntu:ubuntu /media/securedata

Varmista tulos:

lsblk -f

/dev/vdb näyttää arvon FSTYPE crypto_LUKS, ja sen alla oleva securedata-kuvaus näyttää arvon FSTYPE xfs ja liitospisteen /media/securedata.

LUKS-otsakkeen varmuuskopiointi

LUKS-otsake sisältää metadatan ja avainpaikat, joita tarvitaan salatun taltion avaamiseen. Avainpaikat tallentavat salattuja versioita pääsalausavaimesta.

Jos otsake ylikirjoitetaan tai vioittuu, taltion data muuttuu pysyvästi palautuskelvottomaksi, vaikka oikea salauslause olisi tiedossa.

Luo otsakkeen varmuuskopio:

sudo cryptsetup luksHeaderBackup /dev/vdb \
    --header-backup-file ~/vdb-luks-header.bin

sudo chmod 0400 ~/vdb-luks-header.bin

Kopioi otsakkeen varmuuskopio pois VM:ltä (esimerkiksi työasemallesi käyttäen scp:tä). Sekä otsakkeen varmuuskopio että salauslause tarvitaan taltion avaamiseen.

Salatun taltion hallinta

Säiliön sulkeminen

Ennen VM:n sammuttamista tai kun haluat tehdä taltiosta saavuttamattoman, irrota tiedostojärjestelmä ja sulje LUKS-säiliö:

sudo umount /media/securedata
sudo cryptsetup luksClose securedata

Tämän jälkeen laite sisältää vain salattua dataa ja /dev/mapper/securedata ei ole enää olemassa.

Säiliön avaaminen

Uudelleenkäynnistyksen jälkeen tai kun taltio tarvitaan uudelleen, avaa ja liitä se:

sudo cryptsetup luksOpen /dev/vdb securedata
sudo mount /dev/mapper/securedata /media/securedata

Tilan tarkistaminen

sudo cryptsetup status securedata

Taltion irrottaminen

Sulje aina LUKS-säiliö ennen taltion irrottamista:

sudo umount /media/securedata
sudo cryptsetup luksClose securedata

Irrota sitten taltio VM:stä tämän ohjeen mukaisesti.

Warning

Taltion irrottaminen sen ollessa edelleen liitettynä tai avoinna voi vioittaa tiedostojärjestelmää.

Taltion liittäminen uudelleen

Sama salattu taltio voidaan liittää samaan tai toiseen VM:ään.

Kun olet liittänyt taltion VM:ään samalla tavalla kuin yllä, jatka seuraavasti:

lsblk
sudo cryptsetup luksOpen /dev/vdb securedata
sudo mount /dev/mapper/securedata /media/securedata

Sama salauslause vaaditaan, ja data säilyy muuttumattomana.

Info

Laitenimenä ei välttämättä ole /dev/vdb. Varmista aina oikea laite komennolla lsblk ennen avaamista.

Salauslauseiden hallinta

LUKS2 tukee enintään 32 avainpaikkaa. Vähintään kahden salauslauseen käyttöä suositellaan, jotta toinen voidaan vaihtaa tai palauttaa, jos se unohtuu.

Lisää ylimääräinen salauslause:

sudo cryptsetup luksAddKey /dev/vdb

Sinulta kysytään olemassa olevaa salauslausetta ja sitten uutta.

Poista salauslause:

sudo cryptsetup luksRemoveKey /dev/vdb

Sinulta kysytään poistettavaa salauslausetta.

Warning

Älä poista viimeistä jäljellä olevaa salauslausetta. Taltio muuttuu palautuskelvottomaksi.

Listaa käytössä olevat avainpaikat:

sudo cryptsetup luksDump /dev/vdb

Salaettujen taltioiden tilannevedokset

Luo tilannevedokset kuten on kuvattu kohdassa taltion tilannevedokset.

Kun uusi taltio luodaan tilannevedoksesta, se on avattava samalla salauslauseella, joka oli voimassa tilannevedoksen ottamisen aikaan.

Salatun taltion laajentaminen

Laajenna taltio kuten on kuvattu kohdassa Poudan selainkäyttöliittymässä liitetyn taltion koon kasvattaminen uuteen kokoon. Taltion koon kasvattamisen jälkeen lisätila ei ole vielä käytettävissä LUKS-säiliön tai tiedostojärjestelmän sisällä.

Irrota tiedostojärjestelmä VM:llä ja sulje salattu säiliö:

sudo umount /media/securedata
sudo cryptsetup luksClose securedata

Irrota ja liitä sitten taltio uudelleen. Varmista, että /dev/vdb vastaa uutta kokoa: lsblk-komennon pitäisi näyttää uusi koko.

Avaa sitten salattu säiliö uudelleen, muuta LUKS-kuvauksen kokoa, liitä tiedostojärjestelmä uudelleen ja kasvata XFS-tiedostojärjestelmää:

sudo cryptsetup luksOpen /dev/vdb securedata
sudo cryptsetup resize securedata
sudo mount /dev/mapper/securedata /media/securedata
sudo xfs_growfs /dev/mapper/securedata

Varmista uusi koko:

df -h /media/securedata

Lisätietoja taltion laajentamisesta on kohdassa Poudan selainkäyttöliittymässä liitetyn taltion koon kasvattaminen.

Suomenkielinen tekoälykäännös

Sisällössä voi esiintyä virheellistä tietoa tekoälykäännöksestä johtuen.

Klikkaa tästä antaaksesi palautetta