제로화 SSD 드라이브 고객을위한 VPS를 호스팅합니다. 각 고객 VPS에는 표준

고객을위한 VPS를 호스팅합니다. 각 고객 VPS에는 표준 스핀들 하드 디스크에 LVM LV가 제공됩니다. 고객이 떠나는 경우이 LV를 제로화하여 데이터가 다른 고객에게 유출되지 않도록합니다.

우리는 호스팅 사업을 위해 SSD를 사용할 생각입니다. SSD에 “마모 레벨링 (wear levelling)”기술이 있다는 점에서 제로화는 무의미합니까? 고객 데이터가 다른 고객에게 유출 될 수 없기 때문에이 SSD 아이디어를 실현할 수 없습니까?



답변

막으려 고하는 것은 다음 고객이 이전 고객의 데이터를보기 위해 디스크를 읽는 것으로 가정하면 0을 모두 쓰면 실제로 작동합니다. 섹터 ‘n’에 0을 쓰면 섹터 ‘n’을 읽을 때 모든 0을 반환합니다. 사실, 실제 실제 데이터는 여전히 플래시 칩에있을 수 있지만 정상적인 읽기 작업을 수행 할 수 없으므로 상황에 문제가되지 않습니다.

누군가가 실제로 디스크를 잡고 디스크를 분리 할 수 ​​있다면 (플래시 칩을 직접 읽을 수 있기 때문에) 문제가되지만 SATA 버스 만 액세스 할 수있는 경우 전체에 0을 쓰는 것이 문제입니다 디스크가 잘 작동합니다.


답변

SSD를 절대로 채우지 마십시오. 최소한 이것은 SSD의 쓰기 수명 중 일부를 거의 또는 전혀 사용하지 않고 마모시킵니다. 최악의 시나리오에서는 SSD 컨트롤러를 일시적으로 성능 저하 상태 로 전환 할 수 있습니다 .

에서 이 소스 :

여러 번 반복하여 전체 디스크를 반복해서 덮어 쓰면 데이터가 성공적으로 파괴 될 수 있지만 펌웨어 변환 계층 (FTL)으로 인해 기존 하드 디스크 드라이브보다 훨씬 복잡하고 시간이 많이 걸립니다. 그들의 결과에 따르면, 그것은 매력없는 옵션입니다

최선의 옵션, 전체 디스크 암호화를 통한 안전한 지우기 :

일부 최신 SSD는 전체 디스크 암호화를 사용할 수 있습니다. 예를 들면 인텔의 새로운 320 드라이브와 일부 Sandforce 2200 시리즈 드라이브가 있습니다. 이러한 드라이브는 드라이브 마모없이 간단하고 빠른 방법으로 안전하게 지울 수 있습니다. 드라이브는 기록 된 모든 데이터에 대해 AES 암호화를 사용하므로 보안 지우기는 단순히 기존 AES 키를 삭제하고 새 키로 바꾸는 것을 의미합니다. 이렇게하면 드라이브의 모든 ‘이전’데이터를 복구 할 수 없게됩니다.

그러나 인텔의 보안 지우기는 자동화하기 쉽지 않습니다. AFAIK는 Intel의 Windows GUI 앱에서 수행해야하며 비어있는 비 부팅 드라이브에서만 실행할 수 있습니다. Intel 문서에서 21 페이지 이상을 참조 하십시오.

다른 옵션 인 ATA 보안 지우기 :

다른 옵션은 Linux에서 fx HDPARM을 통해 ATA 보안 지우기 명령 을 실행하는 것입니다. 이것은 스크립팅을 통해 훨씬 쉽게 자동화 할 수 있습니다.

드라이브가 ‘좋은’방식으로 ATA 보안 지우기를 구현하는 경우 최소한 “플래시 변환 계층”(FTL)을 삭제해야합니다. FTL 테이블은 논리 섹터 (운영 체제가 ‘본다’)와 드라이브 자체에있는 NVRAM의 물리적 페이지 간의 매핑을 유지합니다. 이 매핑 테이블이 파괴되면 드라이브에서 데이터를 복구하는 것이 매우 어렵지만 불가능하지는 않습니다.

그러나 ATA Secure Erase가 모든 제조업체 드라이브에서 일관되고 잘 구현되었다는 연구 결과를 알지 못하므로 항상 작동한다고 말하고 싶습니다. 제조업체 기술 문서를 읽어야합니다.

단일 파티션의 경우 :

다른 답변에 대한 의견을 읽으면 OP는 단일 파티션 만 안전하게 지우고 싶어합니다. 이를 수행하는 좋은 방법 중 하나는 LUKS 또는 TrueCrypt를 사용하여 암호화 된 볼륨 (fx) 만 작성하는 것 입니다 . 이렇게하면 온 드라이브 전체 디스크 암호화 구성표와 유사한 암호화 키를 제거하여 볼륨을 안전하게 지울 수 있습니다.

결론:

정말로 알고 싶다면 Sophos의 블로그에서 링크 된 문서읽고 보안 지우기에 관한 드라이브 제조업체 기술 노트를 읽으십시오. 그러나 ‘좋은’보안 지우기를 원한다면 전체 디스크 암호화 및 암호화 키의 안전한 삭제 및 교체가 가능한 SSD가 최선의 선택 일 것입니다. 또는 운영 체제 수준 암호화를 사용하고 데이터를 안전하게 지울 때 키를 버립니다.


답변

