Şifreli özel yükleme


21

Bilgisayarım Ubuntu'yu çalıştırıyor. Ubuntu'yu başka bir ortama kurmak istiyorum. Şifrelemeyi etkinleştirmek istiyorum, ancak ubuntu yükleyicisinin varsayılan seçenekleri (sil / yanında / vb ...) yalnızca varsayılan sürücüyü ilgilendirdiğinden, "başka bir şey" seçip diğer sürücüdeki bölümleri el ile oluşturmam gerekiyor, ~ Önyükleme için 128mb'lik bir parça, o zaman kayboldum, alanın geri kalanıyla şifrelenmiş bir bölüm yaparsam, onu bölemiyorum, bu yüzden takasım yok; bunun yerine iki şifreli bölüm oluşturursam doğru görünmüyor çünkü iki farklı şifre oluşturmak istiyor ...

Takas ayarını nasıl yapabilirim? (Kurulum sırasında veya sonrasında).


Yanıtlar:


29

Bunu gerçekleştirmek için nasıl birlikte LVM ve tek şifreli bölüm

Uyarı

Her şeyden önce 128M önyükleme için çok küçük! 1G kullanıyorum. Aksi takdirde, gerçekleşmesi gereken şey, eski çekirdekleri kaldırmayı unutabileceğiniz ve / önyüklemenin dolduracağı ve sistemden eski çekirdekleri çıkarmaya çalışmanın aptya apt-getda çalışabilmenin acılarıyla uğraşmanız gerektiğidir. tekrar. 1G ile bile, eski çekirdekleri zaman zaman çıkardığınızdan emin olun.

Sonraki adımlar acemi kullanıcılar için tasarlanmamıştır.
GÜNCELLEME: Sizin ve daha fazlası için aşağıdaki işlemleri gerçekleştirecek bir senaryo oluşturdum ! Tek yapmanız gereken yüklemeden önce Live OS'den çalıştırmak. Blogumda bir yazı bulabilirsiniz .


Canlı işletim sisteminden ön kurulum

Manuel bölümleme yaparken LUKS ve LVM'yi ayarlamak istiyorsunuz! Bunu Ubuntu 16.04.2'de test ettim

Ubuntu'yu bir Canlı İşletim Sisteminden başlatın ve yüklemeden Ubuntu'yu deneme seçeneğini seçin. Aşağıda özetlediğim adımları izleyin. / Dev / sdb dizinine yüklediğinizi varsayalım.

  1. Sürücüyü seçtiğiniz araçla bölümlere ayırın: Bir msdos bölümleme tablosuna mayın kurmak için fdisk'i aşağıdaki gibi kullandım:
    • diğer bölümler: mevcut işletim sistemleri - bunlarla ilgilenmiyoruz
    • sdb1: / boot (1G)
    • sdb2: LUKS bölümü (diskin geri kalanı)
  2. LUKS kurulumu
    • sudo cryptsetup luksFormat --hash=sha512 --key-size=512 --cipher=aes-xts-plain64 --verify-passphrase /dev/sdb2
    • sudo cryptsetup luksOpen /dev/sdb2 CryptDisk
    • Gerekli olmasa da, LUKS bölümünüzü sıfırlarla doldurmak iyi bir fikirdir, böylece şifrelenmiş bir durumda bölüm rastgele verilerle doldurulur. sudo dd if=/dev/zero of=/dev/mapper/CryptDisk bs=4M DİKKAT, bu çok uzun zaman alabilir!
  3. / Dev / mapper / CryptDisk üzerine LVM kurulumu
    • sudo pvcreate /dev/mapper/CryptDisk
    • sudo vgcreate vg0 /dev/mapper/CryptDisk
    • sudo lvcreate -n swap -L 2G vg0
    • sudo lvcreate -n root -L 10G vg0
    • sudo lvcreate -n home -l +100%FREE vg0

Canlı işletim sisteminden kurulum

  1. Artık yüklemeye hazırsınız. Yüklemenin "Yükleme türü" bölümüne geldiğinizde, "Başka bir şey" seçeneğini belirtin. Ardından / dev / mapper / vg0- * bölümlerini yapılandırmak istediğiniz şekilde manuel olarak atayın. / Dev / sdb1 öğesini / boot olarak ayarlamayı unutmayın. / boot bölümü şifrelenmemelidir. Eğer öyleyse, önyükleme yapamayız. "Önyükleme yükleyicisi yükleme aygıtı" / dev / sdb olarak değiştirilir ve kuruluma devam edilir.
  2. Kurulum tamamlandığında, yeniden başlatmayın ! "Teste Devam Et" seçeneğini seçin.

Canlı işletim sisteminden kurulum sonrası yapılandırma

