Como parar de usar a criptografia de diretório inicial interna?

106

Eu tenho uma nova instalação do Ubuntu 10.04 com diretório inicial criptografado (usando a criptografia interna oferecida pelo instalador do Ubuntu).

Qual é a maneira mais fácil de parar de usar criptografia? (Ou seja, para descriptografar meu diretório pessoal permanentemente.)

(Isso está me dando problemas com as atualizações do kernel, e eu gostaria de reduzir todos os problemas que estou tendo com esta instalação.)

Jonik
fonte

Respostas:

76

Pesquisando, encontrei este post :

Não para trazer um thread antigo, mas no caso de alguém ter erros ao tentar seguir estas instruções, aqui está o que eu fiz.

  1. Faça backup do diretório inicial enquanto estiver conectado sudo cp -rp /home/user /home/user.backup

    1.1 Verifique se o seu backup doméstico tem tudo !!!

  2. reinicie no root via grub
  3. Exclua seu diretório pessoal rm -rf /home/user
  4. Remova os pacotes apt-get remove ecryptfs-utils libecryptfs0
  5. Restaure seu diretório pessoal mv /home/user.backup /home/user
  6. reiniciar
  7. Remova qualquer uma dessas .Private .ecryptfspastasrm -rf ~/.Private rm -rf ~/.ecryptfs
  8. Yay!
Isso funcionou para mim. As permissões de arquivo da pasta base permanecem intactas e não causam problemas no Dropbox ou nos repositórios git. Por alguma razão, minha nova instalação no Ubuntu 9.10 não executaria o primeiro comando. Apenas certifique-se de pensar no processo durante o uso rm -rf. Só queria postar isso não apenas para o meu registro, mas para qualquer pessoa que encontrar problemas.

Algumas notas

  • reiniciar no root via grub não era muito claro para mim; Não reinicializei, apenas mudei para o root (outra conta de usuário com sudoprivilégios funcionaria igualmente bem).
  • Antes de remover os pacotes ecryptfs-utilse libecryptfs0funcionaria, eu precisava removê-lo /home/.ecryptfs/<myusername>. (Reclamou que ecryptfs-utilsestava em uso.)

Fora isso, funcionou para mim. No entanto, está longe de ser simples, portanto, fique à vontade para postar melhores soluções!

Jonik
fonte
Aceito isso como funcionou para mim, mas como eu disse, fique à vontade para postar algo mais simples ou melhor!
Jonik
3
Isso funcionou para mim em 12.10 também. Eu também precisava excluir /home/.ecryptfs/<myusername>primeiro. Além disso, tive que remontar /no console raiz, mas acho que essa é outra história. Obrigado!
Constantinius
1
Trabalhou em 12.04 também. A única coisa é que se você alternar para root ( sudo su) em vez de "reinicializar para root via grub", ele funciona, mas você precisa sair de /home/user( cd /homepor exemplo) e emitir umount /home/userpara desmontar o diretório home antes de usar o rm -rf. Você também precisa rm -rf /home/user.backup/.ecryptfsantes de remover os 2 pacotes.
laurent
3
+1 Isso é mais fácil de fazer com o SSH, sem o GRUB para lidar ou tentar evitar qualquer montagem. Apenas tenha cuidado ao excluir /home/.ecryptfs. Aparentemente, ele tem um link simbólico apontando para / home / nome de usuário. Perdi todos os meus dados.
Htip
2
Para a etapa 1, se você receber um erro: /home/<username>/.gvfs: Cannot stat: Permission deniedsempre poderá usar o rsync:rsync -avz --exclude '*.gvfs' /home/<username> /home/<username>.backup
tir38
40

Aqui está você, espero que isso ajude (consulte ecryptfs-setup-private(1)):

$ ecryptfs-setup-private --undo

A saída afirma:

Caso você deseje remover a configuração do Diretório Privado do eCryptfs, será necessário executar com muito cuidado as seguintes ações manualmente:

  1. Obtenha seu ponto de montagem do diretório privado

    $ PRIVATE=`cat ~/.ecryptfs/Private.mnt 2>/dev/null || echo $HOME/Private`
    
  2. Verifique se você moveu todos os dados relevantes para fora do seu $PRIVATEdiretório

  3. Desmonte seu diretório privado criptografado

    $ ecryptfs-umount-private
    
  4. Torne seu diretório privado gravável novamente

    $ chmod 700 $PRIVATE
    
  5. Remover $PRIVATE, ~/.Private,~/.ecryptfs

    Nota: ISTO É MUITO PERMANENTE, TENHA MUITO CUIDADO

    $ rm -rf $PRIVATE ~/.Private ~/.ecryptfs
    
  6. Desinstale os utilitários (isso é específico à sua distribuição Linux)

    $ sudo apt-get remove ecryptfs-utils libecryptfs0
    
