Způsoby platby Abuse

Obnovení hesla v systému Linux

19.05.2021, 22:32

Každý uživatel alespoň jednou zapomněl hesla k webovým stránkám nebo sociálním sítím, které dlouho nepoužíval. Podobná situace může nastat i v případě distribuce Linuxu. Není těžké je zapomenout, zejména pokud existuje mnoho různých distribucí s různými hesly. Dále si řekneme, co dělat, když heslo do Linuxu zapomenete, jak ho správně obnovit a nesmazat si data. Obnovení hesla pro Linux není příliš obtížný úkol. Je však třeba si ujasnit, že heslo nelze zjistit, lze ho pouze resetovat.

Obnovení hesla pomocí LiveCD

Pro resetování hesla se musíte vyzbrojit diskem LiveCD s libovolnou linuxovou distribucí, důležité je pouze to, aby odpovídala bitová kapacita systému, který má být obnoven, a systému na disku. Nejlepší je vzít nejnovější verze distribucí. S nimi se pracuje pohodlněji, i když i Gentoo a ArchLinux si vystačí.

Dále nabootujte z disku LiveCD a otevřete terminál. Pokud se disk spustí do příkazového prostředí bez grafického rozhraní, nevadí. Potřebujete vědět, na kterém pevném disku se nachází kořenový souborový systém distribuce, kterou se chystáte instalovat. Všechny dostupné disky si můžete prohlédnout pomocí příkazu:

$ fdisk -l

Obnovení hesla v systému Linux

Název disku zpravidla začíná písmeny sd u běžných disků a nvme u disků M.2 SSD. Kořenový oddíl je malý, pokud byl při instalaci přidělen samostatný oddíl pro domovskou složku a je na něm systém souborů Linux. Pokud nebyl vytvořen samostatný oddíl pro zavaděč, bude kořenový oddíl rovněž označen hvězdičkou jako zaváděcí. Jedná se například o /dev/nvme0n1p1. Měl by být připojen k /mnt:

 $ mount /dev/nvme0n1p1 /mnt/

Obnovení hesla v systému Linux

Vidíme tedy /dev/nvme0n1p1 - oddíl, na který byl systém nainstalován. Stejně tak by to mohl být /dev/sda1 nebo /dev/sdb5. Poté zadejte prostředí chroot:

$ chroot /mnt /bin/bash

Obnovení hesla v systému Linux

Nyní se nacházíme v prostředí distribuce, která je nainstalována na připojeném disku. Jedná se o takovou variantu režimu obnovy bez spuštění operačního systému.

Dále může uživatel nastavit heslo uživatele root linuxu pomocí příkazu passwd:

$ passwd root

Obnovení hesla v systému Linux

Může se stát, že nástroj vyhodí chybu, ale pokud žádnou chybu nevyhodil, heslo bylo úspěšně aktualizováno a systém můžete používat.

Existuje ještě jeden způsob. Hesla všech uživatelů jsou uložena v souboru /etc/shadow takto:

user_name:encrypted password:user_id:group id_id

Například:

root:AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA:0:0:::::
bin:!!:9797:0:::::
daemon:!!:9797:0:::::

For each entry, all parameters are separated by colons, the first parameter (root) is the username, the second parameter (AAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAAA...) is the password hash. Chcete-li změnit heslo na požadované, musíte nejprve ručně vytvořit jeho hash. K tomu můžete použít tento příkaz:

$ openssl passwd -1 -salt xyz new_password

Obnovení hesla v systému Linux

Poté jej vložte na místo předchozího:

$ vi /etc/passwd

Obnovení hesla v systému Linux

Heslo pro Linux není možné zcela odstranit, bez hesla se nebudete moci v systému autorizovat, proto je nejlepší možností nahradit jej novým. Po jeho nahrazení uložte změny a je hotovo. Před restartem nezapomeňte ukončit chroot a odmountovat kořenový adresář systému:

$ exit
$ umount /mnt

Obnovení hesla pomocí Grubu

Pokud nemáte po ruce disk, můžete k tomuto účelu použít Grub. V nabídce možností spouštění systému stiskněte klávesu E a upravte parametry jádra:

Obnovení hesla v systému Linux

Zde v řádku vmlinuz za všechny parametry (viz obrázek) je třeba přidat parametr init=/bin/bash:

Obnovení hesla v systému Linux

Stisknutím klávesové zkratky Ctrl+D pokračujte v zavádění systému. Po dokončení inicializace jádro předá řízení příkazu shellu bash, který jsme předali v parametrech jádra, kde můžete obnovit heslo. Ve výchozím nastavení je souborový systém připojen v režimu pouze pro čtení, abyste mohli cokoli měnit, musíte jej znovu připojit pro zápis:

$ exit

$ umount /mnt

Všechny ostatní akce se souborem /etc/shadow jsou podobné jako v prvním bodě.