Bagaimana saya bisa menginstal Ubuntu yang dienkripsi dengan LUKS dengan dual-boot?

73

Disk instalasi Ubuntu 13.04 memiliki opsi untuk menginstal Ubuntu yang dienkripsi menggunakan LUKS. Namun, tidak ada opsi untuk melakukan instalasi terenkripsi di samping partisi yang ada untuk skenario dual-boot.

Bagaimana saya bisa menginstal Ubuntu yang dienkripsi di samping partisi lain dari live disk?

Flimm
sumber
Melihat skrip cryptroot, yang ditolak edit sebenarnya benar. Setiap baris dalam conf.d / cryptroot diperlakukan sama dengan argumen cryptopts lainnya. Apakah mungkin untuk menggunakan penginstal tanpa partisi yang didekripsi menjadi grup volume? Saya sudah mencoba dan sepertinya tidak akan membiarkan saya menggunakannya tanpa partisi. Dalam kasus saya ini adalah SSD dengan 3 partisi: Linux / boot, Linux /, Windows, dengan swap dan / home berada di HDD jadi benar-benar tidak perlu untuk LVM. Saya kira saya harus tetap dengan ide asli saya, yaitu menggunakan debootstrap dari live CD.
Panduan bermanfaat: " Bagaimana Cara Mengatur Instalasi Ubuntu yang Dienkripsi? ", Oleh Gayan di HecticGeek.com - hecticgeek.com/2012/10/…
Gabriel Staples

Jawaban:

88

Pertama-tama, jika Anda ingin menginstal Ubuntu yang dienkripsi pada hard disk, mengganti partisi dan sistem operasi yang ada, Anda dapat melakukan ini langsung dari installer grafis. Proses manual ini hanya diperlukan untuk dual-boot.

Jawaban ini telah diuji dengan Ubuntu 13.04.

  1. Boot dari live DVD atau USB stick Ubuntu, dan pilih "Coba Ubuntu".

  2. Buat dua partisi menggunakan GParted termasuk dalam live disk. Partisi pertama harus diformat dan harus cukup besar untuk root dan swap, dalam contoh saya, ini /dev/sda3. Partisi kedua harus beberapa ratus megabyte besar dan diformat dalam ext2 atau ext3, itu akan dienkripsi dan dipasang ke /boot(dalam contoh saya ini /dev/sda4).

    Dalam tangkapan layar ini, saya memiliki instalasi Ubuntu yang tidak terenkripsi yang ada di dua partisi: /dev/sda1dan /dev/sda5, sorot dalam lingkaran di sebelah kiri. Saya telah membuat partisi yang belum diformat di dalam /dev/sda3dan partisi ext3 /dev/sda4, yang dimaksudkan untuk instalasi Ubuntu yang dienkripsi, yang disorotkan di lingkaran di sebelah kanan:

    Tangkapan layar GParted

  3. Buat wadah LUKS menggunakan perintah ini. Ganti /dev/sda3dengan partisi yang tidak diformat yang dibuat sebelumnya, dan cryptcherriesdengan nama pilihan Anda.

    sudo cryptsetup luksFormat /dev/sda3
    sudo cryptsetup luksOpen /dev/sda3 cryptcherries
    
  4. Peringatan : Anda akan melihat bahwa luksFormatlangkah selesai sangat cepat, karena itu tidak menghapus perangkat blok yang mendasarinya dengan aman. Kecuali Anda hanya bereksperimen dan tidak peduli tentang keamanan terhadap berbagai jenis serangan forensik, sangat penting untuk menginisialisasi wadah LUKS baru dengan benar sebelum membuat sistem file di dalamnya. Menulis nol ke wadah yang dipetakan akan menyebabkan data acak yang kuat ditulis ke perangkat blok yang mendasarinya. Ini bisa memakan waktu cukup lama, jadi sebaiknya gunakan pvperintah untuk memantau perkembangan:

    ### Only for older releases, e.g. not for 19.04, `pv` is not included in the repo must be added first
    # sudo add-apt-repository "deb http://archive.ubuntu.com/ubuntu $(lsb_release -sc) universe"
    # sudo apt-get update
    
    sudo apt-get install -y pv
    sudo sh -c 'exec pv -tprebB 16m /dev/zero >"$1"' _ /dev/mapper/cryptcherries
    

    atau, jika Anda melakukan pemasangan offline dan tidak dapat dengan mudah mendapatkan pv:

    sudo dd if=/dev/zero of=/dev/mapper/cryptcherries bs=16M
    
  5. Di dalam wadah LUKS yang dipasang, buat volume fisik LVM, grup volume, dan dua volume logis. Volume logis pertama akan dipasang pada /, dan yang kedua akan digunakan sebagai swap. vgcherriesadalah nama grup volume, dan lvcherriesrootdan lvcherriesswapadalah nama-nama volume logis, Anda dapat memilih sendiri.

    sudo pvcreate /dev/mapper/cryptcherries
    sudo vgcreate vgcherries /dev/mapper/cryptcherries
    sudo lvcreate -n lvcherriesroot -L 7.5g vgcherries
    sudo lvcreate -n lvcherriesswap -L 1g vgcherries
    
  6. Buat filesystem untuk dua volume logis: (Anda juga dapat melakukan langkah ini langsung dari installer.)

    sudo mkfs.ext4 /dev/mapper/vgcherries-lvcherriesroot
    sudo mkswap /dev/mapper/vgcherries-lvcherriesswap
    
  7. Tanpa me-reboot , instal Ubuntu menggunakan installer grafis (pintasan ada di desktop di Xubuntu 18.04), pilih partisi manual. Tetapkan /ke /dev/mapper/vgcherries-lvcherriesrootdan /bootke partisi tidak terenkripsi yang dibuat pada langkah 2 (dalam contoh ini, /dev/sda4).

  8. Setelah penginstal grafis selesai, pilih "lanjutkan pengujian" dan buka terminal.

  9. Temukan UUID partisi LUKS ( /dev/sda3dalam hal ini), Anda akan membutuhkannya nanti:

    $ sudo blkid /dev/sda3
    /dev/sda3: UUID="8b80b3a7-6a33-4db3-87ce-7f126545c74af" TYPE="crypto_LUKS"
    
  10. Pasang perangkat yang sesuai ke lokasi yang sesuai /mnt, dan chroot ke dalamnya:

    sudo mount /dev/mapper/vgcherries-lvcherriesroot /mnt
    sudo mount /dev/sda4 /mnt/boot
    sudo mount --bind /dev /mnt/dev
    sudo chroot /mnt
    > mount -t proc proc /proc
    > mount -t sysfs sys /sys
    > mount -t devpts devpts /dev/pts
    
  11. Buat file bernama /etc/crypttabdi lingkungan chroot untuk mengandung baris ini, mengganti nilai UUID dengan UUID partisi LUKS, dan vgcherriesdengan nama grup volume:

    # <target name> <source device> <key file> <options>
    cryptcherries UUID=8b80b3a7-6a33-4db3-87ce-7f126545c74af none luks,retry=1,lvm=vgcherries
    
  12. Jalankan perintah berikut di lingkungan chroot:

    update-initramfs -k all -c
    
  13. Reboot dan boot ke Ubuntu terenkripsi. Anda harus dimintai kata sandi.

  14. Periksa apakah Anda menggunakan partisi terenkripsi /dengan menjalankan mount:

    $ mount
    /dev/mapper/vgcherries-lvcherriesroot on / type ext4 (rw,errors=remount-ro)
    /dev/sda4 on /boot type ext3 (rw)
    # rest of output cut for brevity
    
  15. Periksa apakah Anda menggunakan partisi swap terenkripsi (bukan partisi swap tidak terenkripsi dari instalasi lain) dengan menjalankan perintah ini:

    $ swapon -s
    Filename                              Type      Size   Used Priority
    /dev/mapper/vgcherries-lvcherriesswap partition 630780 0    -1
    
  16. Periksa apakah Anda dapat boot ke mode pemulihan, Anda tidak ingin mencari tahu nanti saat keadaan darurat bahwa mode pemulihan tidak berfungsi :)

  17. Instal setiap pembaruan, yang kemungkinan akan membangun kembali ramdisk dan memperbarui konfigurasi grub. Mulai ulang dan uji mode normal dan mode pemulihan.

Flimm
sumber
3
Saya dapat memverifikasi bahwa pada 15.04 Anda dapat menghilangkan langkah 11, 13 dan 14, dan bahwa sebenarnya mungkin perlu untuk menghilangkan langkah-langkah ini (karena menjalankan pembaruan-grub dengan cara ini menyebabkan partisi Windows saya hilang.)
process91
4
@ process91 Sepertinya langkah-langkah ini mengubah angka. Sekarang Anda harus pergi ke 12, 14, dan 15.
Aleksandr Dubinsky
5
Panduan hebat. Bekerja pertama kali untuk Windows 10 dengan BitLocker dan Ubuntu 16.04 menghilangkan langkah 12, 14 dan 15 di sini. Ada beberapa batu sandungan lain yang saya perhatikan yang bisa dilakukan dengan klarifikasi, terutama apa yang Anda pilih untuk partisi bootloader (itu terinstal ke partisi EFI yang ada, tetapi Anda mungkin bisa hanya memilih disk tempat Anda menginstal Ubuntu, misalnya / dev / sda). Siapa pun yang memiliki izin editor lengkap dapat menyalin-menempel dari tulisan saya: stevenmaude.co.uk/posts/…
Steven Maude
5
@unhammer baru saja mengedit jawaban dan menghapus beberapa langkah, bagi mereka yang membaca komentar dan menjadi bingung.
Flimm
3
Penulis telah mengambil langkah-langkah lama 12,14,15. Jadi, JANGAN lewati langkah apa pun. Bekerja dengan Ubuntu Mate 16.04.1.
user4955663
9

Dimungkinkan untuk membuat pengaturan dual-boot terenkripsi hanya menggunakan alat GUI dari Ubuntu LiveCD.

Prasyarat

  • Stik USB dengan Penginstal Ubuntu 19,04.
  • Jika Anda memiliki Mainboard EFI, pastikan disk menggunakan tabel Partisi GUID (GPT). Menggunakan disk MBR dengan metode ini tampaknya gagal. Anda dapat mengonversi MBR ke GPT dengan alat Linux ( gdisk), tetapi Anda harus melakukan pencadangan terlebih dahulu. Jika Anda mengonversi tabel Partisi, Anda harus memperbaiki pemuat boot windows setelahnya.

Windows

  • Pada jenis start bar disk partitiondan pilih opsi pertama (membuka manajer partisi disk dari pengaturan).

  • Kecilkan partisi utama Anda ke ukuran Ubuntu yang Anda inginkan (Saya baru saja menggunakan default, membagi drive 500GB saya menjadi 240GB Windows OS dan 240GB ruang yang tidak dialokasikan).

BIOS

  • Nonaktifkan boot aman (jika Anda memiliki bitlocker, Anda perlu mengubahnya untuk boot dengan aman ke windows setiap kali) - ini baik bagi saya karena Ubu adalah OS utama saya, cukup gunakan windoze untuk bermain game.

Ubuntu LiveCD

Akhirnya - Boot ke USB Pemasang 19.04

  • Tekan Enterpada opsi Instal Ubuntu default .

  • Saat Anda masuk ke layar yang mengatakan Hapus seluruh disk dan memiliki beberapa kotak centang, klik opsi Sesuatu lain (partisi manual). Kalau tidak, Anda akan kehilangan Data Windows Anda!

Setelah manajer partisi disk memuat disk Anda, Anda akan memiliki ruang yang tidak terisi besar. Klik itu dan tekan tombol Tambah untuk membuat partisi.

  • Pertama, buat /bootpartisi 500MB (primer, ext4).
  • Kedua, dengan sisa ruang membuat volume terenkripsi. Ini akan membuat satu partisi LV. Ubah itu menjadi /partisi root yang dipilih .
  • Maka sisa proses instalasi akan berjalan seperti biasa.

