GNU/Linux >> Znalost Linux >  >> Linux

Jak chránit heslem Grub Boot Loader v Linuxu

Pokud jste správce systému Linux, možná nebudete chtít, aby ve vašem IT oddělení byli další uživatelé, kteří mají fyzický přístup k serveru, změňte cokoli z nabídky zavaděče GRUB, která se zobrazí při spouštění systému.

GRUB je 3. fáze procesu zavádění Linuxu, o kterém jsme hovořili dříve.

Bezpečnostní funkce GRUB vám umožňují nastavit heslo pro položky grub. Jakmile nastavíte heslo, nemůžete upravovat žádné položky grub nebo předávat argumenty jádru z příkazového řádku grub bez zadání hesla.

Důrazně se doporučuje nastavit heslo GRUB na všech kritických produkčních systémech, jak je vysvětleno v tomto článku.

1. Použijte příkaz grub password v grub.conf

Na systému, kde GRUB není zabezpečen heslem, se během spouštění systému přímo pod nabídkou GRUB zobrazí následující zpráva.

Jak vidíte z této zprávy, kdokoli, kdo je před konzolí a restartuje server, může upravit příkazy grub nebo dokonce upravit argumenty jádra, což pravděpodobně způsobí problémy, pokud někdo, kdo neví, co dělá, pohrává si s tím na produkčních systémech.

Use the up-arrow and down-arrow keys to select which entry is highlighted. 
Press enter to boot the selected OS,
'e' to edit the commands before booting, 
'a' to modify the kernel arguments before booting, or
'c' for a command-line

/boot/grub/grub.conf obsahuje informace o položkách, které se zobrazují v nabídce GRUB během spouštění systému. Na některých systémech je /etc/grub.conf symbolickým odkazem na /boot/grub/grub.conf

Přidejte následující řádek „heslo“ do souboru grub.conf.

$ cat /etc/grub.conf
default=0
timeout=15
password GrbPwd4SysAd$
..

Po přidání příkazu „password“ do souboru grub.conf se během spouštění systému přímo pod nabídkou GRUB zobrazí následující zpráva.

Jak vidíte z této zprávy, bez zadání hesla GRUB, které jste zadali v souboru grub.conf, nikdo nemůže upravovat příkazy grub nebo upravovat argumenty jádra. Jediné, co mohou udělat, je vybrat jednu ze zobrazených položek a spustit systém odtud.

Use the up-arrow and down-arrow keys to select which entry is highlighted. 
Press enter to boot the selected OS or
'p' to enter a password to unlock the next set of features.

2. Zašifrujte heslo grub pomocí grub-crypt

Při čtení výše uvedeného příspěvku jste si pravděpodobně pomysleli:Ano, grub je zabezpečen heslem. Samotné heslo je však v čistém textu v souboru grub.conf, což trochu marí účel.

K vytvoření šifrovaného hesla můžete použít nástroj grub-crypt.

grub-crypt získá od uživatele heslo ve formě čistého textu a zobrazí zašifrované heslo, jak je uvedeno níže.

# grub-crypt
Password: GrbPwd4SysAd$
Retype password: GrbPwd4SysAd$
^9^32kwzzX./3WISQ0C

Upravte soubor grub.conf, přidejte položku „password“ s argumentem –encrypted, jak je znázorněno níže. Stačí zkopírovat výstup příkazu grub-crypt a vložit jej za argument „–encrypted“ v zadání hesla.

$ cat /etc/grub.conf
default=0
timeout=15
password --encrypted ^9^32kwzzX./3WISQ0C
..

Ve výchozím nastavení příkaz grub-crypt šifruje heslo pomocí algoritmu SHA-512. Heslo můžete také zašifrovat pomocí algoritmů SHA-256 nebo MD5, jak je uvedeno níže.

# grub-crypt --sha-256
# grub-crypt --md5

K zašifrování hesla můžete také použít md5crypt. V takovém případě byste měli v souboru grub.conf použít „password –md5 encrypted-password“.

Pokud v části skriptu vašeho souboru grub.conf zadáte „lock“, grub provede zbytek příkazů v této části položky nabídky pouze v případě, že je uživatel ověřen.

3. Načtěte jiný soubor pro nabídku Grub

Ve výchozím nastavení jsou položky v nabídce GRUB během spouštění systému získávány ze souboru grub.conf. tj. na základě řádku, který začíná záznamem „title“ ze souboru grub.conf.

Pokud testujete nějakou variantu nového jádra, možná budete chtít vytvořit samostatný soubor nabídky grub, který bude obsahovat položky vlastní nabídky. Při spouštění systému se ve výchozím nastavení zobrazí pouze záznamy z souboru grub.conf. Když však zadáte heslo, můžete dát grub pokyn, aby načetl vaše položky vlastní nabídky.

Toho lze dosáhnout předáním názvu souboru vlastní nabídky příkazu password, jak je uvedeno níže v souboru grub.conf.

V následujícím příkladu načte a zobrazí položky nabídky grub z /etc/mymenu.lst, když během spouštění systému zadáte heslo.

$ cat /etc/grub.conf
default=0
timeout=15
password --encrypted ^9^32kwzzX./3WISQ0C /etc/mymenu.lst
..

Linux
  1. Jak spravovat heslo účtu v Linuxu

  2. Linux – Jak změnit zapomenuté heslo roota?

  3. Jak zkontrolovat heslo v Linuxu?

  1. Jak obnovit heslo Windows pomocí Linuxu

  2. Jak změnit heslo v Linuxu (příkaz passwd)

  3. Linux – Jak odinstalovat Grub?

  1. Jak používat Grub Rescue k opravě selhání spouštění systému Linux

  2. Jak resetovat root heslo Kali Linux

  3. Jak změnit uživatelské heslo v Linuxu