EcryptFS - Usando, Desvendando suas Chaves e Recuperando seus Arquivos
O EcryptFS garante a segurança do seu /home do Ubuntu de uma forma bem simples, porém, caso você tenha problemas com seu S.O., pode acabar tendo uma baita dor de cabeça para decriptar os dados. Nesse artigo, explico como você pode entender um pouco mais dos passos de decriptação no EcryptFS e como você pode ter seus arquivos de volta.
Introdução
Atualmente, passei por alguns problemas com o Ubuntu e com isso foi necessário que eu extraísse todos os dados que estavam no disco.
Como o meu diretório /home estava criptografado, tive que descriptografá-lo para fazer o backup, porém, eu não tinha mais acesso aos dados através do S.O.
Resolvi criar esse procedimento, pois busquei por informações para o EcryptFS na internet, mas ainda assim surgiram algumas dúvidas durante a recuperação (principalmente a parte de qual Passphrase/Senha, eu deveria usar em cada momento), essas dúvidas estão explicadas aqui.
Procurei fazer o procedimento de forma detalhada, porém, caso ainda tenham alguma sugestão/dúvida, fiquem à vontade para deixar nos comentários! :D
Digite o comando:
sudo ecryptfs-unwrap-passphrase /media//home/.ecryptfs/user/.ecryptfs/wrapped-passphrase
Para o sudo, utilize a senha do seu usuário atual (o usuário do live-CD);
Após digitar a senha, será solicitada a Passphrase, use a senha do usuário de login (user) do perfil com os arquivos criptografados e que está tentando recuperar.
Será gerada uma chave de 32 dígitos, essa é a Passphrase que irá descriptografar seus arquivos, guarde ela.
sudo ecryptfs-add-passphrase --fnek
Quando for solicitada a Passphrase, use a chave de 32 dígitos gerada no passo anterior.
Serão gerados duas chaves de 16 dígitos cada, guarde a segunda chave (bbbbbbbbbbbbbbbb).
Saída do comando:
Inserted auth tok with sig into the user session keyring
Inserted auth tok with sig into the user session keyring
Digite o comando para montar os arquivos em modo leitura e escrita (dessa forma, você poderá movê-los para a nova unidade):
sudo mount -t ecryptfs -rw /media//home/.ecryptfs/user/.Private/ /media//diretorio_recuperados
Quando solicitada a Passphrase, digite a Passphrase de 32 dígitos gerada no Passo 1.
Nesse momento, serão necessárias respostas à algumas questões, utilize as respostas à seguir:
Select cipher:
1) aes: blocksize = 16; min keysize = 16; max keysize = 32
2) blowfish: blocksize = 8; min keysize = 16; max keysize = 56
3) des3_ede: blocksize = 8; min keysize = 24; max keysize = 24
4) twofish: blocksize = 16; min keysize = 16; max keysize = 32
5) cast6: blocksize = 16; min keysize = 16; max keysize = 32
6) cast5: blocksize = 8; min keysize = 5; max keysize = 16
Selection : aes
Utilize a resposta padrão.
Select key bytes:
1) 16
2) 32
3) 24
Selection : 16
Utilize a resposta padrão.
Enable plaintext passthrough (y/n) : n
Utilize a resposta padrão.
Enable filename encryption (y/n) : y
Utilize y ao invés da proposta padrão.
Filename Encryption Key (FNEK) Signature : bbbbbbbbbbbbbbbb
Utilize a chave de 16 dígitos "bbbbbbbbbbbbbbbb" gerada no Passo 2, ao invés da chave sugerida.
Attempting to mount with the following options:
ecryptfs_unlink_sigs
ecryptfs_fnek_sig=bbbbbbbbbbbbbbbb
ecryptfs_key_bytes=16
ecryptfs_cipher=aes
ecryptfs_sig=aaaaaaaaaaaaaaaa
Mounted eCryptfs
Os arquivos serão montados no diretório /media//diretorio_recuperados e agora Você tem seus arquivos disponíveis. :)
Como o meu diretório /home estava criptografado, tive que descriptografá-lo para fazer o backup, porém, eu não tinha mais acesso aos dados através do S.O.
Resolvi criar esse procedimento, pois busquei por informações para o EcryptFS na internet, mas ainda assim surgiram algumas dúvidas durante a recuperação (principalmente a parte de qual Passphrase/Senha, eu deveria usar em cada momento), essas dúvidas estão explicadas aqui.
Procurei fazer o procedimento de forma detalhada, porém, caso ainda tenham alguma sugestão/dúvida, fiquem à vontade para deixar nos comentários! :D
Observações iniciais
- Você precisará subir um live-CD no computador com o disco encriptado. Confirme se o live-CD possui o ecryptfs instalado;
- Você precisará de um disco externo para copiar/mover os arquivos decriptados;
- wrapped-passphrase - é o arquivo onde está localizada sua Passphrase de criptografia/decriptografia dos seus arquivos (***NUNCA EXCLUA ESSE ARQUIVO, OU VOCÊ NÃO PODERÁ MAIS RECUPERAR SEUS DADOS***). Essa Passphrase tem 32 dígitos e é algo semelhante a 01df432d41023d300d4f0421dfq43af1 (obviamente, essa não é minha Passphrase);
- O disco onde estão as informações que você precisa recuperar;
- O disco para onde Você irá transferir os arquivos recuperados;
- /diretório_recuperados/ - esse diretório deve ser criado no antes de montar os arquivos encriptados;
- user - esse é seu usuário que tem o /home encriptada.
Passo 1: Passos para a recuperação - Obtendo a wrapped-passphrase
Inicie o live-CD e monte-o, não precisa acessar o disco.Digite o comando:
sudo ecryptfs-unwrap-passphrase /media//home/.ecryptfs/user/.ecryptfs/wrapped-passphrase
Para o sudo, utilize a senha do seu usuário atual (o usuário do live-CD);
Após digitar a senha, será solicitada a Passphrase, use a senha do usuário de login (user) do perfil com os arquivos criptografados e que está tentando recuperar.
Será gerada uma chave de 32 dígitos, essa é a Passphrase que irá descriptografar seus arquivos, guarde ela.
Passo 2: Passos para a recuperação - Obtendo a chave FNEK
Digite o comando:sudo ecryptfs-add-passphrase --fnek
Quando for solicitada a Passphrase, use a chave de 32 dígitos gerada no passo anterior.
Serão gerados duas chaves de 16 dígitos cada, guarde a segunda chave (bbbbbbbbbbbbbbbb).
Saída do comando:
Inserted auth tok with sig into the user session keyring
Inserted auth tok with sig into the user session keyring
Passo 3: Passos para a recuperação - Montando o /home e recuperando seus arquivos
Finalmente, vamos recuperar os arquivos. Vamos montar o diretório para que possamos copiar os arquivos e/ou movê-losDigite o comando para montar os arquivos em modo leitura e escrita (dessa forma, você poderá movê-los para a nova unidade):
sudo mount -t ecryptfs -rw /media//home/.ecryptfs/user/.Private/ /media//diretorio_recuperados
Quando solicitada a Passphrase, digite a Passphrase de 32 dígitos gerada no Passo 1.
Nesse momento, serão necessárias respostas à algumas questões, utilize as respostas à seguir:
Select cipher:
1) aes: blocksize = 16; min keysize = 16; max keysize = 32
2) blowfish: blocksize = 8; min keysize = 16; max keysize = 56
3) des3_ede: blocksize = 8; min keysize = 24; max keysize = 24
4) twofish: blocksize = 16; min keysize = 16; max keysize = 32
5) cast6: blocksize = 16; min keysize = 16; max keysize = 32
6) cast5: blocksize = 8; min keysize = 5; max keysize = 16
Selection : aes
Utilize a resposta padrão.
Select key bytes:
1) 16
2) 32
3) 24
Selection : 16
Utilize a resposta padrão.
Enable plaintext passthrough (y/n) : n
Utilize a resposta padrão.
Enable filename encryption (y/n) : y
Utilize y ao invés da proposta padrão.
Filename Encryption Key (FNEK) Signature : bbbbbbbbbbbbbbbb
Utilize a chave de 16 dígitos "bbbbbbbbbbbbbbbb" gerada no Passo 2, ao invés da chave sugerida.
Attempting to mount with the following options:
ecryptfs_unlink_sigs
ecryptfs_fnek_sig=bbbbbbbbbbbbbbbb
ecryptfs_key_bytes=16
ecryptfs_cipher=aes
ecryptfs_sig=aaaaaaaaaaaaaaaa
Mounted eCryptfs
Os arquivos serão montados no diretório /media//diretorio_recuperados e agora Você tem seus arquivos disponíveis. :)
Legal cara.
___________________________________________________________