Şifreli LVM birimim (LUKS cihazı) önyükleme sırasında neden takılmıyor?


15

Bu kılavuzu izleyerek şifreli bir birim kurmaya çalışıyorum

Her şey ayarlandı, ancak şifrelenmiş birimin montajı hata zamanında önyükleme sırasında başarısız oluyor:

fsck.ext4: / dev / mapper / safe_vault açmaya çalışırken böyle bir dosya veya dizin yok Muhtemelen var olmayan aygıt?

Bu benim kurulumum:

crypttab

$ sudo cat /etc/crypttab
safe_vault  /dev/disk/by-uuid/d266ae14-955e-4ee4-9612-326dd09a463b  none    luks

NOT:

Gelen uuid:

$ sudo blkid /dev/mapper/<my_logical_group>-safe_vault 
/dev/mapper/<my_logical_group>-safe_vault: UUID="d266ae14-955e-4ee4-9612-326dd09a463b" TYPE="crypto_LUKS" 

fstab

$ sudo cat /etc/fstab | grep safe_vault
/dev/mapper/safe_vault      /safe-vault     ext4    defaults    0 2

Ne yaptım ...

Bu yüzden geliştiricinin web sitesine gittim ve Ortak Sorunlar SSS'de şöyle diyorlar:

Çekirdeğinizde aygıt eşleyici ve crypt hedefi bulunduğundan emin olun. "Dmsetup target" çıktısında bir "crypt" hedefi listelenmelidir. Orada yoksa veya komut başarısız olursa, çekirdeğe aygıt eşleyici ve crypt-target ekleyin.

Ben de öyle yaptım, bir hedefim yok crypt:

$ sudo dmsetup targets
striped          v1.4.1
linear           v1.1.1
error            v1.0.1

Sorun şu ki, böyle bir hedefi nasıl ekleyeceğimi bilmiyorum.

Bu ( crypthedefe sahip değil ) belki crypttabyapılandırma sırasında önyükleme zaman yoksayılması neden olur ve bu nedenle şifreli birim eşlemedi fstabçünkü giriş başarısız olmaya çalışıyorum .cryptsetup/dev/mapper/safe_vault

NOT:

Şifrelenmiş birim başarıyla elle eşleştirilebilir, monte edilebilir ve yazılabilir:

$ sudo cryptsetup luksOpen /dev/mapper/<my_logical_group>-safe_vault safe_vault
Enter passphrase for /dev/mapper/<my_logical_group>-safe_vault: 

$ sudo mount /dev/mapper/safe_vault /safe_vault

Haritalama ve montajdan sonra şu şekilde görünür:

$ sudo lsblk -o name,uuid,mountpoint
NAME                                  UUID                                   MOUNTPOINT
sda                                                                          
├─sda1                                28920b00-58d3-4941-889f-6249357c56ee   
├─sda2                                                                       
└─sda5                                uhBLE7-Kcfe-RMi6-wrlX-xgVh-JfAc-PiXmBe 
  ├─<my_logical_group>-root (dm-0)       1bed9027-3cf7-4f8d-abdb-28cf448fb426   /
  ├─<my_logical_group>-swap_1 (dm-1)     a40c16c4-7d0c-46d7-afc8-99ab173c20bb   [SWAP]
  ├─<my_logical_group>-home (dm-2)       e458abb7-b263-452d-8670-814fa737f464   /home
  ├─<my_logical_group>-other (dm-3)      0a1eec42-6534-46e1-8eab-793d6f8e1003   /other
  └─<my_logical_group>-safe_vault (dm-4) d266ae14-955e-4ee4-9612-326dd09a463b   
    └─safe_vault (dm-5)               9bbf9f47-8ad8-43d5-9c4c-dca033ba5925   /safe-vault
sr0  

