Especifica a cifra de criptografia a ser usada durante a instalação?

1

Acabei de passar pelo processo de instalação especificando "fazer outra coisa", escolhi minha partição para usar como um contêiner criptografado e finalmente usei esse contêiner para ser formatado com um sistema de arquivos. Eu não vi uma opção para usar a cifra de minha escolha e observei que o padrão parece ser sha256 .

Existe uma maneira de dizer o que eu quero usar?

Editar: isso estava usando a iso da área de trabalho 16.10.

Edit2: tendo em conta a tabela de exemplo do AlexP, pensei em listar os padrões atuais depois de passar pelo instalador do Ubuntu, conforme descrito acima.

Edit3: complementando com o que eu acho que mostra que recomendações do Arch e os padrões do Ubuntu talvez não sejam diferentes.

A única coisa que se destaca é o deslocamento da carga e anedoticamente eu percebo que a unidade do ubuntu abre mais rápido. Eu acho que isso pode ser por causa da opção --iter-time . O padrão é 2000 (milissegundos) e eu teria especificado 5000 manualmente. Isto é quanto tempo se agita antes de chegar ao hash final se eu entendi corretamente. Toda vez que você desbloquear, você tem que fazer isso novamente para obter o hash de senha correta (correto se errado). Fora isso, as coisas são idênticas.

### ubuntu default
$ sudo cryptsetup luksDump

Version:        1
Cipher name:    aes
Cipher mode:    xts-plain64
Hash spec:      sha256
Payload offset: 4096
MK bits:        512

### arch recommendation
$ sudo cryptsetup luksDump

Version:        1
Cipher name:    aes
Cipher mode:    xts-plain64
Hash spec:      sha256
Payload offset: 65535
MK bits:        512


### ubuntu default
$ sudo cryptsetup status /dev/mapper/ubuntu

  type:    LUKS1
  cipher:  aes-xts-plain64
  keysize: 512 bits
  device:  /dev/sdb2
  offset:  4096 sectors
  size:    487393280 sectors
  mode:    read/write

### arch recommendation
$ sudo cryptsetup status /dev/mapper/arch

  type:    LUKS1
  cipher:  aes-xts-plain64
  keysize: 512 bits
  device:  /dev/sda2
  offset:  65535 sectors
  size:    233262018 sectors
    
por Hendy 11.02.2017 / 05:57

1 resposta

3

A codificação padrão é aes-xts-plain64 com chave de 256 bits e somas de verificação SHA-1. Este é um bom padrão. Um padrão muito bom. A menos que você seja um criptógrafo qualificado, você deve deixá-lo como está. Pessoas com conhecimento escolheram esse padrão depois de gastar muito tempo e esforço.

Para descobrir qual código é usado para seu contêiner criptografado, use o comando sudo cryptsetup status e sudo cryptsetup luksDump . Por exemplo:

$ sudo lsblk
NAME                  MAJ:MIN RM  SIZE RO TYPE  MOUNTPOINT
sda                     8:0    0   40G  0 disk  
├─sda1                  8:1    0  284M  0 part  /boot
└─sda2                  8:2    0 39.7G  0 part  
  └─Machinia          252:0    0 39.7G  0 crypt 
    ├─Machinia-Swap   252:1    0  1.2G  0 lvm   [SWAP]
    ├─Machinia-Home   252:2    0  9.5G  0 lvm   /home
    ├─Machinia-System 252:3    0   20G  0 lvm   /
    └─Machinia-Srv    252:4    0    6G  0 lvm   /srv
sr0                    11:0    1 1024M  0 rom   

$ sudo cryptsetup status Machinia
/dev/mapper/Machinia is active and is in use.
  type:    LUKS1
  cipher:  aes-xts-plain64
  keysize: 256 bits
  device:  /dev/sda2
  offset:  4096 sectors
  size:    83298304 sectors
  mode:    read/write
  flags:   discards

$ sudo cryptsetup luksDump /dev/sda2
LUKS header information for /dev/sda2

Version:        1
Cipher name:    aes
Cipher mode:    xts-plain64
Hash spec:      sha1
Payload offset: 4096
...

