웹사이트 검색

LUKS: Linux에서 NTFS를 지원하는 Linux 하드 디스크 데이터 암호화


LUKS 약어는 Linux Unified Key Setup을 의미합니다. 이는 Linux 커널에서 널리 사용되는 디스크 암호화 방법이며 cryptsetup 패키지로 구현됩니다.

cryptsetup 명령줄은 볼륨 디스크, 파티션 및 전체 디스크(USB 스틱 포함)가 마운트될 때마다 제공되는 제공된 암호에서 파생된 대칭 암호화 키를 사용하여 즉시 볼륨 디스크를 암호화합니다. 파일 시스템 계층 구조를 가지며 aes-cbc-essiv:sha256 암호를 사용합니다.

LUKS는 Linux 시스템의 전체 블록 장치(하드 디스크, USB 스틱, 플래시 디스크, 파티션, 볼륨 그룹 등)를 암호화할 수 있으므로 이동식 저장 매체, 노트북 하드 디스크 또는 Linux 스왑 파일을 보호하는 데 주로 권장되며 파일에는 권장되지 않습니다. 레벨 암호화.

NTFS(New Technology File System)는 Microsoft에서 개발한 독점 파일 시스템입니다.

Ubuntu 14.04는 ntfs-3g 패키지의 도움으로 LUKS 암호화를 완벽하게 지원하고 Windows용 NTFS 기본 지원도 제공합니다.

이 튜토리얼의 요점을 증명하기 위해 Ubuntu 14.04 상자에 새 하드 디스크(4번째)를 추가했습니다. 새로 추가된 HDD에 대한 시스템 참조는 /dev/sdd입니다. ) 두 개의 파티션으로 나누어집니다.

  1. LUKS 암호화에 사용되는 파티션 1개(/dev/sdd1 -기본)
  2. 두 번째 파티션(/dev/sdd5 – 확장)은 Linux 및 Windows 기반 시스템 모두에서 데이터에 액세스하기 위해 NTFS로 포맷되었습니다.

또한 재부팅 후 파티션은 Ubuntu 14.04에 자동으로 마운트됩니다.

1단계: 디스크 파티션 생성

1. 하드 디스크가 시스템에 물리적으로 추가된 후 ls 명령을 사용하여 모든 /dev/devices를 나열합니다(네 번째 디스크는 /dev/sdd).

ls /dev/sd*

2. 다음으로 fdisk 명령을 사용하여 새로 추가된 HDD를 확인하세요.

sudo fdisk –l /dev/sdd

파일 시스템이 작성되지 않았기 때문에 디스크에 아직 유효한 파티션 테이블이 포함되어 있지 않습니다.

3. 다음 단계에서는 cfdisk 디스크 유틸리티를 사용하여 하드 디스크를 분할하여 두 개의 파티션으로 만듭니다.

sudo cfdisk /dev/sdd

4. 다음 화면에서는 cfdisk 대화형 모드가 열립니다. 하드 디스크 여유 공간을 선택하고 왼쪽/오른쪽 화살표를 사용하여 새로 만들기 옵션으로 이동하세요.

5. 파티션 유형을 기본으로 선택하고 Enter 키를 누르세요.

6. 원하는 파티션 크기를 MB 단위로 기록하세요.

7. 하드 디스크 여유 공간의 시작에 이 파티션을 만듭니다.

8. 다음으로 파티션 유형 옵션으로 이동하여 Enter를 누르세요.

9. 다음 프롬프트에는 모든 유형의 파일 시스템 목록과 해당 번호 코드(16진수)가 표시됩니다. 이 파티션은 암호화된 Linux LUKS이므로 83 코드를 선택하고 Enter를 다시 눌러 파티션을 만드세요.

10. 첫 번째 파티션이 생성되고 cfdisk 유틸리티 프롬프트가 처음으로 돌아갑니다. NTFS로 사용되는 두 번째 파티션을 생성하려면 남은 여유 공간을 선택하고 옵션으로 이동한 후 Enter 키를 누르세요. .

11. 이번에는 파티션이 확장 논리 파티션이 됩니다. 따라서 논리 옵션으로 이동한 후 Enter를 다시 누르세요.

12. 파티션 크기를 다시 입력하세요. 남은 여유 공간을 새 파티션으로 사용하려면 크기의 기본값을 그대로 두고 Enter를 누르세요.

13. 다시 파티션 유형 코드를 선택하세요. NTFS 파일 시스템의 경우 86 볼륨 코드를 선택하세요.

14. 파티션을 검토하고 확인한 후 쓰기를 선택하고 다음 대화식 프롬프트 질문에 라고 대답한 후 종료하여 종료합니다. < b>cfdisk 유틸리티.

축하해요 ! 파티션이 성공적으로 생성되었으며 이제 포맷하고 사용할 준비가 되었습니다.

15. 디스크 파티션 테이블을 다시 확인하려면 fdisk 명령을 다시 실행하세요. 그러면 자세한 파티션 테이블 정보가 표시됩니다.

sudo fdisk –l /dev/sdd

2단계: 파티션 파일 시스템 생성

NTFS 파일 시스템

16. 두 번째 파티션에 NTFS 파일 시스템을 생성하려면 mkfs 명령을 실행하세요.

sudo mkfs.ntfs /dev/sdd5

17. 파티션을 사용 가능하게 만들려면 파일 시스템의 마운트 지점에 마운트해야 합니다. mount 명령을 사용하여 네 번째 하드 디스크의 두 번째 파티션을 /opt 마운트 지점에 마운트합니다.

