ZFS, kryptera och lägga till en vdev i poolen?

Permalänk
Medlem

ZFS, kryptera och lägga till en vdev i poolen?

Hej allesammans! Jag sitter här i startgroparna att implementera ZFS. Det kommer köras under Ubuntu och då kryptering under finns native i den versionen så får det bli en tredjepartslösning, för tillfället TrueCrypt.

Nu till min frågeställning:
Jag vet hur man skapar en pool och lägger till diskar i en vdev i den. Det jag är fundersam på är just hur hur jag lyckas kryptera en vdev innan den läggs till i poolen. Det problemet kommer jag ju stöta på om jag senare vill utöka min pool med mer utrymme. Jag minns att många föreslog den här metoden när det gällde kryptering av ZFS-volymer förut så det GÅR ju på något sätt. Jag är bara lite osäker på just hur
Jag måste ju kunna skapa en vdev och få den mountad på något sätt för att sedan köra krypteringen, för att slutligen lägga till den i poolen färdig och klar. Har någon en idé om hur man faktiskt går tillväga? Letade mig runt på nätet men tyckte inte att jag hittade något som passade just mitt scenario, att lägga skapa en vdev och sedan slänga in den i poolen manuellt istället för att just bara slänga in den direkt i poolen när vdeven skapas.

Tips från coachen, någon?

Permalänk
Medlem

http://www.larsko.org/ZfsUbuntu kan vara nåt. Har inte testat själv dock

Permalänk
Medlem

Hjälper dessvärre inte mig alls..
De verkar kryptera disken och sedan lägga till den i zpoolen, istället för att kryptera en hel vdev med diskar i poolen.

Permalänk
Medlem

Antingen krypterar du före zfs eller efter.

Förslagsvis krypterar du före och kör dm-crypt/luks istället, du krypterar alltså varje disk innan du ger den till zfs, och till zfs ger du den krypterade volymen efter den är upplåst.

Tänkte själv köra zfs med kryptering på linux. Slutade med att jag valde mdadm, lvm (med dm-crypt på vissa lv-volymer) och xfs.

Visa signatur

CCNP

Permalänk
Medlem

Hej maniak och tack för svaret!
Jag tror att jag läste fel förut i tråden jag hittade här tidigare, om att man kan kryptera en vdev och sedan slänga in den i poolen. Det som sades var nog bara att man krypterar den färdiga mountade volymen ("/tank" eller dylikt). De nämnde nog inte problemet man får när man ska utöka volymen.
Jag hade tänkt köra TC men har även kikat på dm-crypt litet. Oavsett metod så hade jag först och främst tänkt kryptera varje disk för sig och sedan bara lägga till dem i zpoolen senare. Det tänkte jag på först innan jag fick upp ögonen för vdev-krypteringen. Men nu verkar det åter vara aktuellt. Hm.. Intressant det där.

Fråga, som poppade upp i huvudet precis nu: Vad händer om jag krypterar den mountade poolen ("/tank" som i exemplet ovan) och bara avkrypterar när det väl är dags för fler diskar & vdevar? Det gör man ju inte så ofta direkt. Har hört liitet liitet om att det är riskabelt dock, jag skall gräva lite i det så får vi se.

Permalänk
Medlem

Jag har en fråga relaterad till ämnet;

En skapad pool, raidz2, med 8st diskar. Kan man, en disk i taget, ta bort disken från poolen, kryptera den, och lägga tillbaka disken i poolen och på så sätt migrera sin pool till krypterad dito?
Jag har försökt hitta folk som gjort det, men det verkar mest göras från start. Är det omöjligt?

Inget hindrar mig från att prova med en disk och se om det fungerar, men jag är rädd att något strular när jag väl gjort den sista disken och ZFS uppfattar att alla diskar nu är något mindre än förut (korrekt?)

Det blir ju ett sant helvete att boota om burken med alla lösenord som ska skrivas in, men den startas väl om 2-3 ggr om året, så jag kan väl leva med det..

Visa signatur

WS: Asus P8Z77-I Deluxe mITX | Intel 3770K@4.6 | NH-U12P | Asus 780 GTX | Corsair 2x8GB 1600Mhz CL9 | Samsung 840 512GB | Ubuntu 16.04.3 x86_64 | Corsair AX750 | 2x Dell U2412M | Puppe.se | NAS: i7 860, 16GB DDR3, GA-P55M-UD4, FD Define R3, 8x2TB Samsung F4EG, Serveraid M1015, EVGA 750W G2 PSU, FreeBSD x64

Permalänk
Medlem
Skrivet av Samsite:

Hej maniak och tack för svaret!
Jag tror att jag läste fel förut i tråden jag hittade här tidigare, om att man kan kryptera en vdev och sedan slänga in den i poolen. Det som sades var nog bara att man krypterar den färdiga mountade volymen ("/tank" eller dylikt). De nämnde nog inte problemet man får när man ska utöka volymen.
Jag hade tänkt köra TC men har även kikat på dm-crypt litet. Oavsett metod så hade jag först och främst tänkt kryptera varje disk för sig och sedan bara lägga till dem i zpoolen senare. Det tänkte jag på först innan jag fick upp ögonen för vdev-krypteringen. Men nu verkar det åter vara aktuellt. Hm.. Intressant det där.