Dito isto, você absolutamente quer especificar outra cifra, você pode. O processo básico é bem descrito pelo pessoal do ArchLinux em Criptografando um sistema inteiro . Faça da seguinte maneira:

  1. Inicialize a partir do meio de instalação.

  2. Escolha "Experimentar o Ubuntu".

  3. Abra um terminal.

  4. Usando fdisk , parted ou o Gparted gráfico, crie sua partição /boot manualmente. (Isso pressupõe que você esteja usando um disco particionado por MBR. Se você estiver usando um disco formatado por GPT, deverá também criar uma partição do Sistema EFI.)

  5. Crie sua partição para ser criptografada manualmente. Digamos que isso seja /dev/sda2 .

  6. Formate-o como um contêiner LUKS. Aqui é onde você especifica a cifra:

    sudo cryptsetup luksFormat /dev/sda2 --cipher=<cipherspec> --keysize=<size>
    

    Por exemplo,

    sudo crypsetup luksFormat /dev/sda2 --cipher=aes-cbc-essiv:sha256 --keysize=512
    

    Deixe-me repetir que, a menos que você tenha um conhecimento criptográfico profissional, não deve fazer isso. Mas vamos continuar.

  7. Abra sua partição criptografada e atribua a ela um nome de contêiner:

    sudo cryptsetup luksOpen /dev/sda2 <name>
    

    Para um sistema de computador "animal de estimação", uma boa opção é usar o nome do host com um capital inicial. Por exemplo, se você planeja usar o nome do host machinia ,

    sudo cryptsetup luksOpen /dev/sda2 Machinia
    
  8. Formate /dev/mapper/Machinia (ou qualquer nome que você escolheu na etapa 7) como um volume físico LVM:

    sudo pvcreate /dev/mapper/Machinia # Use the name chosen in step 7
    
  9. Crie um grupo de volumes LVM no volume físico:

    sudo vgcreate Machinia /dev/mapper/Machinia # Use the name chosen in step 7
    
  10. Crie volumes lógicos para / , /home , /srv , /var , swap etc. no grupo de volumes LVM. Você deve criar pelo menos um volume lógico para / . Um volume separado para /home é opcional, mas recomendado. Criar volumes separados para /var , swap e assim por diante é opcional e depende dos seus planos.

    sudo lvcreate -L 20g -n System Machinia # /
    sudo lvcreate -L 3g  -n Swap   Machinia # swap
    sudo lvcreate -L 10g -n Home   Machinia # /home
    

    Você pode querer deixar algum espaço não alocado, para poder usar os instantâneos do LVM. Sua escolha.

  11. Agora execute o instalador e instale o Ubuntu escolhendo "Something else" e selecionando /dev/sda1 (ou o que for) para /boot , /dev/mapper/Machinia-System (usando os nomes escolhidos, é claro) para / , /dev/mapper/Machinia-Swap para espaço de troca, /dev/mapper/Machinia-Home para /home .

    Use a partição feita na etapa 4 para /boot e os volumes lógicos criados na etapa 10 para / , swap, /home etc.

    Se você estiver usando um disco particionado por MBR verifique novamente e certifique-se de que o GRUB deve ser instalado no disco físico, /dev/sda (ou o que for adequado para o seu sistema).

  12. Deixe o instalador prosseguir até o final. Quando terminar, escolha "Continuar teste" e volte ao seu terminal.

  13. Monte seu futuro volume raiz em /target , monte diretórios especiais e, em seguida, chroot em /target :

    sudo mount /dev/mapper/Machinia-System /target
    for d in dev proc run sys; do sudo mount --bind /$d /target/$d; done
    chroot /target
    
  14. Você está agora no seu volume raiz do futuro. Vá para /etc e edite /etc/crypttab :

    cd /etc
    echo Machinia UUID=$(cryptsetup luksUUID /dev/sda2) none luks,discard >crypttab
    

    /etc/crypttab deve ser assim:

    # cat /etc/crypttab
    Machinia UUID=016193a0-8a79-416c-95f3-c94bd3745c5c none luks,discard
    

    (Com o seu nome escolhido em vez de Machinia, e o UUID retornado por cryptsetup luksUUID .)

  15. Atualize o sistema de arquivos raiz inicial e o GRUB:

    update-initramfs
    update-grub
    
  16. Saia do chroot :

    exit
    
  17. Desmonte o que você montou na etapa 13:

    for d in dev proc run sys; do sudo umount /target/$d; done
    umount /target
    
  18. Reinicie e espere pelo melhor.

por AlexP 11.02.2017 / 08:52