Como o ecryptfs foi escrito como um módulo do kernel, a "ferramenta" para fazer isso é, assim, um kernel do Linux.
Mas ainda temos que copiar os dados para o Windows ou lê-los no linux.
Felizmente, podemos usar ferramentas de automação para baixar, instalar, configurar e executar um kernel Linux no Windows com alguns comandos de shell do Windows. O Vagrant gerencia facilmente o compartilhamento de pastas entre o Windows e o Ubuntu e pode ser instalado através de alguns comandos no Windows
Antes de começarmos, se você deseja copiar seus arquivos criptografados (incluindo meta-diretórios) de uma partição ext4 para o NTFS, recomendo o Disk Internals Linux Reader , mas se você tiver conhecimento do mount
comando unix, poderá pular esta etapa (eu apenas prefira GUI's ao mount
comando)
Instale o vagrant via instalador oficial (portas com chocolate não são recomendadas)
No prompt do administrador do Windows (pressione a tecla Windows e digite o comando, clique com o botão direito do mouse em executar como administrador):
Instale chocolatey , reinicie o prompt de comando admin e digite:
choco install Cygwin cyg-get
No prompt do cygwin (pressione a tecla Windows e digite cygwin):
cyg-get install
# ASSUMING you copied all the decrypted files to windows, otherwise use mount method below
cd /cygdrive/c/<path to where encryptfs folder is located in windows>
# Either way:
vagrant init ubuntu/xenial64
vagrant up
vagrant ssh
Agora você deve estar no shell do ubuntu através de uma máquina virtual:
sudo apt update
sudo apt install ecrypt-utils tree -y
# At this point you can use mount command, or if you just have the raw files on disk:
cd /vagrant/.ecryptfs
ls
cd myusername
ls .Private
# Either way, let's decrypt
# This WILL fail the first time due a strange bug,
ecrypt-recover-private .Private
# We will start and cancel a mount to fix the bug.
# Choose defaults for everything except passphrase (just press ENTER repeatedly)
sudo mount -t ecryptfs .Private/ decrypted
# Then cancel the mount
Would you like to proceed with the mount (yes/no)? : no
# Now that we fixed the bug with a canceled mount, let's actually recover:
ecrypt-recover-private .Private
# Now that should succeed, so see your data with this
tree /tmp
Se isso falhar, verifique se você possui o arquivo de senha quebrada ( sudo updatedb && locate wrapped-passphrase
) ou insira a frase secreta quebrada no conjunto de chaves
Ainda está com problemas? Experimente o método de montagem. Você também pode brincar com o seguinte ( mais detalhes aqui ):
sudo mount -t ecryptfs /dev/mydevicehere decrypted
Observe que você pode fazer essa montagem sem ter copiado QUALQUER arquivo do ext4 para o NTFS e pular algumas etapas.
Quando você tiver êxito, se quiser que esses arquivos sejam acessíveis ao Windows, basta copiá-los para /vagrant
o cp
comando - esteja ciente de que você está duplicando dados fazendo isso.
Tudo feito? Feliz? Saia da VM do Ubuntu digitando exit
e, em seguida, desligue-a digitando vagrant halt
e remova a VM digitandovagrant destroy