GNU/Linux >> Tutoriales Linux >  >> Linux

¿Cómo configuro un archivo de intercambio cifrado en Linux?

De hecho, la página describe cómo configurar una partición, pero es similar a un archivo de intercambio:

dd if=/dev/urandom of=swapfile.crypt bs=1M count=64
loop=$(losetup -f)
losetup ${loop} swapfile.crypt
cryptsetup open --type plain --key-file /dev/urandom ${loop} swapfile
mkswap /dev/mapper/swapfile
swapon /dev/mapper/swapfile

El resultado:

# swapon -s
Filename                                Type            Size    Used    Priority
/dev/mapper/swap0                       partition       4000176 0       -1
/dev/mapper/swap1                       partition       2000084 0       -2
/dev/mapper/swapfile                    partition       65528   0       -3

swap0 y swap1 son particiones reales.


¡Esta configuración utiliza claves generadas aleatoriamente en el arranque y no admitirá la hibernación en el disco duro! Debe deshabilitar la hibernación a través de su respectiva utilidad de administración de energía DE y establecerla en Apagado en estado crítico para evitar la pérdida de datos.

Asegúrate de ejecutar sudo -s o su antes de ejecutar lo siguiente.

  1. Deshabilitar intercambio:

    # swapoff -a
    
  2. Localice la partición de intercambio existente

    # lsblk
    

    Obtendrá algo como esto:

    sda3    8:3    0     8G  0 part [SWAP]
    
  3. Sobrescribir antiguo intercambio

    # dd if=/dev/zero bs=1024000 of=/dev/sda<#>
    

    por ejemplo:

    # dd if=/dev/zero bs=1024000 of=/dev/sda3
    
  4. fstab configuración

    # vim /etc/fstab
    

    Reemplace el antiguo dispositivo SWAP con el nombre del mapeador crypttab:/dev/mapper/cswap

    #<file system>      <mount point>   <type>  <options>   <dump>  <pass>
    /dev/mapper/cswap   none            swap    pri=1,defaults  0   0
    
  5. Configuración criptográfica

    # ls -lF /dev/disk/by-id
    

    Por ejemplo:

    ata-HGST_HTS545050A7E680_TEK55D4F0BU3GV-part3 -> ../../sda3
    
    # vim /etc/crypttab
    
    # <name>    <device>                            <password>  <options>
      cswap     /dev/disk/by-id/ata-HGST_HTS545050A7E680_TEK55D4F0BU3GV-part3   /dev/urandom    swap,cipher=aes-cbc-essiv:sha256,size=256
    
  6. Intercambio cifrado activo

    # reboot
    
  7. Verificar Operaciones de Swap Encriptadas

    Por ejemplo:

    # dmsetup -C info 
    cswap      253   0 L--w    2    1      0 CRYPT-PLAIN-cswap  
    # lsblk
    ├─sda3                8:3    0     8G  0 part  
    │ └─cswap             253:0    0     8G  0 crypt [SWAP]
    # cat /proc/swaps 
    Filename                Type        Size    Used    Priority
    /dev/dm-0               partition   8385532 0       -1
    

Si usa dd if=/dev/zero of=/swapfile bs=8G count=1 , seguido de mkswap /swapfile y swapon /swapfile , debe tener un archivo de intercambio en funcionamiento en su sistema de archivos raíz (usamos dd para asegurarse de que no haya agujeros en el archivo de intercambio)

Esto evita tener que meterse con dispositivos de bucle y/o crypttab y simplemente coloca el archivo de intercambio dentro de su sistema de archivos ya encriptado. (Asumimos que está usando encriptación para todo el disco aquí. Anteponga el /swapfile parámetro con la ruta a su directorio encriptado si está en otro lugar)

Ver man mkswap y man swapon para más información.


Linux
  1. Cómo encontrar un archivo en Linux

  2. Cómo crear un intercambio en Linux

  3. Cómo crear un archivo de intercambio en Linux

  4. Cómo aumentar el tamaño de intercambio en Ubuntu Linux

  5. Crear un archivo de intercambio de Linux

Cómo crear un archivo en Linux

Cómo montar un archivo ISO en Linux

Cómo hacer un archivo ejecutable en Linux

Cómo vincular un archivo en Linux

Cómo crear y usar un archivo de intercambio en Linux

Cómo deshabilitar el intercambio en Linux