AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • Início
  • system&network
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • Início
  • system&network
    • Recentes
    • Highest score
    • tags
  • Ubuntu
    • Recentes
    • Highest score
    • tags
  • Unix
    • Recentes
    • tags
  • DBA
    • Recentes
    • tags
  • Computer
    • Recentes
    • tags
  • Coding
    • Recentes
    • tags
Início / ubuntu / Perguntas / 1125246
Accepted
MPi
MPi
Asked: 2019-03-14 00:12:39 +0800 CST2019-03-14 00:12:39 +0800 CST 2019-03-14 00:12:39 +0800 CST

Como remover uma chave desconhecida do LUKS com cryptsetup?

  • 772

Minha unidade criptografada LUKS tem 3 senhas. Dois deles estão seguros (e longos), o outro está perdido. No entanto, lembro-me vagamente de que não estava à altura; foi usado durante experimentos e deveria ter sido apagado depois. Como posso me livrar dessa chave, já que não a conheço mais, mas pelo menos as outras duas?

luks
  • 2 2 respostas
  • 14727 Views

2 respostas

  • Voted
  1. Best Answer
    PerlDuck
    2019-03-14T05:16:33+08:002019-03-14T05:16:33+08:00

    A opção mágica é luksKillSlot.

    O objetivo é descobrir qual dos seus três compartimentos de chave contém a chave a ser excluída. Se você ainda não conhece, pode verificar isso tentando todas as chaves conhecidas uma após a outra e deixar que cryptsetupdiga qual chave se refere a qual slot. A chave desconhecida então se refere ao slot restante.

    Verifique quais slots são usados ​​(no meu caso, os slots 0, 1 e 2 são usados). Substitua /dev/sdb4 pelo seu dispositivo real:

    root@host:~# cryptsetup luksDump /dev/sdb4
    LUKS header information for /dev/sdb4
    ...
    Key Slot 0: ENABLED
    ...
    Key Slot 1: ENABLED
    ...
    Key Slot 2: ENABLED
    ...
    Key Slot 3: DISABLED
    Key Slot 4: DISABLED
    Key Slot 5: DISABLED
    Key Slot 6: DISABLED
    Key Slot 7: DISABLED
    

    Agora abra (= descriptografe) seu dispositivo com sua primeira chave e cryptsetupseja detalhado para mostrar qual slot foi usado para desbloquear o dispositivo:

    root@host:~# cryptsetup -v open --type luks /dev/sdb4 someAlias
    [enter one of your two known keys]
    Key slot 2 unlocked.
    Command successful.
    

    Lembre-se de qual slot (2 neste caso) a primeira chave se refere e desfaça o passo:

    root@host:~# cryptsetup close someAlias
    

    Repita com sua segunda chave conhecida:

    root@host:~# cryptsetup -v open --type luks /dev/sdb4 someAlias
    [enter the second of your two known keys]
    Key slot 0 unlocked.
    Command successful.
    root@host:~# cryptsetup close someAlias
    

    Agora você sabe que as duas chaves conhecidas referem-se ao slot 2 e ao slot 0. Portanto, o slot 1 deve ser aquele que contém a chave desconhecida. Exclua-o com:

    root@host:~# cryptsetup -v luksKillSlot /dev/sdb4 1
    Keyslot 1 is selected for deletion.
    Enter any remaining passphrase: 
    [enter one of the two known keys]
    Key slot 0 unlocked.
    Command successful.
    

    Confira:

    root@host:~# cryptsetup luksDump /dev/sdb4
    LUKS header information for /dev/sdb4
    ...
    Key Slot 0: ENABLED
    ...
    Key Slot 1: DISABLED
    Key Slot 2: ENABLED
    ...
    Key Slot 3: DISABLED
    Key Slot 4: DISABLED
    Key Slot 5: DISABLED
    Key Slot 6: DISABLED
    Key Slot 7: DISABLED
    
    • 17
  2. Wereii
    2021-08-06T06:10:14+08:002021-08-06T06:10:14+08:00

    Não posso comentar, mas para estender a resposta do @PerlDucks

    Em vez de ter que abrir/bloquear a partição para cada chave que deseja testar, você pode usar cryptsetup open(ou cryptsetup luksOpen- sintaxe antiga) com --test-passphrasesinalizador, o someAliasentão pode ser omitido.

    Exemplo:cryptsetup -v open --test-passphrase --type luks /dev/sdb4

    Trecho deman cryptsetup

    ...
    --test-passphrase
        Do not activate the device, just verify passphrase.  This option  is  only  relevant  for 
        open action (the device mapping name is not mandatory if this option is used).
    ...
    

    De acordo com o changelog cryptsetup , este sinalizador está disponível desde 2012-06-18, ou para a versão cryptsetup desde 1.5.0-rc2(isso significa que deve estar disponível para praticamente todos hoje)

    • 8

relate perguntas

Sidebar

Stats

  • Perguntas 205573
  • respostas 270741
  • best respostas 135370
  • utilizador 68524
  • Highest score
  • respostas
  • Marko Smith

    Existe um comando para listar todos os usuários? Também para adicionar, excluir, modificar usuários, no terminal?

    • 9 respostas
  • Marko Smith

    Como excluir um diretório não vazio no Terminal?

    • 4 respostas
  • Marko Smith

    Como descompactar um arquivo zip do Terminal?

    • 9 respostas
  • Marko Smith

    Como instalo um arquivo .deb por meio da linha de comando?

    • 11 respostas
  • Marko Smith

    Como instalo um arquivo .tar.gz (ou .tar.bz2)?

    • 14 respostas
  • Marko Smith

    Como listar todos os pacotes instalados

    • 24 respostas
  • Martin Hope
    Flimm Como posso usar o docker sem sudo? 2014-06-07 00:17:43 +0800 CST
  • Martin Hope
    led-Zepp Como faço para salvar a saída do terminal em um arquivo? 2014-02-15 11:49:07 +0800 CST
  • Martin Hope
    ubuntu-nerd Como descompactar um arquivo zip do Terminal? 2011-12-11 20:37:54 +0800 CST
  • Martin Hope
    TheXed Como instalo um arquivo .deb por meio da linha de comando? 2011-05-07 09:40:28 +0800 CST
  • Martin Hope
    Ivan Como listar todos os pacotes instalados 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    David Barry Como determino o tamanho total de um diretório (pasta) na linha de comando? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher "Os seguintes pacotes foram retidos:" Por que e como resolvo isso? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford Como os PPAs podem ser removidos? 2010-07-30 01:09:42 +0800 CST

Hot tag

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • Início
  • Perguntas
    • Recentes
    • Highest score
  • tag
  • help

Footer

AskOverflow.Dev

About Us

  • About Us
  • Contact Us

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve