듀얼 부팅으로 LUKS로 암호화 된 Ubuntu를 어떻게 설치합니까?


73

Ubuntu 13.04 설치 디스크에는 LUKS를 사용하여 암호화 된 Ubuntu를 설치하는 옵션이 있습니다. 그러나 이중 부팅 시나리오의 경우 기존 파티션과 함께 암호화 된 설치를 수행 할 수있는 옵션이 없습니다.

라이브 디스크의 다른 파티션과 함께 암호화 된 Ubuntu를 어떻게 설치합니까?


cryptroot 스크립트를 보면 거부 된 편집이 실제로 정확합니다. conf.d / cryptroot의 각 줄은 다른 cryptopts 인수와 동일하게 취급됩니다. 암호 해독 된 파티션이 볼륨 그룹이 아닌 설치 프로그램을 사용할 수 있습니까? 나는 노력했지만 파티션없이 그것을 사용할 수없는 것처럼 보입니다. 필자의 경우 3 개의 파티션이있는 SSD입니다 : Linux / boot, Linux /, Windows. 스왑 및 / home이 HDD에 있으므로 LVM이 필요하지 않습니다. 라이브 CD의 debootstrap을 사용하는 원래 아이디어를 유지해야한다고 생각합니다.

유용한 가이드 : " 어떻게 설정에 암호화 된 우분투 설치? ", Gayan에 의해 HecticGeek.com에서 - hecticgeek.com/2012/10/...
가브리엘 스테이 플스

답변:


88

우선, 기존 파티션과 운영 체제를 교체하여 하드 디스크에 암호화 된 Ubuntu를 설치하려면 그래픽 설치 프로그램에서 직접 수행 할 수 있습니다. 이 수동 프로세스는 이중 부팅에만 필요합니다.

이 답변은 Ubuntu 13.04에서 테스트되었습니다.

  1. Ubuntu 라이브 DVD 또는 USB 스틱에서 부팅하고 "Try Ubuntu"를 선택하십시오.

  2. 라이브 디스크에 포함 된 GParted를 사용하여 두 개의 파티션을 만듭니다. 첫 번째 파티션은 포맷되지 않았으며 루트와 스왑을하기에 충분히 커야합니다 /dev/sda3. 두 번째 파티션은 수백 메가 바이트 크기 여야하며 ext2 또는 ext3으로 포맷되어야하며, 암호화되지 않고 마운트됩니다 /boot(이 예제에서는 /dev/sda4).

    이 스크린 샷에서 두 개의 파티션에 기존의 암호화되지 않은 Ubuntu 설치가 있습니다. /dev/sda1/dev/sda5왼쪽 원을 강조 표시하십시오. 암호화 되지 않은 우분투 설치를 위해 포맷되지 않은 파티션을 /dev/sda3만들고 ext3 파티션을 만들었습니다 /dev/sda4. 오른쪽 원에 강조 표시되어 있습니다.

    GParted 스크린 샷

  3. 이 명령을 사용하여 LUKS 컨테이너를 작성하십시오. /dev/sda3앞에서 생성 한 포맷되지 않은 파티션 cryptcherries과 원하는 이름으로 바꿉니다 .

    sudo cryptsetup luksFormat /dev/sda3
    sudo cryptsetup luksOpen /dev/sda3 cryptcherries
    
  4. 경고 : luksFormat기본 블록 장치가 안전하게 지워지지 않기 때문에 단계가 매우 빠르게 완료 되었음을 알 수 있습니다. 실험을하고 다양한 유형의 법 의학적 공격에 대한 보안을 신경 쓰지 않는 한 파일 시스템을 작성하기 전에 새 LUKS 컨테이너를 올바르게 초기화하는 것이 중요합니다. 매핑 된 컨테이너에 0을 쓰면 강력한 랜덤 데이터가 기본 블록 장치에 기록됩니다. 시간이 오래 걸릴 수 있으므로 pv명령을 사용 하여 진행 상황을 모니터링하는 것이 가장 좋습니다 .

    ### 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
    

    또는 오프라인 설치를 수행 중이고 쉽게 얻을 수없는 경우 pv:

    sudo dd if=/dev/zero of=/dev/mapper/cryptcherries bs=16M
    
  5. 마운트 된 LUKS 컨테이너 내에 LVM 물리 볼륨, 볼륨 그룹 및 두 개의 논리 볼륨을 작성하십시오. 첫 번째 논리 볼륨은에 마운트되고 두 번째 논리 볼륨은 /스왑으로 사용됩니다. vgcherries볼륨 그룹의 이름이고, lvcherriesroot그리고 lvcherriesswap논리 볼륨의 이름을, 당신은 당신의 자신을 선택할 수 있습니다.

    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. 두 개의 논리 볼륨에 대한 파일 시스템을 작성하십시오 (설치 프로그램에서 직접이 단계를 수행 할 수도 있습니다).

    sudo mkfs.ext4 /dev/mapper/vgcherries-lvcherriesroot
    sudo mkswap /dev/mapper/vgcherries-lvcherriesswap
    
  7. 다시 부팅하지 않고 그래픽 설치 프로그램 (바로 가기는 Xubuntu 18.04의 데스크탑에 있음)을 사용하여 수동 파티션을 선택하여 Ubuntu를 설치하십시오. 할당 //dev/mapper/vgcherries-lvcherriesroot하고 /boot(이 예에서는 2 단계에서 생성 된 암호화 파티션 /dev/sda4).

  8. 그래픽 설치 프로그램이 완료되면 "테스트 계속"을 선택하고 터미널을 엽니 다.

  9. LUKS 파티션 ( /dev/sda3이 경우) 의 UUID를 찾으면 나중에 필요합니다.

    $ sudo blkid /dev/sda3
    /dev/sda3: UUID="8b80b3a7-6a33-4db3-87ce-7f126545c74af" TYPE="crypto_LUKS"
    
  10. 적절한 장치를의 적절한 위치에 마운트 /mnt하고 chroot에 넣으십시오.

    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. /etc/crypttabchUI를 사용하여 chUI 환경에서 파일을 작성 하여 UUID 값을 LUKS 파티션의 UUID로 바꾸고 vgcherries볼륨 그룹의 이름으로 바꾸십시오.

    # <target name> <source device> <key file> <options>
    cryptcherries UUID=8b80b3a7-6a33-4db3-87ce-7f126545c74af none luks,retry=1,lvm=vgcherries
    
  12. chroot 환경에서 다음 명령을 실행하십시오.

    update-initramfs -k all -c
    
  13. 암호화 된 Ubuntu를 재부팅하고 부팅하십시오. 비밀번호를 묻는 메시지가 나타납니다.

  14. 다음 /을 실행 하여 암호화 된 파티션을 사용하고 있는지 확인하십시오 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. 다음 명령을 실행하여 암호화 된 스왑 파티션 (다른 설치의 암호화되지 않은 스왑 파티션이 아님)을 사용하고 있는지 확인하십시오.

    $ swapon -s
    Filename                              Type      Size   Used Priority
    /dev/mapper/vgcherries-lvcherriesswap partition 630780 0    -1
    
  16. 복구 모드로 부팅 할 수 있는지 확인하십시오. 응급 상황에서 나중에 복구 모드가 작동하지 않는지 확인하고 싶지 않습니다. :)

  17. 램 디스크를 다시 빌드하고 GRUB 구성을 업데이트 할 수있는 업데이트를 설치하십시오. 정상 모드와 복구 모드를 모두 재부팅하고 테스트하십시오.


3
15.04에서 11, 13 및 14 단계를 생략 할 수 있으며 실제로 이러한 단계를 생략해야 할 수도 있음을 확인할 수 있습니다 (이 방식으로 update-grub을 실행하면 Windows 파티션이 손실 됨)
process91

4
@ process91 숫자가 변경된 단계처럼 보입니다. 이제 12, 14 및 15를 생략해야합니다.
Aleksandr Dubinsky

5
훌륭한 가이드. BitLocker 및 Ubuntu 16.04를 사용하여 Windows 10에서 처음으로 12, 14 및 15 단계를 생략했습니다. 명확하게 할 수있는 몇 가지 다른 장애물이 있었는데, 특히 부트 로더 파티션을 위해 선택한 것 (기존 EFI 파티션에 설치되지만 우분투를 설치하는 디스크를 선택할 수 있습니다) dev / sda). : 전체 편집 권한이있는 사람은 누구나 복사 - 붙여 넣기를 내 쓰기부터 환영 stevenmaude.co.uk/posts/...
스티븐 모드 로즈

5
@unhammer는 댓글을 읽고 혼란스러워하는 사람들을 위해 답변을 편집하고 몇 가지 단계를 삭제했습니다.
Flimm

3
저자는 이미 이전 단계 12,14,15를 제거했습니다. 따라서 단계를 건너 뛰지 마십시오. Ubuntu Mate 16.04.1에서 작동합니다.
user4955663

9

Ubuntu LiveCD의 GUI 도구 만 사용하여 암호화 된 이중 부팅 설정을 만들 수 있습니다.

전제 조건

  • 19.04 Ubuntu 설치 프로그램이 포함 된 USB 스틱.
  • EFI 메인 보드가있는 경우 디스크가 GUID 파티션 테이블 (GPT)을 사용하고 있는지 확인하십시오. 이 방법으로 MBR 디스크를 사용하는 것은 실패한 것 같습니다. Linux 도구 ( gdisk)를 사용하여 MBR을 GPT로 변환 할 수 있지만 먼저 백업을 수행해야합니다. 파티션 테이블을 변환하면 나중에 Windows 부팅 로더수정 해야합니다 .

윈도우

  • 시작 표시 줄 disk partition에서 첫 번째 옵션을 선택하십시오 (설정에서 디스크 파티션 관리자 열기).

  • 기본 파티션을 원하는 우분투 크기로 줄입니다 (방금 기본값을 사용하여 500GB 드라이브를 240GB Windows OS 및 240GB 할당되지 않은 공간으로 나눕니다).

BIOS

  • 보안 부팅을 비활성화하십시오 (비트 로커가있는 경우 매번 Windows로 안전하게 부팅하려면 다시 부팅해야합니다)-Ubu가 기본 OS이므로 게임에는 windoze를 사용하십시오.

우분투 LiveCD

마지막으로-19.04 Installer USB로 부팅

  • Enter기본 Ubuntu 설치 옵션을 누르 십시오 .

  • 전체 디스크 지우기 라는 확인란이 표시되고 일부 확인란이 있으면 다른 항목 (수동 파티션) 옵션을 클릭하십시오 . 그렇지 않으면 Windows 데이터가 손실됩니다!

디스크 파티션 관리자가 디스크를로드하면 할당되지 않은 공간이 생깁니다. 그것을 클릭하고 추가 버튼을 누르면 파티션이 생성됩니다.

  • 먼저 500MB /boot파티션 (기본, ext4)을 만듭니다.
  • 둘째, 나머지 공간으로 암호화 된 볼륨을 만듭니다. 단일 LV 파티션이 생성됩니다. 선택한 루트 /파티션 이되도록 수정하십시오 .
  • 그런 다음 나머지 설치 프로세스가 정상적으로 작동합니다.

처음 부팅 할 때, 로그인 터미널을 열고, 실행 sudo apt-get update하고 sudo apt dist-upgrade, 재부팅하고 다시 로그인합니다.

2GB 스왑 파일이 자동으로 생성됩니다. 8GB를 원한다면 이 답변을 읽으십시오 .


4
2019 년 5 월에 이것이 선호되는 답변이며 (실제로는 2012 년부터 작동하는 것으로 보임) 명령 줄 복잡성이 필요하지 않습니다. 파티셔닝에서 암호화를위한 물리적 볼륨을 생성 한 후 /dev/mapper/sdaX_crypt 목록 맨 위에 새 볼륨이 표시되지 않았습니다 . 이 안내서는 스크린 샷과 파티션 포맷을 보여줍니다. hecticgeek.com/2012/10/…
firepol

좋은 답변, @Falieson! 그러나 처음 14 일 17 시간 동안 연구를 이해하지 못했기 때문에 스크린 샷을 사용하여 내 대답을 쓸 것이라고 생각합니다. @firepol ( hecticgeek.com/2012/10/… ) 에 의해 게시 된 기사는 매우 도움이되었으며, 그 기사 이후에 귀하의 답변이 저에게 의미가있었습니다.
가브리엘 스테이플

