암호화된 파티션의 스왑 메모리가 암호화되어 있습니까?

암호화된 파티션의 스왑 메모리가 암호화되어 있습니까?

암호화된 ext4 파티션에 Ubuntu를 설치했다면 일반적으로 하나가 있을 것입니다 /swapfile. 이제 스왑된 메모리도 기본적으로 암호화되기를 원합니다. 하지만, 그매뉴얼 페이지말했다 swapon:

커널의 스왑 파일 구현은 파일 시스템의 도움 없이 파일에 직접 쓸 수 있을 것으로 예상합니다.

이제 "직접"이 무엇을 의미하는지, 특히 ext4 상단의 암호화 계층이 이러한 의미에서 "파일 시스템"으로 간주되는지 여부는 여전히 불분명합니다. 우선적으로 커널이 먼저 디스크에서 스왑 파일의 위치를 ​​가져온 다음 암호화 계층을 사용하지 않고 디스크에 직접 기록하여 메모리 데이터가 디스크에서 암호화되지 않은 상태로 끝날 가능성을 배제할 수 없습니다.

내 의심이 사실입니까(그리고 어떤 Linux 버전에 적용됩니까)? 그렇지 않은 경우 암호화된 파티션에 스왑 파일을 설정하는 방법에 대한 인터넷의 많은 지침 중 하나가 아닌 이 문제를 직접적으로 해결하는 소스를 제공하십시오. 감사합니다!

답변1

암호화된 파티션의 스왑 메모리가 암호화되어 있습니까?

파티션이 dm-crypt블록 장치(LUKS 등)를 통해 암호화된 경우 그렇습니다.

우선적으로 커널이 먼저 디스크에서 스왑 파일의 위치를 ​​얻은 다음 디스크에 직접 쓸 가능성을 배제할 수 없습니다.

이는 커널이 직접적으로 작성하지 않는 작업입니다.디스크, 블록 장치에 씁니다. 실제로 스왑 파일은 파일 시스템을 호스팅하는 장치에서 예약된 블록으로 간주되어야 하며 다른 파일 시스템 기능에 의존할 수 없습니다.

스왑 파일을 추가할 때,커널은 사용하는 모든 블록을 매핑합니다.기본 블록 장치에서. 완료되면 스왑 파일에 대한 읽기 및 쓰기는 커널의 VFS 계층을 직접 지정하여 수행됩니다.

이에 대한 실질적인 결과는 파일 시스템 기반 암호화를 사용할 수 없다는 것입니다. 그러나 기본 블록 장치가 반드시 물리적 장치일 필요는 없으므로 전체적으로 암호화된 볼륨에 호스팅된 파일 시스템의 스왑 파일은 제대로 작동하고 암호화됩니다. 따라서 Ext4 암호화는 작동하지 않지만 LUKS는 작동합니다.

당신은 또한 볼 수 있습니다Linux에서 암호화된 스왑 파일을 설정하는 방법은 무엇입니까?(그러나 여기에 포함된 모든 정보가 현재 커널에 적용되는 것은 아닙니다.)

관련 정보