GÜNCELLEME

  • Görünen o ki hedefim var cryptama onunla ortaya çıkması dmsetup targetsiçin öncecryptsetup luksOpen <my-device>
  • Ben kullanarak denedim UUID@Mikhail Morfikov en uygun yerine s cevap ama hala açılış esnasında başarısız olur.

Hala sorun bir şekilde şifrelenmiş birim cryptsetup luksOpenönyükleme zamanında eşleme (ile açıldı ) böylece hiçbir /dev/mapper/<safe_vault or UUID>var, sonra (fstab) monte etmeye çalışıyorum başarısız olduğunu düşünüyorum.

GÜNCELLEME 2

Görünüşe göre önyükleme sırasında monte etmek için gerekli komut dosyalarına sahip değildim. @ MikhailMorfikov'un cevabındaki nota bakınız.


1
El ile yaptıktan sonra crypt hedefi görünüyor luksOpenmu? Orada olmasaydı, luksOpen'ın da başarısız olacağını beklerdim.
CVn

Tamam, sudo cryptsetup luksOpeniki yeni hedef belirlendikten sonra sudo dmsetup targets: errorve crypt. Sanırım soruyu değiştirmek
zorundayım

Bu bir bölüm mü yoksa bir dosya taşıyıcısı mı?
Mikhail Morfikov

/dev/mapper/<my-logical-volume>-safe_vaultLVM ile oluşturulan mantıksal bir birimdir ve /dev/mapper/safe_vaulteşleştirildiği cihazdır cryptsetup luksOpen /dev/mapper/<my-logical-volume>-safe_vault. crypttabLVM hacimleriyle çalışıp çalışmadığını biliyor musunuz ?
pgpb.padilla

Ben luks bölümünde lvm var, aslında tüm 1,5 TB disk şifreli (hariç /boot). Hepsi önyükleme sırasında sorunsuz bir şekilde monte edilmiştir. Düzenledikten initramfssonra güncellediğinizden emin misiniz /etc/crypttab? lsblk -o name,uuid,mountpointHer şeyin monte edildiği ve gerektiği gibi çalıştığı zamanın çıktısını gösterebilir misiniz ?
Mikhail Morfikov

Yanıtlar:


16

UUID'lere dikkat etmelisiniz. Örneğin, bu benim yapılandırmam:

# lsblk -o name,uuid,mountpoint
├─sda2                         727fa348-8804-4773-ae3d-f3e176d12dac
│ └─sda2_crypt (dm-0)          P1kvJI-5iqv-s9gJ-8V2H-2EEO-q4aK-sx4aDi
│   ├─debian_crypt-swap (dm-1) 3f9f24d7-86d1-4e21-93e9-f3c181d05cf0   [SWAP]
│   ├─debian_crypt-tmp (dm-2)  93fc8219-f985-45fb-bd5c-2c7940a7512d   /tmp
│   ├─debian_crypt-home (dm-3) 12e8566c-8f0f-45ec-8524-6d9d9ee91eae   /home
│   └─debian_crypt-root (dm-4) 9685570b-4c9e-43ea-815e-49d10dc7a1bf   /

4 birim (LVM) ile bir şifreli bölüm (sda2) var. İhtiyacım olan şey, doğru dosyalarda iki UUID ayarlamak. UUID gider sda2 /etc/crypttabve (örneğin debian_crypt-root için) hacmi UUID gider /etc/fstab.

Yani, şöyle olurdu:

# cat /etc/crypttab
sda2_crypt              UUID=727fa348-8804-4773-ae3d-f3e176d12dac   none        luks

# cat /etc/fstab
UUID=9685570b-4c9e-43ea-815e-49d10dc7a1bf       /               ext4    defaults,errors=remount-ro              0 1

Dosyayı değiştirdikten sonra /etc/crypttab, initramfs'yi yeniden oluşturmanız gerekir:

# update-initramfs -u -k all

NOT

cryptsetupÖnyükleme sırasında şifrelenmiş birimlerin otomatik olarak sayılmasını destekleyen başlangıç ​​komut dosyalarına sahip olduğu için paketin yüklenmesi gerekir.