Ketika Anda boot untuk pertama kali, masuk, buka terminal, jalankan sudo apt-get updatedan sudo apt dist-upgrade, reboot dan masuk lagi.

File swap 2GB akan dibuat secara otomatis. Jika Anda menginginkan yang 8GB, baca jawaban ini .

Falieson
sumber
4
Pada Mei 2019 ini adalah jawaban yang lebih disukai (tampaknya bekerja sejak 2012, sebenarnya), tidak ada komplikasi baris perintah yang diperlukan. Di partisi, setelah membuat volume fisik untuk enkripsi saya tidak melihat yang baru /dev/mapper/sdaX_crypt di bagian atas daftar . Panduan ini memiliki tangkapan layar dan memvisualisasikan pemformatan partisi, dapat membantu: hecticgeek.com/2012/10/…
firepol
Jawaban bagus, @ Falieson! Tapi, saya tidak memahaminya selama 14 hari pertama dan 17 jam penelitian saya melihatnya, jadi saya pikir saya akan menulis jawaban saya sendiri dengan screenshot. Artikel yang diposting oleh @firepol ( hecticgeek.com/2012/10/... ) itu sangat membantu, dan hanya SETELAH mengikuti artikel itu jawaban Anda masuk akal bagi saya.
Gabriel Staples
Juga, saya ingin menambahkan lain kali Anda harus berhenti menggunakan Windows Bitlocker & beralih ke VeraCrypt. Ini Gratis dan Sumber Terbuka, tanpa biaya, & sepertinya berfungsi baik dengan dual boot. Partisi Windows saya menggunakannya, serta hard drive eksternal saya & beberapa volume berbasis file lokal sekarang. Berikut video intro yang bagus untuk VeraCrypt: youtube.com/watch?v=C25VWAGl7Tw , & laman unduhan mereka: veracrypt.fr/en/Downloads.html . Untuk enkripsi LUKS berbasis Linux pada drive eksternal ext4, saya menggunakan utilitas Ubuntu Disks , yang memiliki kotak centang enkripsi LUKS saat memformat.
Gabriel Staples
5

Pertama, tunjukkan mengapa hanya mengenkripsi partisi Linux yang mungkin tidak cukup aman untuk Anda:

  1. https://superuser.com/questions/1013944/encrypted-boot-in-a-luks-lvm-ubuntu-installation
  2. https://security.stackexchange.com/questions/166075/encrypting-the-boot-partition-in-a-linux-system-can-protect-from-an-evil-maid-a
  3. https://www.reddit.com/r/linux/comments/6e5qlz/benefits_of_encrypting_the_boot_partition/
  4. https://unix.stackexchange.com/questions/422860/why-should-we-encrypt-the-system-partition-and-not-only-home
  5. https://www.coolgeeks101.com/howto/infrastructure/full-disk-encryption-ubuntu-usb-detached-luks-header/
  6. https://superuser.com/questions/1324389/how-to-avoid-encrypted-boot-partition-password-prompt-in-lvm-arch-linux

Sekarang, saya mengikuti tutorial ini:

  1. https://www.oxygenimpaired.com/multiple-linux-distro-installs-on-a-luks-encrypted-harddrive
  2. http://web.archive.org/web/20160402040105/http://www.oxygenimpaired.com/multiple-linux-distro-installs-on-a-luks-encrypted-harddrive

Pada jawaban ini, saya menghadirkan instalasi Linux langkah demi langkah (dengan gambar) Mint 19.1 XFCEdan Ubuntu 18.04.2, keduanya sepenuhnya dienkripsi dalam satu disk. Pertama saya diinstal Ubuntu 14.04.2pada /dev/sda5dan saya tidak membuat partisi swap yang karena Linux Mint 19.1dan Ubuntu 18.04.2tidak menggunakannya, yaitu, mereka menggunakan file swap.

Ubuntu 18.04.2 Bionic Beaver