또한 다음에 Windows Bitlocker 사용을 종료하고 VeraCrypt로 전환해야 할 때 추가하고 싶습니다. 무료 및 오픈 소스이며 비용이 들지 않으며 듀얼 부팅에서 잘 작동하는 것 같습니다. 내 Windows 파티션과 외부 하드 드라이브 및 일부 로컬 파일 기반 볼륨을 사용하고 있습니다. 다음은 VeraCrypt에 큰 소개 비디오의 youtube.com/watch?v=C25VWAGl7Tw , 자신의 다운로드 페이지 : veracrypt.fr/en/Downloads.html은 . 그러나 ext4 외장 드라이브의 Linux 기반 LUKS 암호화의 경우 포맷 할 때 LUKS 암호화 확인란이있는 포함 된 Ubuntu 디스크 유틸리티를 사용하고 있습니다 .
가브리엘 스테이플

5

첫째, Linux 파티션을 암호화하는 것만으로는 충분히 안전하지 않은 이유는 다음과 같습니다.

  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

이제이 튜토리얼을 따랐습니다.

  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

이 답변에서는 Linux Mint 19.1 XFCE및 의 단계별 설치 (그림 포함)를 Ubuntu 18.04.2단일 디스크로 완전히 암호화했습니다. 우선 설치 Ubuntu 14.04.2/dev/sda5와 있기 때문에이 스왑 파티션을 생성하지 않았 Linux Mint 19.1Ubuntu 18.04.2즉, 사용하지 않는, 그들은 스왑 파일을 사용합니다.

우분투 18.04.2 바이오닉 비버

먼저 Ubuntu설치 미디어를 삽입하고 머신을 Ubuntu라이브 세션 으로 재부팅 한 다음 Try Ubuntu하나의 터미널을 선택 하여 연 다음

  1. sudo su -
  2. fdisk /dev/sda그런 다음 다음 파티션을 작성하십시오.
    • 여기에 이미지 설명을 입력하십시오
  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(선택 사항, running 대신 10GB 대신 전체 디스크 여유 공간을 사용하도록 lvcreate -L10G -n ubuntu_root vgubuntu이것을 실행할 수 있습니다 lvcreate -l 100%FREE -n ubuntu_root vgubuntu)
    • 여기에 이미지 설명을 입력하십시오
  8. 터미널을 닫지 말고 distro 설치 프로그램을 열고 다른 항목을 선택한 후 설치하십시오.
    • /dev/sda1형식의 /boot파티션으로 마운트ext2
    • /dev/mapper/vgubuntu-ubuntu_root형식 /과 같이 장착됩니다 ext4.
    • /dev/sda 부트 로더 설치
    • 다른 것을 표시하지 마십시오
    • 여기에 이미지 설명을 입력하십시오
    • 여기에 이미지 설명을 입력하십시오
  9. 재부팅하지 말고 Linux 사용 계속을 클릭하고 열린 터미널을 선택하십시오.
  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 (따옴표없이 UUID를 복사하여 다음 단계에서 사용)
  20. echo sda5_crypt UUID=5f22073b-b4ab-4a95-85bb-130c9d3b24e4 none luks > /etc/crypttab
    • 여기에 이미지 설명을 입력하십시오
    • 여기에 이미지 설명을 입력하십시오
    • 여기에 이미지 설명을 입력하십시오
  21. 파일 만들기 /etc/grub.d/40_custom
    • 여기에 이미지 설명을 입력하십시오
  22. 편집 /etc/default/grub및 설정
    • GRUB_TIMEOUT_STYLE=menu
    • GRUB_TIMEOUT=10
    • 여기에 이미지 설명을 입력하십시오
  23. update-initramfs -u
  24. update-grub
    • 여기에 이미지 설명을 입력하십시오
    • 여기에 이미지 설명을 입력하십시오
  25. exit
  26. reboot
  27. 컴퓨터를 재부팅 한 후 옵션을 선택하면 Ubuntu암호화 암호를 올바르게 묻습니다.
    • 여기에 이미지 설명을 입력하십시오
  28. 로그인 한 후 다음을 실행하십시오.
    • sudo apt-get update
    • sudo apt-get install gparted
  29. 그리고 열면 gparted이것을 찾을 수 있습니다
    • 여기에 이미지 설명을 입력하십시오

