Automaticando o sistema de arquivos criptografados (usando chave aleatória), residindo no arquivo regular sob o CentOS 6. *

3

Tarefa: no sistema CentOS 6.x, configure e monte automaticamente um sistema de arquivos criptografado, residente em um arquivo regular, usando uma chave única (aleatória).

/ etc / crypttab no CentOS 6. * não permite usar arquivos simples como dispositivo de bloco para montar e mapear automaticamente.

Então, a linha / etc / crypttab assim

cfs   /var/file-with-encrypted-filesystem    some-password-source

é ignorado no CentOS.

A seguinte seqüência de comandos pode ser usada para executar a tarefa no CentOS:

losetup /dev/loop0 /var/tmpfile
dd if=/dev/urandom of=/dev/shm/tmppass bs=512 count=1
cryptsetup luksFormat /dev/loop0 --use-urandom --batch-mode --key-file /dev/shm/tmppass
cryptsetup luksOpen /dev/loop0 ctmp --batch-mode --key-file /dev/shm/tmppass
mkfs.ext2 /dev/mapper/ctmp
mount -t ext2 /dev/mapper/ctmp /mountpoint
shred -n 1 /dev/shm/tmppass
rm -f /dev/shm/tmppass

assumindo que o arquivo para manter o sistema de arquivos é / var / tmpfile

Existe uma maneira menos complicada de conseguir o mesmo do modo Debian (especificando entradas relevantes em / etc / crypttab e / etec / fstab)?

    
por Konstantin Boyandin 11.09.2013 / 07:13

1 resposta

3

A seguinte entrada / etc / crypttab é como você faria no Ubuntu:

# <target name>  <source device>                      <key file>    <options>
cfs              /var/file-with-encrypted-filesystem  /dev/urandom  tmp=ext4

Muito parecido com o modo como o crypted swap é tratado - veja o exemplo da página de manual crypttab abaixo:

# Encrypted swap device
cswap /dev/sda6 /dev/urandom cipher=aes-cbc-essiv:sha256,hash=ripemd160,size=256,swap

A página man do CentOS para o crypttab fornece alguma orientação sobre como fazer isso? Não há uma máquina do CentOS no momento, mas em uma máquina do RHEL 6, as mesmas opções são suportadas.

OK, bem, eu estava curioso. Isso funciona e é um pouco melhor. Coloque em algum lugar como /etc/rc.local . Testado na RH 6:

LODEV=$(losetup -f)
losetup $LODEV /path/to/existing/cryptfile
cryptsetup create cfs $LODEV --key-file /dev/urandom
mkfs.ext2 /dev/mapper/cfs 
mount /dev/mapper/cfs /wherever
    
por 11.09.2013 / 07:51