Pertama, masukkan Ubuntumedia instalasi dan reboot mesin ke dalam Ubuntusesi langsung, lalu pilih Try Ubuntudan buka satu terminal

  1. sudo su -
  2. fdisk /dev/sda, lalu, buat partisi berikut
    • masukkan deskripsi gambar di sini
  3. cryptsetup luksFormat /dev/sda5
  4. cryptsetup luksOpen /dev/sda5 sda5_crypt
  5. pvcreate /dev/mapper/sda5_crypt
  6. vgcreate vgubuntu /dev/mapper/sda5_crypt
  7. lvcreate -L10G -n ubuntu_root vgubuntu
    • lvcreate -l 100%FREE -n ubuntu_root vgubuntu(opsional, alih-alih berjalan lvcreate -L10G -n ubuntu_root vgubuntu, Anda dapat menjalankan ini lvcreate -l 100%FREE -n ubuntu_root vgubuntuuntuk menggunakan seluruh ruang kosong disk Anda, bukan hanya 10GB)
    • masukkan deskripsi gambar di sini
  8. Jangan tutup terminal, dan buka penginstal distro, pilih Sesuatu yang lain dan instal dengan
    • /dev/sda1dipasang sebagai /bootpartisi dengan ext2format
    • /dev/mapper/vgubuntu-ubuntu_rootdipasang sebagai /dengan ext4format.
    • /dev/sda sebagai instalasi boot loader
    • Jangan tandai apa pun
    • masukkan deskripsi gambar di sini
    • masukkan deskripsi gambar di sini
  9. Jangan reboot, klik Lanjutkan Menggunakan Linux, dan pilih terminal terbuka
  10. mkdir /mnt/newroot
  11. mount /dev/mapper/vgubuntu-ubuntu_root /mnt/newroot
  12. mount -o bind /proc /mnt/newroot/proc
  13. mount -o bind /dev /mnt/newroot/dev
  14. mount -o bind /dev/pts /mnt/newroot/dev/pts
  15. mount -o bind /sys /mnt/newroot/sys
  16. cd /mnt/newroot
  17. chroot /mnt/newroot
  18. mount /dev/sda1 /boot
  19. blkid /dev/sda5 (salin UUID tanpa tanda kutip dan gunakan pada langkah berikutnya)
  20. echo sda5_crypt UUID=5f22073b-b4ab-4a95-85bb-130c9d3b24e4 none luks > /etc/crypttab
    • masukkan deskripsi gambar di sini
    • masukkan deskripsi gambar di sini
    • masukkan deskripsi gambar di sini
  21. Buat file /etc/grub.d/40_custom
    • masukkan deskripsi gambar di sini
  22. Edit /etc/default/grubdan atur
    • GRUB_TIMEOUT_STYLE=menu
    • GRUB_TIMEOUT=10
    • masukkan deskripsi gambar di sini
  23. update-initramfs -u
  24. update-grub
    • masukkan deskripsi gambar di sini
    • masukkan deskripsi gambar di sini
  25. exit
  26. reboot
  27. Setelah mem-boot ulang komputer Anda, pilih opsi Ubuntudan ia akan dengan benar meminta kata sandi enkripsi Anda
    • masukkan deskripsi gambar di sini
  28. Setelah Anda masuk, jalankan
    • sudo apt-get update
    • sudo apt-get install gparted
  29. Dan dengan membuka gpartedAnda akan menemukan ini
    • masukkan deskripsi gambar di sini

Untuk instruksi lebih rinci, baca tutorial asli yang ditunjukkan di bagian atas pertanyaan ini atau cari di google tentang penggunaan perintah ini.


Linux Mint 19.1 Cinnamon

