Ik wil op een pc met Linux mijn gegevens veilig wissen. Ik wil voorkomen dat iemand anders de data van een schijf kan lezen als ik die doorgeef. Is het overschrijven van de data voldoende ervoor om te zorgen dat niemand ze kan lezen?
Het leeg maken van een opslagmedium door hem eenvoudigweg te overschrijven is een veel gevallen niet voldoende voor veilig wissen. Ssd’s hebben bijvoorbeeld een overprovisioning-ruimte die ze gebruiken voor opschoonacties. Het besturingssysteem ziet deze ruimte niet en kan daar bij het overschrijven dus geen rekening mee houden.
Bij harde schijven zijn de data in defecte sectoren niet toegankelijk. Zulke sectoren worden door de firmware eenvoudigweg vervangen door reservesectoren, waarna het besturingssysteem ze dan niet meer ziet. In beide gevallen is het vervolgens wel erg moeilijk om bij die data te komen, maar het opslagmedium is dan uiteindelijk toch niet helemaal gewist.
SATA-ssd’s en harde schijven veilig wissen doe je het beste met een speciaal daarvoor bestemd commando. Bijna elke ssd en de meeste moderne harde schijven kennen het zogeheten ATA Secure Erase. Dit proces vergt bij ssd’s vaak niet meer dan een aantal seconden, maar bij een harde schijf kan het wel enkele uren duren.
Veel ssd-fabrikanten bieden (Windows-)hulpprogramma’s met onder meer een functie voor veilig wissen. Maar het kan ook vanuit Linux of met een Linux live-cd met het commando hdparm.
Let op: doe dit niet bij schijven die via usb zijn aangesloten, om te voorkomen dat het apparaat onbruikbaar wordt.
Open een consolevenster als root en laat een lijst weergeven van alle aangesloten schijven:
hdparm -i /dev/sd?
Zoek naar het gewenste station. De opstartschijf heet meestal ‘sda’. Nu controleer je met
hdparm -I /dev/sdX
of het station vergrendeld is (security frozen). Dat zal vaak het geval zijn. Je kunt dat op twee manieren oplossen: je zet de pc in de slaapstand en maakt hem daarna meteen weer wakker of je trekt bij een ssd kort de voedingskabel los. Na het opnieuw controleren met hdparm
zou je als securityvermelding dan ‘not frozen’ moeten zien.
Stel dan het ATA-security-wachtwoord voor de schijf in op bijvoorbeeld ‘ctmagazine’ met de opdracht
hdparm --user-master u --security-setpass ctmagazine /dev/sdX
om dit vervolgens daarna samen met alle data met behulp van secure erase meteen weer te verwijderen:
hdparm --user-master u --security-erase ctmagazine /dev/sdX
Door een andere encryptiesleutel toe te passen zijn bijna zeker alle data onleesbaar geworden.
Is het gebruik maken van de tool gparted niet gebruikersvriendelijker?
Bij verwijderen van partities e.d. past Gparted voor zover bekend geen secure erase toe. Je kunt wel via een live-medium van Gparted een terminalvenster openen en bovenstaande opdrachten gebruiken. De juiste schijf kun je dan ook via Gparted bepalen.
Met mijn Ubuntu live USB moet het “–security-set-pass” en niet “–security-setpass” zijn.
“systemctl suspend” in een command shell zorgde er bij mij voor dat de schijf van “frozen” naar “not frozen” ging.
Verder werkte het allemaal perfect en snel.