Fråga, som poppade upp i huvudet precis nu: Vad händer om jag krypterar den mountade poolen ("/tank" som i exemplet ovan) och bara avkrypterar när det väl är dags för fler diskar & vdevar? Det gör man ju inte så ofta direkt. Har hört liitet liitet om att det är riskabelt dock, jag skall gräva lite i det så får vi se.

Afaik kan du bara kryptera före du ger disken till zpool eller efter du skapat zfs filsystemet och monterad det. Så efter kan du bara köra en truecrypt fil, inte på filsystemet.

Visa signatur

CCNP

Permalänk
Medlem
Skrivet av maniak:

Afaik kan du bara kryptera före du ger disken till zpool eller efter du skapat zfs filsystemet och monterad det. Så efter kan du bara köra en truecrypt fil, inte på filsystemet.

Hm.. Kryptera en disk kan man ju göra, även likaså att avkryptera den?
Nu tänker jag visserligen på TC under Windows där man kan avkryptera hela diskar man har krypterat. Osäker på det går under Linux, vet att en hel del saker inte finns med där. Men i värsta fall kan man ju koppla ur & köra diskarna i en Windowsmaskin för avkryptering.

Edit igen: Se där ja. Man kan bara avkryptera systempartitioner tydligen. Så som de här diskarna är tänkt att användas så går det EJ.
Källa: http://www.truecrypt.org/docs/removing-encryption

Permalänk
Avstängd
Skrivet av Schrimp:

Jag har en fråga relaterad till ämnet;

En skapad pool, raidz2, med 8st diskar. Kan man, en disk i taget, ta bort disken från poolen, kryptera den, och lägga tillbaka disken i poolen och på så sätt migrera sin pool till krypterad dito?
Jag har försökt hitta folk som gjort det, men det verkar mest göras från start. Är det omöjligt?

Inget hindrar mig från att prova med en disk och se om det fungerar, men jag är rädd att något strular när jag väl gjort den sista disken och ZFS uppfattar att alla diskar nu är något mindre än förut (korrekt?)

Det blir ju ett sant helvete att boota om burken med alla lösenord som ska skrivas in, men den startas väl om 2-3 ggr om året, så jag kan väl leva med det..

Testa i en virtuel maskin? Skapa 8st tomma filer på 100MB styck, och gör en raidz2 utav dem och sätt igång?

Permalänk
Medlem
Skrivet av saddam:

Testa i en virtuel maskin? Skapa 8st tomma filer på 100MB styck, och gör en raidz2 utav dem och sätt igång?

Ja, tanken har inte ens slagit mig. Självklart gör jag så, tack

EDIT

Det verkar gå utmärkt. Kanske har det att göra med ashift=12 på poolen. Hursom, jag skrev ihop lite steg jag följde.

http://www.puppe.se/2013/09/14/encrypting-an-existing-raidz2/

Jag har inte gjort det skarpt än tål att sägas, guiden är skriven som om det vore så, men allt pekar på att det fungerar hittills. Första disken håller på att dd'as just nu.

EDIT 2:
Och nu är resilvering igång.

pool: tank state: DEGRADED status: One or more devices is currently being resilvered. The pool will continue to function, possibly in a degraded state. action: Wait for the resilver to complete. scan: resilver in progress since Sun Sep 15 09:45:09 2013 105G scanned out of 7,20T at 392M/s, 5h16m to go 12,8G resilvered, 1,42% done config: NAME STATE READ WRITE CKSUM tank DEGRADED 0 0 0 raidz2-0 DEGRADED 0 0 0 replacing-0 UNAVAIL 0 0 0 12045748676472643058 UNAVAIL 0 0 0 was /dev/label/ss-disk1 label/ss-disk1.eli ONLINE 0 0 0 (resilvering) label/ss-disk2 ONLINE 0 0 0 label/ss-disk3 ONLINE 0 0 0 label/ss-disk4 ONLINE 0 0 0 label/ss-disk5 ONLINE 0 0 0 label/ss-disk6 ONLINE 0 0 0 label/ss-disk7 ONLINE 0 0 0 label/ss-disk8 ONLINE 0 0 0 errors: No known data errors

Ska bli intressant att se vad min CPU mäktar med i throughput sen, med 8st krypterade diskar och ingen AES-NI (Intel Core i7 860).

Lade till länk
Visa signatur

WS: Asus P8Z77-I Deluxe mITX | Intel 3770K@4.6 | NH-U12P | Asus 780 GTX | Corsair 2x8GB 1600Mhz CL9 | Samsung 840 512GB | Ubuntu 16.04.3 x86_64 | Corsair AX750 | 2x Dell U2412M | Puppe.se | NAS: i7 860, 16GB DDR3, GA-P55M-UD4, FD Define R3, 8x2TB Samsung F4EG, Serveraid M1015, EVGA 750W G2 PSU, FreeBSD x64

Permalänk
Medlem

Ett tänkbart alternativ kan vara att skapa en "ZFS volume" som man därefter krypterar och formaterar med valfritt filsystem. Eller skapa en krypterad fil som man har som lagring för sina hemliga filer.

Men om man krypterar diskarna innan de läggs in i poolen, får man då upp ett lösenord när man startar datorn eller hur funkar det? Lagrar men en nyckel på USB-minne och man låser upp nyckeln med ett lösenord? Känns som det kommer kräva lite handpåläggning vid eventuell reboot.

Aaah, läste schrimps länk. Borde man inte kunna ha samma passphrase till alla diskar, alltså en gemensam nyckel på något sätt?