Untuk instalasi Linux yang tersisa, mesin rebootAnda Ubuntu, boot dengan Mint 19.1installer (Live CD), dan buka jendela terminal

  1. sudo su -
  2. cryptsetup luksFormat /dev/sda6
  3. cryptsetup luksOpen /dev/sda6 sda6_crypt
  4. pvcreate /dev/mapper/sda6_crypt
  5. vgcreate vgmint /dev/mapper/sda6_crypt
  6. lvcreate -L10G -n mint_root vgmint
    • lvcreate -l 100%FREE -n mint_root vgmint(opsional, alih-alih berjalan lvcreate -L10G -n mint_root vgmint, Anda dapat menjalankan ini lvcreate -l 100%FREE -n mint_root vgmintuntuk menggunakan seluruh ruang kosong pada disk Anda, bukan hanya 10GB)
    • masukkan deskripsi gambar di sini
    • masukkan deskripsi gambar di sini
  7. Jangan tutup terminal, dan buka penginstal distro, pilih Sesuatu yang lain dan instal dengan
    • /dev/sda2dipasang sebagai /bootpartisi dengan ext2format
    • /dev/mapper/vgmint-mint_rootdipasang sebagai /dengan ext4format.
    • /dev/sda2sebagai instalasi pemuat boot (jangan pilih /dev/sdaseperti sebelumnya)
    • Jangan tandai apa pun
    • masukkan deskripsi gambar di sini
    • masukkan deskripsi gambar di sini
  8. Jangan reboot, klik Lanjutkan Menggunakan Linux, dan pilih terminal terbuka
  9. mkdir /mnt/newroot
  10. mount /dev/mapper/vgmint-mint_root /mnt/newroot
  11. mount -o bind /proc /mnt/newroot/proc
  12. mount -o bind /dev /mnt/newroot/dev
  13. mount -o bind /dev/pts /mnt/newroot/dev/pts
  14. mount -o bind /sys /mnt/newroot/sys
  15. cd /mnt/newroot
  16. chroot /mnt/newroot
  17. mount /dev/sda2 /boot
  18. blkid /dev/sda6 (salin UUID tanpa tanda kutip dan gunakan pada langkah berikutnya)
  19. echo sda6_crypt UUID=5f22073b-b4ab-4a95-85bb-130c9d3b24e4 none luks > /etc/crypttab
    • masukkan deskripsi gambar di sini
    • masukkan deskripsi gambar di sini
    • masukkan deskripsi gambar di sini
  20. update-initramfs -u
  21. update-grub
    • masukkan deskripsi gambar di sini
    • masukkan deskripsi gambar di sini
  22. exit
  23. reboot
  24. Setelah mem-boot ulang komputer Anda, pilih opsi Linux Mint on /dev/sda2
    • masukkan deskripsi gambar di sini
  25. Kemudian, itu akan mulai dengan benar Mint 19.1dan meminta kata sandi enkripsi
    • masukkan deskripsi gambar di sini
  26. Setelah Anda masuk, jalankan
    • sudo apt-get update
    • sudo apt-get install gparted
  27. Dan dengan membuka gpartedAnda akan menemukan ini
    • masukkan deskripsi gambar di sini

Tautan yang berhubungan:

  1. Bagaimana saya bisa mengubah ukuran partisi LVM yang aktif?
  2. Bagaimana saya bisa mengubah ukuran partisi LVM? (yaitu: volume fisik)
  3. https://www.tecmint.com/extend-and-reduce-lvms-in-linux/
  4. Grub chainloader tidak berfungsi dengan Windows 8
  5. Booting UEFI Dengan Dienkripsi / Booting Di Ubuntu 14.04 LTS
pengguna
sumber
1
Saya memiliki 1 hard disk di komputer saya dan memiliki satu Kubuntu 18.04 yang tidak terenkripsi. Saya telah menginstal Kubuntu terenkripsi kedua 18,04 dekat Kubuntu tidak terenkripsi pertama berdasarkan ini. Sekarang keduanya bekerja dengan baik pada satu hard disk. Terima kasih atas jawaban terinci.
Ikrom
1
Bagian tentang Linux Mint harus dihapus dari jawaban ini. Bagian ini di luar topik, belum ditanyakan oleh OP, itu membuat jawaban tidak perlu lama dan mengarah ke pertanyaan lanjutan di luar topik seperti ini .
mook765
-1 untuk bagian terkait Mint.
user68186