Jak ustawić etykietę na kontenerze dm-crypt + LUKS?


12

Właśnie otrzymałem nowy dysk flash USB i skonfigurowałem na nim 2 zaszyfrowane partycje. Użyłem dm-crypt (tryb LUKS) przez cryptsetup. W przypadku dodatkowej niezaszyfrowanej partycji dysk ma następującą strukturę:

  • /dev/sdb1, zaszyfrowane, ukrywające system plików ext4 oznaczony jako „Partycja 1”.
  • /dev/sdb2, zaszyfrowane, ukrywające inny system plików ext4, oznaczony jako „Partycja 2”.
  • /dev/sdb3, przejrzysty, widoczny system plików ext4 oznaczony jako „Partycja 3”.

Ponieważ etykiety są dołączone do systemów plików ext4, pierwsze dwa pozostają całkowicie niewidoczne, dopóki partycje nie zostaną odszyfrowane. Oznacza to, że w międzyczasie pojemniki LUKS nie mają etykiet. Jest to szczególnie denerwujące podczas korzystania z GNOME (automount), w którym to przypadku partycje pojawiają się jako „ x GB Encrypted ” i „ y GB Encrypted ”, dopóki nie zdecyduję się ich odblokować.

To nie jest tak naprawdę problem blokowania, ale jest dość denerwujący, ponieważ bardzo lubię moje etykiety i chciałbym, aby pojawiły się, nawet gdy moje partycje są nadal zaszyfrowane.

Czy istnieje zatem sposób dołączania etykiet do kontenerów dm-crypt + LUKS, tak jak dołączamy etykiety do systemów plików ext4? Czy nagłówek dm-crypt + LUKS ma na to miejsce, a jeśli tak, to jak mogę ustawić etykietę?

Zauważ, że nie chcę ujawniać moich etykiet ext4 przed odszyfrowaniem, co byłoby głupie. Chciałbym dodać inne etykiety do kontenerów, które mogą się pojawić, gdy etykiety ext4 są ukryte.


Czy dysk USB został podzielony na partycje za pomocą MBR lub GPT? Wierzę, że możesz nazwać partycje GPT, co może ci pomóc.
garethTheRed

1
Skłamałem (częściowo) - utworzyłem partycję GPT na pamięci USB i gdisknadałem tej partycji etykietę. Kiedy utworzyłem system plików na tej partycji, GNOME rozpoznał go tylko jako „wolumin 501 MB”. Tak więc, choć można go oznaczyć, GNOME nie rozpoznaje etykiet partycji; tylko etykiety systemu plików.
garethTheRed

1
@garethTheRed Sprawdziłeś w tym samym czasie, co ja wtedy! Sformatowałem dysk za pomocą GPT (użyłem fdiskdomyślnego trybu MBR), a nazwy partycji nie pojawiają się w GNOME. Jednak pytanie nie było tak naprawdę specyficzne dla GNOME i chociaż sztuczka nazw GPT działa na niższym poziomie, może to nadal być prawidłowe rozwiązanie opisanego przeze mnie problemu. Zaczekam jeszcze trochę, aby zobaczyć, czy ktoś ma rozwiązanie działające na poziomie LUKS, ale myślę, że nazwy partycji GPT mogą być treścią prawidłowej odpowiedzi.
John WH Smith

1
Woluminy LUKS nie mają nazwy. Przypisuje się im tylko jeden, gdy urządzenie jest mapowane, co nie może się zdarzyć, dopóki nie podasz klucza. Jedynym rozwiązaniem jest znalezienie sposobu, aby powiedzieć Gnome'owi o nazwie, która nie jest „fizycznie” dołączona do woluminu, lub nadać nazwę woluminowi obejmującemu (np. Partycji). PS To pytanie jest tutaj w porządku i byłoby nie na temat bezpieczeństwa informacji, ponieważ nie dotyczy bezpieczeństwa, chodzi o użycie narzędzia użytkownika końcowego, który zdarza się zrobić coś związanego z bezpieczeństwem.
Gilles „SO- przestań być zły”

