When using a full disk encryption, an unencrypted /boot partition is usually required to store bootloader and pre-boot environment.
These initcpio or initramfs images need to be loaded before decryption happens, thus they are accessible to the (evil maid) attacker, who can replace them with their own, or sneakily modify them to replace included ssh server or tty console to leak the decryption passphrase/key to the outside world.
What would be the ideal way to prevent (or detect) tampering with contents of /boot? Rolling our own signing key, signing the /boot images and hoping there are no bugs within motherboard implementations' of BIOS, secure boot & security passphrases that would allow (evil maid) attacker to enroll their own key?
PGP signing the images, and null-ing the memory and stopping the system when we detect system was unlocked & loaded by initcpio/initramfs with incorrect signature?
Even TPM tools (like Clevis) only provide protection once system is already set-up and running. How would one ensure trust once TPM has been cleared, such as after firmware upgrade?
Or is the only reliable protection providing our own /boot externally each time we want to boot the system after a power-off?