zuzust
fonte
Obrigado. Já o resolvi, mas acho que isso é útil para outros.
Jonik
@ Jonik Você conseguiu fazer login .ecryptfs/jonik/.Privatecorretamente após a atualização do kernel ou fez o backup e desfez a criptografia?
Isomorphismes
3
Isso se aplica apenas a um diretório criptografado "~ / Privado" e não a um diretório inicial criptografado, conforme o OP afirmou. Veja help.ubuntu.com/community/EncryptedHome para as diferenças.
Lmeurs
15

Primeira coisa a fazer: BACKUP DA SUA CASA Não posso dizer mais alto ... basicamente desfazer a criptografia é equivalente a redefinir ( rm -rf) a sua casa, que na verdade está oculta por uma montagem.

Segundo passo: saia de qualquer gerenciador de desktop e acesse um console virtual ( CTRL-ALT-F1)

Finalmente: para detalhes:

ecryptfs-setup-private --undo

Caso você deseje remover a configuração do Diretório Privado do eCryptfs, será necessário executar com muito cuidado as seguintes ações manualmente:

  1. Obtenha seu ponto de montagem do diretório privado PRIVATE= cat ~/.ecryptfs/Private.mnt 2>/dev/null || echo $HOME/Private

  2. Verifique se você moveu todos os dados relevantes para fora do seu $PRIVATEdiretório

  3. Desmonte seu diretório privado criptografado

    ecryptfs-umount-private
    
  4. Torne seu diretório privado gravável novamente

    chmod 700 $PRIVATE
    
  5. Remover $PRIVATE, ~/.Private, ~/.ecryptfs Nota: ISSO É MUITO PERMANENTE, ter muito cuidado

      rm -rf $PRIVATE ~/.Private ~/.ecryptfs
    
  6. Desinstale os utilitários

     sudo apt-get remove ecryptfs-utils libecryptfs0
    

Eu diria que o passo 5 está um pouco errado: não há necessidade de excluir $PRIVATE, que era para mim minha casa ....

Após .Privatee .ecryptfsexcluir, basta restaurar sua casa:]

hhlp
fonte
5
E se você tiver criptografado mais da metade do espaço em disco rígido? Existe alguma saída, sem comprar outra unidade?
Isomorphismes
@hhlp Interessante que você não precisou excluir seu $ PRIVATE. Esse não é o diretório inicial do usuário? Isso significa que não é necessário excluir seu próprio diretório, exceto que um backup é sempre importante?
XavierStuvw
8

Esta etapa funcionará em um ambiente de servidor

Etapa 1: Faça backup do diretório inicial

sudo cp -rp / home / $ USER /home/$USER.backup

Etapa 2: confirmar se tudo está de backup

sudo ls -al /home/$USER.backup

Etapa 3: monte a pasta inicial, porque o programa de criptografia geralmente a monta no ponto de montagem /home/$USER, por exemplo , também conhecido como $HOME. Você pode confirmar seu ponto de montagem executando df -h $HOME. Você precisará cd /tmp(ou algum outro $HOMEdiretório) para poder desmontar$HOME

cd / tmp
sudo umount / home / $ USUÁRIO

Etapa 4: excluir a pasta inicial antiga

sudo rm -rf / home / $ USUÁRIO

Etapa 5: Remova o arquivo do programa de criptografia

sudo rm -rf /home/$USER.backup/.ecryptfs

Etapa 6: Remova os recursos de criptografia do sistema

sudo apt-get remove ecryptfs-utils libecryptfs0

Etapa 7: Restaurar a pasta inicial não criptografada de volta ao caminho original

sudo mv /home/$USER.backup / home / $ USER

Etapa 8: alterar a propriedade da pasta restaurada novamente para o usuário

sudo chown -R $ (id -u): $ (id -g) / home / $ USUÁRIO

Etapa 9: Logout / Login, para garantir que todas as coisas do usuário sejam reiniciadas corretamente (ou que ocorrerão erros enquanto você se lembra do que fez)

Erick
fonte
Brilhante. Obrigado por este guia claro e conciso. Me ajudou a sair!
James Lalor 23/03
Eu também limparam /home/.ecryptfs/$USER com sudo rm -rf /home/.ecryptfs/$USER
JimB
5

Adicionando outro guia à longa lista depois que percebi que as etapas mais intrusivas mencionadas em outros lugares não são necessárias.

Meu guia não precisa de reinicialização e eu terminei com êxito no SSH . Também deve funcionar se houver outras montagens eCryptfs na máquina.