Jeśli ustawisz etykietę partycji, otrzymasz odpowiednio nazwane dowiązanie symboliczne /dev/disk/by-partlabel. Wiem, że to nie pomaga narzędziom, które tam nie szukają, ale daje stabilną ścieżkę, której można używać w skryptach i tym podobnych.
asciiphil

Odpowiedzi:


2

Myślę, że rozwiązaniem jest napisanie takich reguł udev.

KERNEL=="sd*", ENV{ID_FS_UUID}=="your-sdb1-uuid", ENV{ID_FS_LABEL}="Partition_1", ENV{ID_FS_LABEL_ENC}="Partition_1"
KERNEL=="sd*", ENV{ID_FS_UUID}=="your-sdb2-uuid", ENV{ID_FS_LABEL}="Partition_2", ENV{ID_FS_LABEL_ENC}="Partition_2"

1
Działa jak marzenie! Chociaż wolałbym rozwiązanie polegające na przechowywaniu informacji na nośniku wymiennym, obawiam się, że mimo wszystko będę musiał zachować konfigurację specyficzną dla systemu. Poza tym pytanie stało się dość konkretne, gdy zaangażował się GNOME: Cieszę się, że ktoś znalazł rozwiązanie, które nie zależy od jego zachowania.
John WH Smith

6

aby uzyskać trwałe rozwiązanie zmiany etykiety pojemnika , użyj:

sudo cryptsetup config /dev/sdb1 --label YOURLABEL

2
Być może warto sprecyzować, że działa to tylko w przypadku nagłówków LUKS2, ale zdecydowanie najlepsze rozwiązanie
Torin

2

Ta metoda wydaje się działać dla mnie: http://www.cyberciti.biz/faq/linux-partition-howto-set-labels/

Więc jeśli używasz systemu plików EXT (używam tutaj ext4):

  1. Odblokuj partycję LUKS.
  2. Ustaw nazwę odblokowanego systemu plików (nie partycji LUKS).

    e2label <path> <name>
    

    pathGeneraly jest /dev/mapper/<something>w przypadku korzystania cryptsetup. Ale w moim przypadku, ponieważ używam udisk, to tam /dev/dm-x, gdzie xjest liczba.

Myślę, że ta metoda przechowuje informacje na nośniku wymiennym, tak jak chciałeś, ale nadal nie testowałem.


2
Dziękuję, ale niestety nie może to działać z kontenerami LUKS, które ukrywają każdą informację o ich wewnętrznych systemach plików (w tym ich etykietach). Chodziło tutaj o nazwanie kontenera LUKS, a nie tego, co jest w nim ukryte, aby nazwa pojawiła się nawet wtedy, gdy kontener jest nadal zaszyfrowany: p (patrz mój drugi akapit)
John WH Smith

Operacje, przepraszam ... Myślałem, że chcesz nazwać wewnętrzny system plików, a nie partycję LUKS. Może dlatego, że właśnie to chciałem zrobić, kiedy dotarłem do tego pytania. = P
ktoś

0

Przekonałem się, że kombinacja odpowiedzi @ kristóf-szalay i @someone jest tym, czego chcę, i dodałem kilka notatek.

Konkretnie:

sudo cryptsetup config /dev/sdb1 --label YOURLABEL

ITO oryginalne pytanie, pozwoli na wyświetlenie ikony w twoim DM z YOURLABEL

Jeśli miałbyś otworzyć kryptę podwójnym kliknięciem, zostanie ona zamontowana jako

/media/user/uuid
eg:
/media/fred/e54e89a-.....

Co znowu może powodować zamieszanie, powiedzmy, że jesteś w CLI.

Wykonując:

e2label <path> <name>

Ta nazwa spowoduje, że zamontowana ścieżka przyjmie wartość < name >:

/ media / fred / name

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.