Si bien la inmensa mayoría de distribuciones de GNU/Linux nos permiten realizar un encriptado a nuestro disco HDD o SSD durante la instalación utilizando LUKS, la verdad es que nunca está de más realizar practicas adicionales de hardening al SO; una de las prácticas más conocida es la de añadir una contraseña al gestor de arranque del SO, el cual es conocido como grub y que funge como el primer contacto real con las funciones de nuestra distro. Añadir una contraseña al grub es muy importante sobre todo si tu instalación de linux NO ESTÁ ENCRIPTADA, ya que desde el grub se puede modificar la contraseña de acceso al sistema, al igual que se puede hacer desde una usb por medio del live system. De igual forma cabe destacar que realizar esto no te va a tomar más de 5 minutos, ni va a afectar el comportamiento de tu SO y, lo mejor, es que para hacerlo no necesitas instalar paquetes adicionales (al menos para las distros con grub v2, es decir, el 90% de las distros más utilizadas). ¡Vamos a ello!
Como ya dije es muy probable que no necesites instalar ningún paquete adicional para la mayoría de distribuciones, sobre todo aquellas conocidas como Debian, Arch, Fedora y cualquier derivada de estas tres llamese Ubuntu, Linux Mint, EndeavourOS, etc. Sin embargo para usuarios de Artix, Void Linux y en general distros que no utilicen a Systemd como system init hay que realizar unos pasos previos (sólo para evitar posibles errores):
1) re-instalar el paquete de grub, sólo por si las dudas:
sudo pacman -S grub #para derivadas de arch
sudo apt-get install grub2 grub2-common #para derivadas de debian
sudo xbps-install -S grub #para void linux
2) una vez hecho esto toca crear un documento .txt (en una nueva ventana de tu emulador de terminal) como respaldo para almacenar la contraseña durante su creación como acción preventiva ante, por ejemplo, algún apagón. Lo más sencillo es hacerlo con nano:
nano respaldo.txt
3) volvemos a la ventana principal y dado que vamos a modificar un programa esencial para el funcionamiento del SO, lo mejor es hacerlo como súper-usuario:
sudo su
Bien, ahora sí procedamos con la ceación de tu contraseña de grub.
Ten cuidado a partir de esta parte:
1) Lo primero es setear la contraseña de nuestro grub, así que recuerda que antes de iniciar por completo el SO el teclado se halla configurado en inglés, por lo que en caso de utilizar caracteres especiales ten en cuenta cómo escribirlos desde la distribución de tu teclado; el comando es:
grub-mkpasswd-pbkdf2
Enter password: #ingresamos la contraseña
Reenter password: #confirmamos la contraseña
2) Ya ingresada la contraseña se nos imprimirá un hash cifrado único que contiene a la misma, el cual debemos copiar desde grub.pbkdf2.sha512.etcétera hasta el final; recuerda que puedes guardar este hash en el documento .txt de respaldo. Ahora lo siguiente es editar el archivo de configuración del grub:
nano /etc/grub.d/00_header
3) Nos desplazamos hasta el final del documento y entonces agregamos lo siguiente (sé cuidadoso a la hora de escribir la configuración, por favor):
cat << EOF
set superusers="puede ser root o admin o tu nombre de usuario"
password_pbkdf2 el-nombre-del-superusers grub.pbkdf2.sha512.etcétera
EOF
Para que entiendas lo anterior, puede quedar así:
cat << EOF
set superusers="root"
password_pbkdf2 root grub.pbkdf2.sha512.etcétera
EOF
4) Salimos de nano y actualizamos el grub para que se apliquen los cambios:
update-grub2
Una vez termine de actualizar, reiniciamos y comprobamos. Si todo ha ido bien, ya una vez dentro recuerda que aún tienes el archivo .txt, por lo que toca borrarlo de manera segura:
shred -u respaldo.txt
Y listo, ya tienes una capa de seguridad añadida para proteger tu información y tu SO por igual.