Neden bundan bahsetmeye zahmet ediyorsunuz? Kurulum Debian Wheezy sırasında kurulum LVM yükler buysa, paketler -cryptsetup bin , libcryptsetup4ve lvm2fakat cryptsetup, böylece boot zamanında LUKS cihazları monte etmek kurulum LVM & LUKS cihazlara araçlar ancak komut gerekli var. Bunlar cryptsetup paketinde geliyor .


Kullanmayı denedim UUIDama aynı hatayı alıyorum. Soruyu ayrıntılarla güncelleyeceğim.
pgpb.padilla

Merhaba, bu biraz uzun sürüyor, sohbet edebilir miyiz ?
pgpb.padilla

Bir yana, / etc / crypttab dosyasını düzenlemeseniz bile, belirli şifreleme ayarlarını değiştirirseniz diskler sizin için düzenleyecek gibi görünüyor. Bu cevap, disklerle yaptığım hataları düzeltmeme yardımcı oldu (ve belki de diskleri geri almaya çalışırken daha fazla hata).
adaçayı

0

@Mikhail Morfikov'un cevabı initramfs aşamasında montajı kapsıyor gibi görünüyor . Alternatif (kök dosya sistemi değilse) şifresini çözmek ve aracılığıyla otomatik bölümü monte etmektir systemd Linuz çekirdeği yüklendikten sonra,. Tabii ki bu sadece systemd kullanıyorsanız mümkündür . Burada yöntemi açıklayacağım:

/etc/crypttabentry:

crypt2 UUID=e412-blahblah /path/to/crypt2.key luks,noauto

İşte noautobir talimat olduğunu değil esnasında diski şifresini denemek için initramfs aşamasında.

Yukarıda, e412-blahblahluks sistemini içeren bölümün UUID'si, benim durumumda bir bölüm /dev/sdb2:

# blkid | grep sdb2
/dev/sdb2: UUID="e41274d8-fd83-4632-b560-ad0ba113ae75" TYPE="crypto_LUKS" PARTUUID="5673a908-02"

Linuz çekirdeği başlatılırken, systemd/etc/crypttab dosyayı okuyacak ve bir çalışma zamanı hizmet dosyası oluşturacaktır /run/systemd/generator/systemd-cryptsetup@crypt2.service. Ancak, bu hizmet otomatik olarak çalışmaz. Manuel olarak çalıştırabilirsiniz

systemctl start systemd-cryptsetup@crypt2.service

ama şifresini ve daha sonra başlatma sırasında monte etmek /etc/fstabolabilir gerektiren aşağıdaki gibi:

/dev/mapper/crypt2--vg-data /media/crypt-data ext4 defaults,noauto,user,x-systemd.automount,x-systemd.requires=systemd-cryptsetup@crypt2.service 0 2

İşte x-systemd.automountiçin bir yönerge systemd monte etmek /media/crypt-datave x-systemd.requires=systemd-cryptsetup@crypt2.servicebir talimat systemd bu şifre çözme crypt2mümkündür önce gereklidir.

Gelen systemd aslında örneğin erişilir ilk kez, kadar dizin bağlanamadı olacak ls /media/crypt-data, o zaman sadece zamanında monte edecek ve ondan sonra görünür /proc/mounts.


İlişkili

"* Neden kök dosya sistemindeki anahtarla şifrelenmiş bir veri diskiniz var?" Kök dosya sisteminin de şifrelenmiş olması nedeniyle anahtar güvenlidir. Kök dosya sistemi, la Mikhail'in cevabı olan önyüklemenin initramfs aşamasında çözülür . Bunun için /etc/crypttabdosyada başka bir giriş var:

crypt1 UUID=8cda-blahbalh none luks,discard,lvm=crypt1--vg-root

ve burada ve bir önyükleme usb kurulumu

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.