자세한 지침은이 질문의 맨 위에 지적 된 원본 자습서를 읽거나 Google에서 이러한 명령의 사용법에 대해 검색하십시오.


리눅스 민트 19.1 시나몬

나머지 리눅스 설치를위한 reboot당신의 Ubuntu컴퓨터와 부팅 Mint 19.1(라이브 CD) 설치하고 터미널 창을 엽니 다

  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(선택 사항, running 대신 10GB 대신 전체 디스크 여유 공간을 사용하도록 lvcreate -L10G -n mint_root vgmint이것을 실행할 수 있습니다 lvcreate -l 100%FREE -n mint_root vgmint)
    • 여기에 이미지 설명을 입력하십시오
    • 여기에 이미지 설명을 입력하십시오
  7. 터미널을 닫지 말고 distro 설치 프로그램을 열고 다른 항목을 선택한 후 설치하십시오.
    • /dev/sda2형식의 /boot파티션으로 마운트ext2
    • /dev/mapper/vgmint-mint_root형식 /과 같이 장착됩니다 ext4.
    • /dev/sda2부트 로더 설치로 ( /dev/sda이전과 같이 선택하지 마십시오 )
    • 다른 것을 표시하지 마십시오
    • 여기에 이미지 설명을 입력하십시오
    • 여기에 이미지 설명을 입력하십시오
  8. 재부팅하지 말고 Linux 사용 계속을 클릭하고 열린 터미널을 선택하십시오.
  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 (따옴표없이 UUID를 복사하여 다음 단계에서 사용)
  19. echo sda6_crypt UUID=5f22073b-b4ab-4a95-85bb-130c9d3b24e4 none luks > /etc/crypttab
    • 여기에 이미지 설명을 입력하십시오
    • 여기에 이미지 설명을 입력하십시오
    • 여기에 이미지 설명을 입력하십시오
  20. update-initramfs -u
  21. update-grub
    • 여기에 이미지 설명을 입력하십시오
    • 여기에 이미지 설명을 입력하십시오
  22. exit
  23. reboot
  24. 컴퓨터를 재부팅 한 후 옵션을 선택하십시오 Linux Mint on /dev/sda2
    • 여기에 이미지 설명을 입력하십시오
  25. 그런 다음 올바르게 시작 Mint 19.1되고 암호화 암호를 묻습니다.
    • 여기에 이미지 설명을 입력하십시오
  26. 로그인 한 후 다음을 실행하십시오.
    • sudo apt-get update
    • sudo apt-get install gparted
  27. 그리고 열면 gparted이것을 찾을 수 있습니다
    • 여기에 이미지 설명을 입력하십시오

관련된 링크들:

  1. 활성 LVM 파티션의 크기를 어떻게 조정할 수 있습니까?
  2. LVM 파티션의 크기를 어떻게 조정할 수 있습니까? (예 : 물리량)
  3. https://www.tecmint.com/extend-and-reduce-lvms-in-linux/
  4. GRUB chainloader는 Windows 8에서 작동하지 않습니다
  5. Ubuntu 14.04 LTS에서 암호화 된 / boot로 UEFI 부팅

1
컴퓨터에 1 개의 하드 디스크가 있고 기존의 암호화되지 않은 Kubuntu 18.04가 1 개 있습니다. 이를 기반으로 첫 번째 암호화되지 않은 쿠분투 근처에 두 번째 암호화 된 쿠분투 18.04를 설치했습니다. 이제 둘 다 하나의 하드 디스크에서 잘 작동합니다. 자세한 답변 주셔서 감사합니다.
Ikrom

1
이 답변에서 Linux Mint에 대한 부분을 제거해야합니다. 이 부분은 대답 불필요한 긴하게하고 같은 주제에서 벗어난 후속 질문에 리드 오프 주제, OP에 의해 요청되지 않은 것입니다 이것 .
mook765

민트 관련 부품의 경우 -1입니다.
user68186
당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.