웨어 레벨링은 데이터 제로 아웃과 관련이 없습니다.

다른 사람 / 응용 프로그램이 해당 데이터를 읽지 못하게하려면 데이터를 제로화합니다. SSD는 쓰기가 SSD에 대한 ‘손상’으로 인해 더 오래 사용할 수 있도록 데이터를 ‘마모 수준’으로 유지합니다. 또한 디스크는 일반적으로 사용량이 많지 않을 때이 작업을 수행합니다. 서버 상황에서 조용한 시간을 항상 사용할 수있는 것은 아니므로이 작업은 종종 수행되지 않습니다.

IO 운영에 대해 고객에게 비용을 청구합니까? 그렇지 않다면 기본적으로 항상 지속적으로 작성하여 몇 시간 / 일 동안 SSD의 일부를 죽이는가? SSD는 대부분의 사람들이 생각하는 것보다 , 특히 쓰기가 많은 환경에서 죽이기가 훨씬 쉽습니다 .


답변

같은 그것의 가치가 독서 기사 그래서 . 누군가가 디스크에 실제로 액세스 할 수 있으면 정보를 검색하는 것이 더 쉽습니다. SSD의 데이터 암호화를 고려한 다음 더 쉬운 문제인 개인 키에 대해 안전하게 잊어 버리면됩니다. 랜덤 액세스 성능이 훨씬 뛰어 나기 때문에 SSD가 SSD에서 큰 승리를 거두고 있음을 알 수 있습니다.


답변

dd데이터를 제로 아웃하는 데 사용 하거나 임의의 데이터를 디스크에 쓰는 다른 방법 과 같은 기존의 SSD 지우기 방법을 사용하고 싶지는 않습니다 . 이러한 방법은 플래터 기반 디스크에 더 적합합니다. SSD를 지우는 데 효과적이지만 SSD의 제한된 쓰기 작업을 불필요하게 많이 사용하므로 SSD의 예상 수명이 단축됩니다. 그것은 빨리 비싸 질 것입니다. 또한 시간이 지남에 따라 SSD의 성능을 저하시킬 수 있습니다.

SSD는 보안 지우기 방법이 다릅니다. IDE 에뮬레이션을 수행 할 수있는 특정 유형의 SATA 컨트롤러가 필요하고 절차가 복잡 할 수 있기 때문에 수행하기가 매우 번거로운 것 같습니다. 일부 제조업체는 자체 SSD를 안전하게 지울 수있는 도구를 제공하지만 Linux의 경우 hdparm ( https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase)으로도 가능 합니다. 그러나 계속 진행하기 전에 해당 지침에서 드라이브가 “고정되지”않았는지 확인해야합니다. 시스템을 부팅하는 동안 드라이브를 “고정 해제”할 수있는 마더 보드 및 SATA 컨트롤러를 찾아야하기 때문에 이는 가장 어려운 단계 중 하나입니다. 일반적으로 SATA 케이블에서 플러그를 뽑았다가 다시 연결해야합니다.

어쨌든, 내 권장 사항은 연구를 수행하고 편리한 시스템에서 사용할 수있는 보안 지우기 유틸리티가 포함 된 SSD를 선택하는 것입니다.


답변

한 가지 대답이 이미 받아 들여졌지만 blkdiscard /dev/sdX여기서 언급 할 가치가 있다고 생각합니다 .

Arch Wiki : SSD 에 따르면 이 blkdiscard명령은 모든 블록버리고 모든 데이터가 손실됩니다. “SSD를 판매하려면”전에 사용하는 것이 좋습니다.

TRIM의 작동 방식에 익숙하지 않으므로 데이터가 지워질 것이라는 보장이 없습니다. 그러나 나는 아무것도하지 않는 것보다 낫다고 생각합니다.

BTW, 나는이 명령이 단일 파티션이 아닌 전체 장치에서만 작동하는 것을 두려워합니다.

도움이 되었기를 바랍니다. 🙂


답변

가상 머신 이미지에서 데이터를 지우는 가장 좋은 방법은 TRIM 기능을 사용하는 것입니다. 많은 최신 운영 체제가이를 지원합니다. 거의 모든 현재 SSD도 지원합니다.

또한이 옵션을 더욱 향상시키는 것은 모든 SAN이 SCSI 이름 UNMAP 아래에서이 기능을 지원 한다는 것 입니다. 스파 스 프로비저닝을 구현하는 SAN에는 훌륭한 명령이며, 특히 블록 중복 제거와 결합 될 때 가상 머신에 뛰어난 기능입니다.

TRIM 명령이 SSD에 제공되면 펌웨어는 해당 블록을 재사용 할 수 있도록 즉시 표시합니다. 일부 SSD는 TRIM’d 블록에 대해 항상 0을 반환합니다 . 다른 드라이브는 구현 정의 (예 : 임의) 데이터를 반환합니다.

TRIM을 지원하는 운영 체제에서 파일을 간단히 삭제하면 TRIM 블록이 표시됩니다. 실제 TRIM 작업은 즉시 수행되거나 나중에 수행하기 위해 일괄 처리 될 수 있습니다. 때로는 파일을 강제로 트리밍하거나 파티션에서 사용하지 않는 모든 블록을 검사하는 도구가 있습니다.

Linux의 TRIM 성능은 여전히 ​​반점이므로 사용하는 경우 옵션을 조사해야합니다. Windows에서는 꽤 견고합니다.