sudo mount /dev/sdd5 /opt

18. 다음으로 cat 명령을 사용하여 파티션이 사용 가능하고 /etc/mtab 파일에 나열되어 있는지 확인합니다.

cat /etc/mtab

19. 파티션을 마운트 해제하려면 다음 명령을 사용하십시오.

sudo umount /opt
EXT4 루크

20. cryptsetup 패키지가 시스템에 설치되어 있는지 확인하세요.

sudo apt-get install cryptsetup		[On Debian Based Systems]

yum install cryptsetup				[On RedHat Based Systems]

21. 이제 다음 명령을 실행하여 ext4 파일 시스템으로 네 번째 하드 디스크의 첫 번째 파티션을 포맷할 차례입니다.

sudo luksformat  -t ext4  /dev/sdd1

"확실합니까?" 질문에 대문자 YES로 대답하고 원하는 암호를 세 번 입력하세요.

참고: 파티션 크기HDD 속도에 따라 파일 시스템 생성에 시간이 걸릴 수 있습니다.

22. 파티션 장치 상태도 확인할 수 있습니다.

sudo cryptsetup luksDump  /dev/sdd1

23. LUKS는 최대 8개의 비밀번호 추가를 지원합니다. 비밀번호를 추가하려면 다음 명령을 사용하세요.

sudo cryptsetup luksAddKey /dev/sdd1

비밀번호를 제거하려면 다음을 사용하세요.

sudo cryptsetup luksRemoveKey /dev/sdd1

24.암호화된 파티션을 활성화하려면 다음의 도움으로 /dev/mapper 디렉토리에 대한 이름 항목(초기화)이 있어야 합니다. cryptsetup 패키지.

이 설정에는 다음 명령줄 구문이 필요합니다.

sudo cryptsetup luksOpen  /dev/LUKS_partiton  device_name

"device_name"은 원하는 설명이 포함된 이름이 될 수 있습니다! (저는 crypted_volume으로 이름을 지정했습니다). 실제 명령은 아래와 같습니다.

sudo cryptsetup luksOpen  /dev/sdd1 crypted_volume

25. 그런 다음 기기가 /dev/mapper, 디렉토리, 심볼릭 링크 및 기기 상태에 나열되어 있는지 확인하세요.

ls /dev/mapper
ls –all /dev/mapper/encrypt_volume

sudo cryptsetup –v status encrypt_volume

26. 이제 파티션 장치를 널리 사용할 수 있도록 하려면 mount 명령을 사용하여 시스템의 마운트 지점 아래에 마운트하세요.

sudo mount  /dev/mapper/crypted_volume  /mnt

보시다시피 파티션이 마운트되어 있고 데이터 쓰기에 액세스할 수 있습니다.

27. 사용할 수 없게 하려면 시스템에서 마운트를 해제하고 기기를 닫으면 됩니다.

sudo umount  /mnt
sudo cryptsetup luksClose crypted_volume

3단계: 자동으로 파티션 마운트

고정 하드 디스크를 사용하고 재부팅 후 두 파티션이 모두 자동으로 시스템에 마운트되어야 하는 경우 이 두 단계를 따라야 합니다.

28. 먼저 /etc/crypttab 파일을 편집하고 다음 데이터를 추가하세요.

sudo nano /etc/crypttab
  1. 대상 이름: 장치를 설명하는 이름입니다(위의 EXT4 LUKS에 대한 22 항목 참조).
  2. 소스 드라이브: LUKS용으로 포맷된 하드 디스크 파티션(EXT4 LUKS의 위 항목 21 참조).
  3. 키 파일: 없음을 선택하세요.
  4. 옵션: luks 지정

마지막 줄은 아래와 같습니다.

encrypt_volume               /dev/sdd1          none       luks

29. 그런 다음 /etc/fstab을 편집하고 장치 이름, 마운트 지점, 파일 시스템 유형 및 기타 옵션을 지정합니다.

sudo nano /etc/fstab

마지막 줄에 다음 구문을 사용하십시오.

/dev/mapper/device_name (or UUID)	/mount_point     filesystem_type     options    dump   pass

그리고 특정 콘텐츠를 추가하세요.

/dev/mapper/encrypt_volume      /mnt    ext4    defaults,errors=remount-ro     0     0

30. 장치 UUID를 얻으려면 다음 명령을 사용하십시오.

sudo blkid

31. 이전에 생성한 NTFS 파티션 유형을 추가하려면 fstab의 새 줄에 위와 동일한 구문을 사용합니다(여기에서는 Linux 파일 추가 리디렉션 사용 ).

sudo su -
echo "/dev/sdd5	/opt	ntfs		defaults		0              0"  >> /etc/fstab

32. 변경 사항을 확인하려면 컴퓨터를 재부팅하고 "네트워크 장치 구성 시작" 부팅 메시지 후에 Enter를 누르고 다음을 입력하세요. 귀하의 기기 암호.

보시다시피 두 디스크 파티션은 모두 Ubuntu 파일 시스템 계층 구조에 자동으로 마운트되었습니다. 암호화된 볼륨 암호를 제공하기 위해 재부팅 시퀀스에 액세스할 수 없는 경우 물리적으로 원격 서버에 있는 fstab 파일에서 자동으로 암호화된 볼륨을 사용하지 않는 것이 좋습니다.

USB 스틱, 플래시 메모리, 외장 하드 디스크 등과 같은 모든 유형의 이동식 미디어에 동일한 설정을 적용하여 도청 또는 도용 시 중요한 비밀 데이터를 보호할 수 있습니다.