O único requisito não óbvio é poder efetuar login como outro usuário com sudoacesso.

  1. Faça login como usuário com o diretório inicial criptografado (chamado userneste guia).

  2. Apenas para manter os caminhos nas etapas a seguir simples e simétricos:

    cd /home
    
  3. Duplique o conteúdo da pasta inicial descriptografada para outro diretório.

    sudo cp -rp user user.new
    
  4. Sair ( exitou logout). Faça login como outro sudoer.

  5. Verifique se a montagem do eCryptfs está desmontada. Não faça umountmanualmente, pode levar à perda de dados! (Eu experimentei. Eu estava tendo outra sessão SSH com o userlogin.)

    mount | grep ecryptfs
    

    A saída deve estar vazia. Ou, se houver outras montagens de eCryptfs, elas não deverão conter /home/user.

  6. Assim como o passo 2.

    cd /home
    
  7. Marque a duplicata como não sendo gerenciada com eCryptfs. (Não há necessidade de desinstalar os pacotes eCryptfs, especialmente quando existem outras montagens eCryptfs.)

    sudo rm user.new/.ecryptfs user.new/.Private
    
  8. Mova o diretório inicial não criptografado para o lugar.

    sudo mv user user.old && sudo mv user.new user
    
  9. Entre como usere verifique se tudo funciona e o eCryptfs não entra em ação.

    mount | grep ecryptfs
    
  10. Remova o conteúdo original da userpasta pessoal e os dados criptografados.

    rm -r /home/user.old
    sudo rm -r /home/.ecryptfs/user
    
Melebius
fonte
1
  • se você puder fazer backup em um armazenamento externo, faça-o. (Não é necessário diretamente, mas sempre é bom antes da manipulação do arquivo.)

  • familiarize-se com tty, pelo menos um pouco. (Pressione Ctrl Alt F7, Ctrl Alt F1etc.) Você precisará trabalhar com dois tty-s. Uma raiz e um dos seus principais usuários.

  • faça login como rootem um tty separado, crie um novo diretório inicial

    mkdir /home/user.newdir
    chown user:user /home/user.newdir
    
  • saia da sessão gráfica. Você pode reiniciar para garantir que nenhum programa esteja funcionando com o usuário normal.

  • faça o login como seu usuário normal em um tty separado, mova todos os seus arquivos para o novo destino:

    mv ~/* /home/user.newdir/
    
  • usando o roottty, renomeie os diretórios:

    mv /home/user /home/user.encfs
    mv /home/user.newdir /home/user
    
  • tudo deve funcionar agora. :) Assim que estiver pronto, retire os arquivos antigos /home/.encryptfs, /home/user.encfs, /home/user/.Private, /home/user/.encryptfs. Se desejar, você pode renomeá-los primeiro e removê-los mais tarde.

VasyaNovikov
fonte
1

Eu não usei nenhuma das respostas aqui. Em vez disso (no Ubuntu Studio 14.04):

  1. Copiei todos os arquivos que desejava manter, especialmente todos os arquivos. *, Em um diretório fora de $ HOME.
  2. Criei um novo usuário (Sistema> Usuários e Grupos) e adicionei esse usuário ao grupo sudo. Deixei a caixa "Criptografar pasta pessoal para proteger dados confidenciais" desmarcada.
  3. Efetuei logoff e logon novamente, pois o novo usuário excluiu minha conta original, verificando qual foi o primeiro UID numérico (opções avançadas), selecionando a opção para excluir os arquivos em meu $ HOME original. Isso foi concluído, mas com um "erro desconhecido". Ao fazer o check-in / em casa, vi que meu antigo $ HOME havia desaparecido
  4. Recriei minha conta de usuário original, verificando se ela foi criada com o UID numérico original, e não se esqueça de deixar a caixa "Criptografar pasta pessoal para proteger dados confidenciais" desmarcada.
  5. Excluí a nova versão praticamente vazia do meu diretório $ HOME original e renomeei meu backup de $ HOME para o meu $ HOME original e efetuei logout.
  6. Entrei na minha nova conta original e foi como se nada tivesse acontecido.
  7. Eu verifiquei / home para encontrar um diretório .ecryptfs que eu removi sem causar efeitos negativos.

Não vejo razão para que a remoção do pacote que fornece diretórios pessoais criptografados não deva ser opcional e adiei a remoção da nova conta de usuário que criei para esse fim, pois acho que pode ser útil no futuro.

Minha razão para fazer isso? O computador antigo parece estar falhando. Quando falhar, quero poder acessar o HD em outro computador sem aborrecimentos.

Richard Kandarian
fonte
1

A explicação de Jonik funciona bem. Mas, em vez da etapa 2, eu fiz:

  1. Sair
  2. Pressione Ctrl+ F4. Uma interface de linha de comando deve abrir.
  3. Entrar como root
  4. rm -rf .ecryptfs

Em vez da etapa 6: pressione Ctrl+ F7. Se a tela de login da GUI não aparecer, pressione Ctrl+ F8.

Martin Thoma
fonte
-3

Solução simples que funcionou para mim:

Você deve ter outro usuário com acesso sudo

  1. Reiniciar
  2. Na tela de login, pressione CTRL+ ALT+F1
  3. Faça login como o outro usuário (com acesso sudo)
  4. sudo rm -rf /home/youruser/.ecryptfs
  5. sudo rm /home/youruser/.Private
  6. sudo apt-get remove --purge ecryptfs-utils libecryptfs1
  7. sudo reboot
  8. Entre como seu usuário e desfrute do seu diretório pessoal sem criptografia;)
Sycu
fonte
3
Isso apagaria todas as modificações feitas depois de ativar a criptografia. Provavelmente, não há problema em um sistema instalado, mas você deve mencionar explicitamente isso.
Melebius