Sisteminizin önyükleme yapmasını istiyorsanız bu bit gerçekten önemlidir! Bu kurulum sonrası adımları bulmak için bunu araştırmak için biraz zaman harcadım. Benim durumumda bunu yapıyordum çünkü / dev / sda'daki / boot boyutunu özelleştirmek istedim, ancak tüm bu işler sizin durumunuza da taşınmalıdır.

  1. Terminalde aşağıdakini yazın ve / dev / sdb2'nin UUID'sini arayın. Daha sonra kullanmak üzere bu UUID'yi not edin.
    • sudo blkid | grep LUKS
    • Makinemdeki önemli satır okuyor /dev/sdb2: UUID="bd3b598d-88fc-476e-92bb-e4363c98f81d" TYPE="crypto_LUKS" PARTUUID="50d86889-02"
  2. Daha sonra, yeni kurulan sistemi tekrar monte edelim, böylece biraz daha değişiklik yapabiliriz.

    • sudo mount /dev/vg0/root /mnt
    • sudo mount /dev/vg0/home /mnt/home # bu muhtemelen gerekli değildir
    • sudo mount /dev/sdb1 /mnt/boot
    • sudo mount --bind /dev /mnt/dev # Bunun gerekli olduğundan tam olarak emin değilim
    • sudo mount --bind /run/lvm /mnt/run/lvm
    • (Yalnızca EFI kullanıyorsanız): sudo mount /dev/sd*/your/efi/partition /mnt/boot/efi
  3. Şimdi sudo chroot /mntyüklü sisteme erişmek için çalıştırın

  4. Chroot'tan birkaç şey daha monte edin
    • mount -t proc proc /proc
    • mount -t sysfs sys /sys
    • mount -t devpts devpts /dev/pts
  5. Crypttab'ı kurun. En sevdiğiniz metin düzenleyicisini kullanarak, / etc / crypttab dosyasını oluşturun ve UUID'yi diskinizin UUID'si ile değiştirerek aşağıdaki satırı ekleyin.
    • CryptDisk UUID=bd3b598d-88fc-476e-92bb-e4363c98f81d none luks,discard
  6. Son olarak, bazı önyükleme dosyalarını yeniden oluşturun.
    • update-initramfs -k all -c
    • update-grub
  7. Yeniden başlatın ve sistem önyükleme sırasında şifresini çözmek için bir şifre istemelidir!

Özel teşekkürler gitmek Martin Eve , EGIDIO uysal ve en millet blog.botux.fr öğreticiler için yayınlandıkları. Direklerinden parçalar çekerek ve biraz fazladan sorun çıkartarak sonunda bunu anladım.

Bunu birkaç kez denedim ve tekrar tekrar başarısız oldum. Hata mesajlarına dayanarak kendim için çalışmam gereken bitsudo mount --bind /run/lvm /mnt/run/lvm


Çok teşekkürler, ama ben başlangıçta luks bölümünü kurmam gereken yerde takılıp kaldım. Fdisk -L çıktısında bulunamıyor.
Yvain

Ve crypt kurmaya çalıştığımda hata alıyorum: başlıkları kaldıramadı
Yvain

Bunu bir çözüm olarak işaretlediğinizi görüyorum. Çalıştın mı? Değilse, bölümlerinizi oluşturmak için hangi aracı kullandınız? Diski önce Gparted veya fdisk gibi bir araçla bölümlendirmeniz / / boot ve şifreleme için bir bölüm oluşturmanız gerekir (EFI üçüncü şifrelenmemiş bir bölüm gerektirir). Kurulumumda EFI kullanmıyordum. Ancak şifreleme bölümünü oluşturduktan sonra şifrelemek için cryptsetup luksFormatkomutu çalıştırabilirsiniz . / Dev / sdb2 oluşturduktan sonra, onu bir dosya sistemiyle biçimlendirebilir veya biçimlendiremezsiniz. cryptsetupvarolan herhangi bir dosya sistemini siler.
b_laoshi

1
@Yvain - Bunun yanlış olduğuna inanıyorum. Sha1 artık güvenli kabul edilmiyor. Daha güvenli bir şey (önerilen sha512 seçeneği gibi) kesinlikle kullanılmalıdır.
mike

1
+1 @b_laoshi Cevabınız için çok teşekkür ederim, bana çok yardımcı oluyor :)
Tummala Dhanvi

3

Bu çoklu şifreli bölümler nasıl yapılır ve LVM yok

Önceki cevabım çok uzun olduğu için LVM kullanmak istemiyorsanız farklı bir yaklaşım gerektiren ikinci bir cevap gönderiyorum.

Birden fazla şifreli bölüm oluşturabilir ve şifreyi yalnızca bir kez girmeniz için decrypt_derived komut dosyasını kullanabilirsiniz . Adım adım talimatlar için bu blog yayınına göz atın . Yazar bir anahtar dosyası kullanır, ancak decrypt_derived LUKS komut dosyası da yeterli olacaktır.


Ana sürücünün fişini
çekmeyi bitirdim


0

Bu, Ubuntu'nun varsayılan bölümlemesini biraz değiştirmek isteyen bu soruya çarpmaya devam edenler için cevaptır. Örneğin, swapbölümü kaldırın ve /bootboyutunu artırın . Sanırım birçok kişi, gerekli adımların miktarı nedeniyle b_laoshi'nin talimatlarını takip etmekten vazgeçirilecekti.

Bu yüzden şifreleme ile basit özel bölümleme için "Güvenlik için yeni Ubuntu kurulumunu şifrele" seçeneğiyle "Diski sil ve Ubuntu'yu kur" seçeneğini kullanmanızı öneririm. Ne değiştireceğiz bu varsayılan bölümleme için yapılandırma.

Bu yapılandırmalar içinde bulunur /lib/partman/recipes[-arch]/. Kendim için değişiyorum /lib/partman/recipes-amd64-efi/30atomic. 538M için efi, 1024M için /bootve geri kalanı için /ext4 ile almak için dosyayı

538 538 538 fat32
    $iflabel{ gpt }
    $reusemethod{ }
    method{ efi }
    format{ } .

1024 1024 1024 ext4
    $defaultignore{ }
    $lvmignore{ }
    method{ format }
    format{ }
    use_filesystem{ }
    filesystem{ ext4 }
    mountpoint{ /boot } .    

900 10000 -1 ext4
    $lvmok{ }
    method{ format }
    format{ }
    use_filesystem{ }
    filesystem{ ext4 }
    mountpoint{ / } .

Yükleyicide silinecek diski seçtikten sonra, bölümlemenin özetini soracağını, böylece hile çalışıp çalışmadığını ve istediğiniz bölümlemeyi alıp almadığınızı kontrol edebileceğinizi unutmayın. Ayrıca bkz . Https://askubuntu.com/a/678074/47073 .

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.