Wir hosten VPSes für Kunden. Jeder Kunden-VPS erhält eine LVM-LV auf einer Standard-Spindel-Festplatte. Wenn der Kunde abreist, setzen wir diese LV auf Null, um sicherzustellen, dass seine Daten nicht an andere Kunden weitergegeben werden.
Wir denken darüber nach, SSDs für unser Hosting-Geschäft einzusetzen. Wenn SSDs über die "Wear Leveling" -Technologie verfügen, macht das Nullsetzen dann sinnlos? Ist diese SSD-Idee deshalb nicht umsetzbar, weil wir nicht zulassen können, dass Kundendaten an einen anderen Kunden weitergegeben werden?
quelle
Füllen Sie niemals eine SSD auf Null. Dies wird zumindest einen Teil der Schreiblebensdauer der SSD für wenig oder gar keinen Nutzen verschleißen. In einem extremen Worst-Case-Szenario können Sie den Controller der SSD in einen (vorübergehend) reduzierten Leistungszustand versetzen .
Aus dieser Quelle :
Ihre beste Option, sicheres Löschen durch vollständige Festplattenverschlüsselung:
Einige moderne SSDs können die vollständige Festplattenverschlüsselung verwenden - Beispiele sind die neuen 320-Laufwerke von Intel und einige Laufwerke der Sandforce 2200-Serie. Diese Laufwerke können auf einfache und schnelle Weise sicher gelöscht werden, ohne dass ein Verschleiß des Laufwerks auftritt. Das Laufwerk verwendet AES-Verschlüsselung für alle geschriebenen Daten. Ein sicheres Löschen bedeutet also, den alten AES-Schlüssel zu löschen und durch einen neuen zu ersetzen. Dadurch werden alle "alten" Daten auf dem Laufwerk unwiederbringlich wiederhergestellt.
Das sichere Löschen von Intel ist jedoch nicht einfach zu automatisieren. AFAIK muss über die Windows-GUI-App von Intel ausgeführt werden. Sie kann nur auf einem leeren Nicht-Boot-Laufwerk usw. ausgeführt werden. Weitere Informationen finden Sie in den Intel-Dokumenten ab Seite 21.
Ihre andere Option, ATA Secure Erase:
Eine weitere Option ist die Ausgabe eines ATA Secure Erase-Befehls über fx HDPARM unter Linux. Dies wird viel einfacher per Scripting zu automatisieren sein.
Vorausgesetzt, das Laufwerk implementiert ATA Secure Erase auf eine "gute" Weise, sollte erwartet werden, dass es mindestens die "Flash Translation Layer" (FTL) löscht. Die FTL-Tabelle enthält die Zuordnung zwischen den logischen Sektoren (die das Betriebssystem "sieht") und den physischen Seiten des NVRAM auf dem Laufwerk. Wenn diese Zuordnungstabelle zerstört ist, sollte es sehr schwierig - aber wahrscheinlich nicht unmöglich - sein, Daten vom Laufwerk wiederherzustellen.
Es sind mir jedoch keine Studien bekannt, die gezeigt haben, dass ATA Secure Erase auf allen Laufwerken des Herstellers konsistent und gut implementiert ist. Daher zögere ich zu sagen, dass es immer funktionieren wird - Sie sollten die technische Dokumentation des Herstellers lesen.
Für eine einzelne Partition:
Während ich die Kommentare zu anderen Antworten lese, scheint OP nur einzelne Partitionen sicher löschen zu wollen. Eine gute Möglichkeit wäre, nur verschlüsselte Volumes zu erstellen , beispielsweise mit LUKS oder TrueCrypt . Auf diese Weise können Sie das Volume sicher löschen, indem Sie den Verschlüsselungsschlüssel verwerfen, ähnlich wie dies bei der Festplattenverschlüsselung auf dem Laufwerk der Fall ist.
Fazit:
Wenn Sie wirklich, wirklich wissen möchten, lesen Sie das im Sophos Blog verlinkte Dokument und die technischen Hinweise des Laufwerkherstellers zum sicheren Löschen. Wenn Sie jedoch sicher löschen möchten, ist eine SSD mit vollständiger Festplattenverschlüsselung und sicherem Löschen und Ersetzen der Verschlüsselungsschlüssel wahrscheinlich die beste Wahl. Verwenden Sie alternativ die Verschlüsselung auf Betriebssystemebene und werfen Sie den Schlüssel weg, wenn die Daten sicher gelöscht werden sollen.
quelle
Wear Leveling hat überhaupt nichts mit dem Ausgleichen von Daten zu tun.
Sie setzen Daten auf Null, um zu verhindern, dass andere Personen / Anwendungen diese Daten lesen. SSDs 'tragen' ihre Daten, um sicherzustellen, dass sie aufgrund des 'Schadens', den das Beschreiben von SSDs mit sich bringt, länger verwendbar sind. Auch Festplatten tun dies normalerweise, wenn sie nicht ausgelastet sind. In Serversituationen sind Ruhezeiten nicht immer verfügbar, sodass diese Arbeit häufig nicht erledigt wird.
Berechnen Sie Ihren Kunden ihre IO-Operationen? Wenn nicht, was hindert sie daran, ihren Teil einer SSD in Stunden / Tagen zu töten, indem sie einfach ständig schreiben? SSDs sind viel einfacher zu töten, als die meisten Leute denken würden , besonders in schreiblastigen Umgebungen.
quelle
if (time < 9am) chriss_try_again()
Es lohnt sich also Leseartikel wie diese . Wenn jemand physischen Zugriff auf die Disc hat, ist das Abrufen von Informationen einfacher. Haben Sie darüber nachgedacht, die Daten auf der SSD zu verschlüsseln, und müssen Sie dann nur den privaten Schlüssel sicher vergessen, was ein einfacheres Problem sein sollte. Ich kann sehen, dass SSD wegen der viel besseren Direktzugriffsleistung ein großer Gewinn für vps ist.
quelle
Sie möchten auf keinen Fall herkömmliche Methoden zum Löschen von SSDs verwenden, z. B.
dd
Daten auf Null setzen oder andere Methoden, mit denen zufällige Daten auf die Festplatte geschrieben werden. Diese Methoden eignen sich besser für platterbasierte Festplatten. Es löscht effektiv die SSD, beansprucht aber auch unnötig viele der eingeschränkten Schreibvorgänge der SSD, wodurch die erwartete Lebensdauer der SSD verkürzt wird. Das würde schnell teuer werden. Es kann auch die Leistung der SSD im Laufe der Zeit verringern.SSDs haben unterschiedliche Methoden zum sicheren Löschen. Ich werde sagen, dass es sehr umständlich zu sein scheint, weil Sie normalerweise einen bestimmten Typ von SATA-Controller benötigen, der IDE-Emulationen ausführen kann, und das Verfahren kann kompliziert sein. Einige Hersteller bieten Tools zum sicheren Löschen ihrer eigenen SSDs an. Sie können dies jedoch auch mit hdparm unter Linux tun: https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase . Sie werden jedoch in diesen Anweisungen feststellen, dass Sie sicherstellen müssen, dass das Laufwerk nicht "eingefroren" ist, bevor Sie fortfahren können. Dies ist einer der schwierigeren Schritte, da ein Motherboard und ein SATA-Controller gesucht werden müssen, mit denen Sie das Laufwerk beim Systemstart "wieder einfrieren" können. In der Regel muss das Laufwerk vom SATA-Kabel getrennt und dann wieder angeschlossen werden.
Wie auch immer, meine Empfehlung ist es, Ihre Recherche durchzuführen und eine SSD auszuwählen, die mit einem sicheren Löschdienstprogramm geliefert wird, das auf einem für Sie geeigneten System verwendet werden kann.
quelle
dd bs=1M
führt zu minimalem Verschleiß.Obwohl eine Antwort bereits akzeptiert ist, denke ich, dass der Befehl
blkdiscard /dev/sdX
hier noch erwähnenswert ist.Laut Arch Wiki: SSD löscht der
blkdiscard
Befehl alle Blöcke und alle Daten gehen verloren. Es wird empfohlen, vor "Sie möchten Ihre SSD verkaufen" zu verwenden.Ich bin nicht mit der Funktionsweise von TRIM vertraut, daher weiß ich nicht, ob eine Garantie dafür besteht, dass die Daten gelöscht werden. Aber ich denke es ist besser als nichts zu tun.
Übrigens, ich fürchte, dieser Befehl funktioniert nur auf einem ganzen Gerät, nicht auf einer einzelnen Partition.
Hoffe das hilft. :)
quelle
blkdiscard
scheint nicht in allen Fällen sicher zu sein, da esTRIM
sich nur um eine Anfrage handelt und nicht alle SSD-Controller dies honorieren. Hier und hier können Sie mehr darüber lesen . Wie dort erklärt, verwaltet der Linux-Kernel eine Whitelist, von der bekannt ist, dass Geräte TRIM ehren.hdparm -I /dev/theSSD
enthältDeterministic read ZEROs after TRIM
,blkdiscard
sollten schnell und garantiert Nullen nachgelesen werden. Ansonsten scheint ein sicheres Löschen die bessere Lösung zu sein. Angesichts der Frage nach der Kundensicherheit ist Secure Erase möglicherweise die bessere Lösung, da es für solche Anwendungsfälle konzipiert zu sein scheint.Die beste Methode zum Löschen von Daten aus einem Image einer virtuellen Maschine ist die Verwendung der TRIM-Funktion. Viele neuere Betriebssysteme unterstützen dies. Fast alle aktuellen SSDs unterstützen dies ebenfalls.
Und was diese Option noch besser macht, ist, dass m jedes SAN diese Funktion auch unter dem SCSI-Namen UNMAP unterstützt . Dies ist ein großartiger Befehl für SANs, die Sparse Provisioning implementieren. Dies ist eine großartige Funktion für virtuelle Maschinen, insbesondere in Kombination mit der Block-Deduplizierung.
Wenn der Befehl TRIM an eine SSD übergeben wird, markiert die Firmware diese Blöcke sofort für die erneute Verwendung. Einige SSDs geben für TRIM-Blöcke immer Nullen zurück . Andere Laufwerke geben implementierungsdefinierte (dh zufällige) Daten zurück.
Auf Betriebssystemen, die TRIM unterstützen, markiert ein einfaches Löschen der Datei die Blöcke für TRIM. Die eigentliche TRIM-Operation kann sofort ausgeführt oder für eine spätere Ausführung gestapelt werden. Manchmal gibt es Tools, die das TRIMMEN einer Datei erzwingen oder eine Partition nach allen nicht verwendeten Blöcken durchsuchen.
Die TRIM-Leistung unter Linux ist immer noch lückenhaft. Wenn Sie diese verwenden, sollten Sie Ihre Optionen untersuchen. Unter Windows scheint es ziemlich solide zu sein.
quelle
Sie benötigen ein "SSD Secure Erase Utility". Wenn Sie so etwas verwenden, kann
dd
der Abnutzungsgrad ansteigen und Sie haben Reservesektoren, die noch alte Kundendaten enthalten. Ein Dienstprogramm zum sicheren Löschen löscht alle Sektoren auf dem Gerät (nicht nur die, die dem Betriebssystem als Festplatte angezeigt werden).Einige dieser Dienstprogramme sind herstellerspezifisch. Fragen Sie den Hersteller Ihrer Laufwerke nach dessen Empfehlung. Sie werden es besser wissen als wir.
quelle
Ich glaube nicht, dass Sie durch das Schreiben von 0en verhindern können, dass andere Kunden die Festplatte lesen.
Wenn Sie auf SSDs etwas schreiben, unterscheidet sich der Vorgang stark von einer normalen Festplatte.
Stellen Sie sich folgende Situation vor: Eine "leere" Speicherzelle in einem SSD-Laufwerk ist alle mit 1s gefüllt. Wenn Sie etwas darauf schreiben, schreiben Sie die Nullen auf und lassen die Einsen unverändert.
Wenn Sie danach etwas anderes speichern möchten, werden der vorherige und der neue Inhalt verglichen. Wenn die vorherige durch Aufschreiben einiger Nullen zur neuen werden kann, ist das in Ordnung. Ist dies nicht möglich, wird eine andere Speicherzelle verwendet.
"clear": 11111111 1st save: 11011011
Neue Daten: 00110011 Es gibt keine Möglichkeit, 11011011 zu 00110011 zu machen (beachten Sie, dass es notwendig wäre, eine 0 auf 1 zu setzen, und dies ist bei SSDs nicht möglich). Es wird also eine andere Speicherzelle verwendet.
Wenn Sie ein Laufwerk TRIMMEN, setzen Sie alle nicht verwendeten Speicherzellen auf 1 zurück. Es ist also klar, dass sie wieder verwendet werden können. Und die gespeicherten Daten bleiben erhalten.
Um zu tun, was Sie wollen: Löschen Sie zuerst die Dateien. Die Speicherzellen zu diesen Dateien werden als frei markiert. Führe dann einen TRIM durch: Alle diese Speicherzellen werden zu Einsen ohne Anzeichen von Daten.
quelle
Einfach zu beantworten: Verwenden Sie Linux, um die Partition als EXT4 neu zu formatieren. Dadurch wird SSD angewiesen, dass alle Blöcke zum Löschen bereit sind, z. B. alle Sektoren einer Partition zuzuschneiden. Nebeneffekt ist eine geringe Anzahl von Schreibvorgängen (EXT4-Strukturen).
Vergessen Sie ˋddˋ mit Random, das verringert die Lebensdauer von SSDs erheblich. Einige SSDs sind intelligent und wenn sie einen vollen Sektor mit Nullen sehen, schreiben sie nicht, markieren sie ihn zum Löschen.
Da Sie Interna auf den Firmwares nicht kennen, besteht Ihre beste Option darin, die Partition als ext4 (ohne vollständige Neuformatierung, nur eine schnelle, nur Strukturen) auf einem modernen Linux-Kernel neu zu formatieren. Dadurch wird die gesamte Partition abgeschnitten vor dem Formatieren.
Für alle, die über sicheres Löschen sprechen, also für die gesamte SSD auf einmal, wird nur eine Partition der SSD abgefragt und OHNE den Rest der darauf gespeicherten Informationen zu verlieren (Partitionsebene, nicht SSD-Ebene).
Fazit: Formatieren Sie als Ext4 neu. Wenn Sie ein anderes Format benötigen, formatieren Sie es erneut in einem anderen Format.
quelle