Hospedamos VPS para clientes. Cada VPS de cliente recebe um LVM LV em um disco rígido de eixo padrão. Se o cliente sair, zeramos esse LV, garantindo que seus dados não vazem para outros clientes.
Estamos pensando em usar SSDs para o nosso negócio de hospedagem. Dado que os SSDs possuem a tecnologia "nivelamento de desgaste", isso torna o zeramento inútil? Isso inviabiliza essa idéia de SSD, já que não podemos permitir que os dados do cliente vazem para outro cliente?
fonte
Nunca coloque um SSD em zero. No mínimo, isso desgastará parte da vida útil da gravação do SSD com pouco ou nenhum benefício. No pior cenário extremo, você pode colocar o controlador do SSD em um estado de desempenho reduzido (temporariamente) .
A partir desta fonte :
Sua melhor opção, apagar com segurança por meio de criptografia de disco completa:
Alguns SSDs modernos podem usar criptografia de disco completo - exemplos são os novos 320 drives da Intel e alguns da série Sandforce 2200. Essas unidades podem ser apagadas com segurança de maneira simples e rápida, sem nenhum desgaste da unidade. A unidade usa criptografia AES para todos os dados gravados; portanto, uma exclusão segura significa simplesmente excluir a chave AES antiga e substituí-la por uma nova. Isso efetivamente torna irrecuperáveis todos os dados 'antigos' da unidade.
No entanto, a exclusão segura da Intel não é fácil de automatizar. AFAIK deve ser feito a partir do aplicativo GUI para Windows da Intel, só pode ser executado em uma unidade sem inicialização vazia e assim por diante. Consulte a página 21 e seguintes na documentação do Intels.
Sua outra opção, apagamento seguro do ATA:
Outra opção é emitir um comando ATA Secure Erase via fx HDPARM no Linux. Isso será muito mais fácil de automatizar via script.
Desde que a unidade implemente o ATA Secure Erase de uma maneira 'boa', é de se esperar que ela exclua pelo menos a "camada de conversão de flash" (FTL). A tabela FTL mantém o mapeamento entre os setores lógicos (que o sistema operacional 'vê') e as páginas físicas da NVRAM na própria unidade. Com essa tabela de mapeamento destruída, deve ser muito difícil - mas provavelmente não impossível - recuperar dados da unidade.
No entanto, não conheço nenhum estudo que demonstre que o ATA Secure Erase seja consistente e bem implementado em todas as unidades do fabricante, por isso hesito em dizer que sempre funcionará - você deve ler a documentação técnica do fabricante.
Para uma única partição:
Enquanto leio os comentários para outras respostas, parece que o OP quer apagar com segurança apenas partições únicas. Uma boa maneira de fazer isso seria criar apenas volumes criptografados , por exemplo, usando LUKS ou TrueCrypt . Dessa forma, você pode apagar com segurança o volume descartando a chave de criptografia, semelhante ao que o esquema de criptografia de disco completo na unidade faz.
Conclusão:
Se você realmente quer saber, leia o artigo vinculado ao blog da Sophos e leia as notas técnicas dos fabricantes de unidades relacionadas à exclusão segura. No entanto, se você deseja uma exclusão segura 'boa', um SSD com criptografia completa do disco e uma limpeza e substituição segura das chaves de criptografia provavelmente é a melhor opção. Como alternativa, use a criptografia no nível do sistema operacional e jogue fora a chave quando desejar que os dados sejam apagados com segurança.
fonte
O nivelamento de desgaste não tem nada a ver com zerar os dados.
Você zera os dados para impedir que outras pessoas / aplicativos leiam esses dados. Os SSDs 'nivelam o desgaste' de seus dados para garantir que permaneçam utilizáveis por mais tempo devido ao 'dano' causado pela gravação nos SSDs. Os discos também costumam fazer isso quando não estão ocupados; em situações de servidor, os momentos de silêncio nem sempre estão disponíveis; portanto, esse trabalho geralmente não é realizado.
Você cobra seus clientes por suas operações de E / S? Se não, o que os impede basicamente de matar sua parte de um SSD em horas / dias, escrevendo constantemente o tempo todo? Os SSDs são um pouco mais fáceis de matar do que a maioria das pessoas pensaria , especialmente em ambientes pesados de gravação.
fonte
if (time < 9am) chriss_try_again()
Portanto, vale a pena ler artigos como este . Se alguém tiver acesso físico ao disco, é mais fácil recuperar informações. Você já pensou em criptografar os dados no SSD e, em seguida, tudo o que você precisa fazer é esquecer com segurança a chave privada, que deve ser um problema mais fácil. Eu vejo o SSD sendo uma grande vitória nos vps devido ao desempenho de acesso aleatório muito melhor.
fonte
Você definitivamente não deseja usar métodos tradicionais de exclusão de SSDs, como
dd
zerar dados ou outros métodos que gravam dados aleatórios no disco. Esses métodos são mais adequados para discos baseados em prato. É eficaz para apagar o SSD, mas também utilizará desnecessariamente muitas operações limitadas de gravação do SSD, diminuindo assim a vida útil esperada do SSD. Isso ficaria caro rapidamente. Também pode diminuir o desempenho do SSD ao longo do tempo.Os SSDs têm métodos diferentes para apagar com segurança. Eu direi que parece ser muito complicado de fazer, porque geralmente você precisa de um certo tipo de controlador SATA que possa executar a emulação IDE, e o procedimento pode ser complicado. Alguns fabricantes fornecem ferramentas para apagar com segurança seus próprios SSDs, mas você também pode fazê-lo com o hdparm no Linux: https://ata.wiki.kernel.org/index.php/ATA_Secure_Erase . Mas você notará nessas instruções que precisa garantir que a unidade não esteja "congelada" antes de prosseguir. Essa é uma das etapas mais difíceis, pois exige encontrar uma placa-mãe e um controlador SATA que permitam "descongelar" a unidade enquanto o sistema é inicializado, o que geralmente envolve desconectá-la do cabo SATA e conectá-la novamente.
De qualquer forma, minha recomendação é fazer sua pesquisa e escolher um SSD que vem com um utilitário de apagamento seguro que pode ser usado em um sistema conveniente para você.
fonte
dd bs=1M
resultará em desgaste mínimo.Embora uma resposta já seja aceita, acho que
blkdiscard /dev/sdX
vale a pena mencionar o comando aqui.De acordo com o Arch Wiki: SSD , o
blkdiscard
comando descartará todos os blocos e todos os dados serão perdidos. É recomendável usar antes de "você deseja vender seu SSD".Não estou familiarizado com o funcionamento do TRIM, por isso não sei se há garantia de que os dados serão apagados. Mas acho melhor do que não fazer nada.
BTW, receio que este comando funcione apenas em um dispositivo inteiro, não em uma única partição.
Espero que isto ajude. :)
fonte
blkdiscard
parece não ser seguro em todos os casos, porque emTRIM
si é apenas uma solicitação e nem todos os controladores SSD a respeitam. Você pode ler mais sobre isso aqui e aqui . Mas, como explicado lá, o kernel do Linux mantém uma lista branca de quais dispositivos são conhecidos por honrar o TRIM.hdparm -I /dev/theSSD
contiverDeterministic read ZEROs after TRIM
,blkdiscard
deve haver zeros rápidos e garantidos sendo lidos posteriormente. Caso contrário, um apagamento seguro parece ser a melhor solução. No entanto, considerando que a pergunta é sobre segurança do cliente, o Secure Erase pode ser a melhor solução, pois parece projetado para esses casos de uso.A melhor maneira de limpar dados de uma imagem de máquina virtual é usar o recurso TRIM. Muitos sistemas operacionais mais novos suportam isso. Quase todos os SSDs atuais também são compatíveis.
E o que torna essa opção ainda melhor é que m qualquer SAN também suporta esse recurso com o nome SCSI de UNMAP . É um ótimo comando para SANs que implementam provisionamento esparso, que é um ótimo recurso para máquinas virtuais, especialmente quando combinadas com a desduplicação de bloco.
Quando o comando TRIM é dado a um SSD, o firmware marca imediatamente esses blocos livres para reutilização. Alguns SSDs sempre retornam zeros para blocos TRIM'd . Outras unidades retornarão dados definidos pela implementação (ou seja, aleatórios).
Nos sistemas operacionais que suportam TRIM, uma simples exclusão do arquivo marcará os blocos do TRIM. A operação TRIM real pode ocorrer imediatamente ou pode ser agrupada em lotes para ser executada mais tarde. Às vezes, existem ferramentas que forçam a TRIM de um arquivo ou a varrer uma partição em busca de todos os blocos não utilizados.
O desempenho do TRIM no Linux ainda é fraco, portanto, se você estiver usando isso, desejará investigar suas opções. No Windows, parece bastante sólido.
fonte
Você precisa de um "SSD Secure Erase Utility". Se você usar algo como
dd
o nivelamento de desgaste, poderá surgir e você acabará com setores de reserva que ainda contêm dados antigos do cliente. Um utilitário de exclusão segura apaga todos os setores do dispositivo (não apenas aqueles apresentados como um disco no sistema operacional).Alguns desses utilitários são específicos de um fabricante específico. Peça ao fabricante de sua unidade (s) sua recomendação, eles saberão melhor que nós.
fonte
Eu não acho que escrever 0s o ajudará a impedir que outro cliente leia o disco.
Nos SSDs, quando você escreve algo, o processo é muito diferente de um disco rígido normal.
Imagine a seguinte situação: uma célula de memória "vazia" em uma unidade SSD é preenchida com 1s. Quando você escreve algo, anote os 0s e deixe os 1s inalterados.
Depois, quando você quiser salvar algo diferente, o conteúdo anterior e o novo serão comparados. Se o anterior puder se tornar o novo anotando alguns 0s, ok. Se não for possível, outra célula de memória é usada.
"limpar": 11111111 1º salvamento: 11011011
novos dados: 00110011 não há como fazer com que 11011011 se torne 00110011 (observe que seria necessário virar um de 0 para 1, e não é possível fazer isso em SSDs). Portanto, outra célula de memória será usada.
Ao TRIMAR uma unidade, você redefine todas as células de memória não utilizadas para 1. Portanto, elas ficarão claras para serem usadas novamente. E os dados salvos são preservados.
Para fazer o que você deseja: primeiro, apague (exclua) os arquivos. As células de memória desses arquivos serão marcadas como livres. Então faça um TRIM: todas essas células de memória se tornarão 1s, sem nenhum sinal de dados.
fonte
Fácil de responder: use o Linux para reformatar a partição como EXT4, que informa ao SSD que todos os blocos estão prontos para serem apagados, como ajustar todos os setores de uma partição. O efeito colateral é um pequeno número de gravações (estruturas EXT4).
Esqueça ˋddˋ aleatoriamente, isso reduzirá muito a vida útil do SSD. Alguns SSD são inteligentes e, se virem um setor cheio de zeros que não escrevem, marcam para apagar.
Como você não pode conhecer os componentes internos dos firmwares, sua melhor opção é reformatar a partição como ext4 (sem reformatar totalmente, apenas uma rápida, apenas estruturas) em um kernel Linux moderno, ele fará um ajuste em toda a partição antes de formatá-lo.
Para todos aqueles que falam sobre apagamento seguro, ou seja, para o SSD inteiro de uma só vez, o que é solicitado é apenas uma partição do SSD e SEM perder o restante das informações armazenadas nele (no nível da partição, não no nível do SSD).
Conclusão: reformate como Ext4; se você precisar de outro formato, reformate novamente em outro formato.
fonte