como faço para limpar um servidor ao qual não tenho acesso físico?

11

Eu tenho um servidor dedicado Godaddy que gostaria de cancelar. Antes de fazer isso, gostaria de fazer um formato limpo no servidor para garantir que a próxima pessoa que obtém o servidor não consiga recuperar nada (não sei o quão completo o Godaddy é quando se trata de reformatar antes dando o disco para outra pessoa.)

É claro que não tenho acesso físico à máquina, então, o que quer que eu faça, tenho que fazer via ssh. Não tenho muita certeza do que posso fazer.

HappyEngineer
fonte
1
Você tem um console da web onde é possível recriar um sistema operacional básico, certo? Se você tem isso, fazê-lo dessa forma, que irá apagar todas as informações de criar um ambiente limpo e básico OS
Luciano Facchinelli
Há um par de perguntas semelhantes sobre ServerFault: serverfault.com/questions/159401/... serverfault.com/questions/122838/sensitive-data-deletion-remote
Anton Strogonoff

Respostas:

11

A maneira mais simples de fazer isso seria sobrescrever a unidade inteira com zeros.

 dd if=/dev/zero of=/dev/sdX bs=1M

Apenas saiba que depois de executar isso, não há como voltar atrás. Assim que o comando terminar, e você voltar ao prompt do shell, nada funcionará e a caixa ficará extremamente infeliz.
Também pode ser mais seguro contextualizar essa operação fazendo

dd if=/dev/zero of=/dev/sdX bs=1M &

Dessa forma, se você perder a conexão ou algo assim, o trabalho não termina no meio da limpeza da unidade.

Patrick
fonte
1
Presumo que o shred teria sido mais seguro, mas quando tentei, ele reclamou de erros de entrada / saída e argumentos inválidos. Então eu apenas fiz isso. É bom o suficiente para o que eu precisava. Obrigado!
HappyEngineer
2

Que parte do seu site é sensível?

Se forem apenas os dados nos arquivos, substitua-os por dados de /dev/zeroou /dev/randomuse uma ferramenta interna, como dddeve ser bem, assumindo que o sistema de arquivos não aloque novo armazenamento ao substituir um arquivo.

Se a própria estrutura de diretórios for sensível (nomes de arquivos, por exemplo), você precisará de uma solução mais completa. Estou perplexo aqui, mas você provavelmente precisará (após a substituição) excluir todos os arquivos em cada diretório e criar vários arquivos no mesmo diretório usando-os touche excluindo-os antes de excluir o diretório pai, usando um algoritmo de profundidade-primeiro. Sei que algo pode ser feito usando findisso, mas não conheço uma ferramenta pronta para fazer isso.

No seu caso, destruir os arquivos (sobrescrevendo o arquivo repetidamente com dados aleatórios) é um exagero, porque ninguém tentará recuperar seus dados desmontando a unidade física e tentando coletar dados de última geração. Não tenho certeza de que a técnica de recuperação funcione mais com unidades modernas de alta densidade; substituir dados com zeros pode ser mais que suficiente.

Mike DeSimone
fonte
0

Eu já fiz isso várias vezes com dd if=/dev/urandom of=/dev/sda

rvs
fonte
-2

Você pode tentar escrever um script que fragmente recursivamente os diretórios em que os dados confidenciais foram armazenados.

Andrew Lambert
fonte
Destruir através de um diretório não faz sentido. Destruir significa limpar o espaço não alocado em um sistema de arquivos, que por definição não está associado a nenhum diretório.
Gilles 'SO- stop be evil'
@ Gilles: Você está pensando em higienizar. A fragmentação substitui o armazenamento de um arquivo por dados aleatórios antes de liberar o armazenamento do arquivo de volta ao sistema de arquivos.
Mike DeSimone
@ Mike: Eu nunca ouvi falar de “higienização” nesse sentido (o AFAIK é usado apenas para remover informações confidenciais e reter informações não confidenciais). Destruir um arquivo é tecnicamente significativo, mas não muito útil (e os blocos realocados, arquivos excluídos, blocos parciais?). Independentemente do nome, não é isso que o solicitante procura.
Gilles 'SO- parar de ser mau'