LUKS 암호화로 보호되는 파티션에 서버의 webroot 디렉터리를 설치했습니다. 이 파티션의 파일이 해독되면 어떻게 되는지 알고 싶습니다. 하다
이러한 파일의 암호화되지 않은 버전 사본은 RAM에 저장됩니다.
이러한 파일의 암호화되지 않은 버전 사본은 임시 디렉토리에 저장됩니다.
서버는 액세스할 때마다 필요에 따라 파일의 암호를 해독합니다.
제가 또 놓친 장면이 있었나요?
제가 이 질문을 하는 이유는 복호화 프로세스와 이것이 서버의 CPU 및 RAM 리소스에 어떤 영향을 미치는지, 그리고 디스크 암호화에 LUKS를 사용하는 것이 eCryptfs와 같은 파일 시스템 암호화보다 더 효율적인지 여부를 더 잘 이해하기 위한 것입니다.
Wikipedia를 찾아보았으나 그러한 정보를 찾을 수 없었습니다. 이곳이 이 질문을 하기에 가장 좋은 장소인지 확실하지 않습니다. 그렇게 생각하지 않는다면 자유롭게 마이그레이션하세요. 감사해요.
답변1
LUKS는 블록 장치 위에 위치하며 장치에 대한 모든 액세스를 암호화/해독하는 블록 장치 암호화 계층입니다. 암호화되지 않은 데이터는 물리적 장치에 닿지 않습니다.
그런 다음 LUKS는 시스템이 파일에 액세스하는 데 사용하는 가상 블록 장치를 제공합니다. 따라서 이는 애플리케이션에 투명하며 애플리케이션은 암호화가 발생하고 있다는 사실을 알지 못합니다.
단일 블록 장치와 루트 파일 시스템을 갖춘 간단한 시스템을 생각해 보십시오 /dev/sda1
. LUKS를 사용하여 암호화하면 장치에 대한 모든 직접 액세스를 처리하고 /dev/mapper/encrypted-root
시스템에서 실제로 사용되는 장치와 같은 자체 장치를 제공합니다. 다음 위치에 있을 수 있습니다 /etc/fstab
.
/dev/mapper/encrypted-root / ext4 noatime 0 0
따라서 이 파일 시스템의 파일에 대한 모든 액세스는 LUKS를 통과합니다.
또한 LUKS는 자신이 처리하는 데이터가 무엇인지 모르거나 신경쓰지 않는다는 점에 유의하세요. 따라서 직접 파일 시스템, 소프트웨어 RAID 어레이, LVM 볼륨 등 그 위에 무엇이든 계층화할 수 있습니다. LUKS는 이들 중 어느 것 위에도 배치할 수 있습니다.
일반적인 캐싱 프로세스를 통해 RAM에 캐시된 데이터는 암호화되지 않을 수 있습니다.