GNU/Linux >> Znalost Linux >  >> Ubuntu

Jak obnovit oprávnění Sudo uživateli v Ubuntu Linux

Tento tutoriál vysvětluje, jak obnovit oprávnění sudo uživateli z režimu obnovení na Ubuntu Linux a jeho derivátech, jako je Linux mint, operační systémy Pop OS. Tuto příručku jsem testoval na systému Ubuntu 18.04 LTS. Mělo by však fungovat i na jiných distribucích Linuxu.

Úvod

Onehdy jsem testoval, jak přidat běžného uživatele do skupiny sudo a odebrat mu daná oprávnění aby se znovu stal normálním uživatelem Ubuntu.

Během testování jsem odstranil svého administrativního uživatele z 'sudo' skupina. Jak již víte, uživatel by měl být ve skupině sudo, aby mohl provádět jakékoli administrativní úkoly. Ale měl jsem pouze jednoho super uživatele a už jsem mu odebral práva sudo.

Kdykoli spustím příkaz s předponou sudo, narazil jsem na chybu - "sk není v souboru sudoers. Tento incident bude nahlášen ".

."

Nemohu dělat žádné administrativní úkony. Nemohl jsem se přepnout na uživatele root pomocí příkazu 'sudo su'. Jak již víte, uživatel root je v Ubuntu ve výchozím nastavení zakázán, takže se také nemohu přihlásit jako uživatel root.

Byli jste někdy v takové situaci? Bez obav! Dnes vám ukážu, jak opravit porušená oprávnění sudo uživateli v systému Ubuntu  Linux.

Obnovit oprávnění sudo

Krok 1: Spusťte systém Linux do režimu obnovení.

Chcete-li tak učinit, restartujte systém a stiskněte a podržte SHIFT klíč při bootování. Uvidíte spouštěcí nabídku grub. Vyberte „Pokročilé možnosti pro Ubuntu“ ze seznamu spouštěcí nabídky.

Na další obrazovce vyberte "režim obnovení" a stiskněte ENTER:

Dále zvolte "Výzva přetažení do kořenového prostředí" a stiskněte klávesu ENTER:

Nyní jste v režimu obnovení jako uživatel root.

Krok 2: Připojte kořenový souborový systém v režimu čtení/zápisu. Chcete-li tak učinit, zadejte následující příkaz pro připojení root (/ ) souborový systém v režimu čtení/zápisu.

mount -o remount,rw /

Krok 3: Nyní přidejte uživatele, kterého jste odebrali ze sudo skupina.

V mém případě přidávám uživatele s názvem 'sk' do sudo skupiny pomocí následujícího příkazu:

adduser sk sudo

Krok 4: Poté zadejte exit pro návrat zpět do nabídky obnovy. Vyberte možnost Obnovit ke spuštění systému Ubuntu.

Stiskněte ENTER pro pokračování v přihlášení do normálního režimu:

Krok 5: Nyní zkontrolujte, zda byla obnovena oprávnění sudo.

Chcete-li tak učinit, zadejte následující příkaz z Terminálu.

$ sudo -l -U sk

Ukázkový výstup:

[sudo] password for sk: 
Matching Defaults entries for sk on ubuntuserver:
env_reset, mail_badpass,
secure_path=/usr/local/sbin\:/usr/local/bin\:/usr/sbin\:/usr/bin\:/sbin\:/bin\:/snap/bin

User sk may run the following commands on ubuntuserver:
(ALL : ALL) ALL

Jak vidíte ve výše uvedené zprávě, uživatel sk nyní může spouštět všechny příkazy s předponou sudo. Gratulujeme! Úspěšně jste uživateli obnovili oprávnění sudo.

Existují také další možnosti, jak způsobit nefunkční sudo

Uvědomte si prosím, že jsem to ve skutečnosti udělal záměrně, abych vám ukázal, jak obnovit porušená práva sudo uživateli. Odebral jsem se z sudo group a opravil porušená práva sudo, jak je popsáno výše.

Nedělejte to, pokud máte pouze jednoho uživatele sudo. A tato metoda bude fungovat pouze na systémech, ke kterým máte fyzický přístup . Pokud se jedná o vzdálený server nebo vps, je velmi obtížné to opravit. Možná budete potřebovat pomoc poskytovatele hostingu.

Existují také dvě další možnosti, jak způsobit nefunkční sudo.

  • /etc/sudoers soubor mohl být změněn.
  • Vy nebo někdo jiný jste možná změnili oprávnění /etc/sudoers soubor.

Oprava nefunkčního sudo v Ubuntu

Pokud jste provedli jednu nebo všechny výše uvedené věci a skončili jste s nefunkčním sudem, vyzkoušejte následující řešení.

Řešení 1:

Pokud jste změnili obsah /etc/sudoers přejděte do režimu obnovení, jak bylo popsáno výše.

Zálohujte stávající /etc/sudoers před provedením jakýchkoli změn.

cp /etc/sudoers /etc/sudoers.bak

Poté otevřete /etc/sudoers soubor:

visudo

Proveďte změny v souboru, aby vypadal takto:

#
# This file MUST be edited with the 'visudo' command as root.
#
# Please consider adding local content in /etc/sudoers.d/ instead of
# directly modifying this file.
#
# See the man page for details on how to write a sudoers file.
#
Defaults env_reset
Defaults mail_badpass
Defaults secure_path="/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin:/snap/bin"

# Host alias specification

# User alias specification

# Cmnd alias specification

# User privilege specification
root ALL=(ALL:ALL) ALL

# Members of the admin group may gain root privileges
%admin ALL=(ALL) ALL

# Allow members of group sudo to execute any command
%sudo ALL=(ALL:ALL) ALL

# See sudoers(5) for more information on "#include" directives:

#includedir /etc/sudoers.d

Jakmile upravíte obsah tak, aby odpovídal tomuto, stiskněte CTRL+X a y uložte a zavřete soubor.

Nakonec zadejte exit a vyberte možnost Obnovit ke spuštění systému Ubuntu, ukončete režim obnovy a pokračujte v zavádění jako normální uživatel.

Nyní zkuste použít příkaz spustit jakýkoli příkaz s předponou sudo k ověření, zda jsou oprávnění sudo obnovena.

Řešení 2:

Pokud jste změnili oprávnění /etc/sudoers soubor, tato metoda opraví nefunkční sudo problém.

Z režimu obnovy spusťte následující příkaz a nastavte správné oprávnění na /etc/sudoers soubor:

chmod 0440 /etc/sudoers

Jakmile nastavíte správná oprávnění k souboru, zadejte exit a vyberte možnost Obnovit ke spuštění systému Ubuntu v normálním režimu. Nakonec ověřte, zda můžete spustit jakýkoli příkaz sudo.

Závěr

V této příručce jsme se podívali na to, co způsobuje nefunkční sudo a jak obnovit oprávnění sudo uživateli z režimu obnovení v Ubuntu a jeho derivátech.

Doporučené čtení:

  • Jak změnit výchozí soubor protokolu sudo v systému Linux
  • Jak najít všechny uživatele Sudo ve vašem systému Linux
  • Jak spouštět konkrétní příkazy bez hesla Sudo v systému Linux

Ubuntu
  1. Jak udělit a odebrat oprávnění Sudo uživatelům na Ubuntu

  2. Jak nastavit oprávnění Sudo pro uživatele v Linuxu

  3. Jak povolit uživateli používat sudo v Ubuntu Linux

  1. Jak přidat uživatele do Sudoers a přidat uživatele do skupiny Sudo na Ubuntu

  2. Jak přidat uživatele na Ubuntu 20.04 Focal Fossa Linux

  3. Jak vytvořit uživatele Sudo v Rocky Linux 8

  1. Jak nainstalovat Jenkins na Ubuntu 20.04 Focal Fossa Linux

  2. Jak změnit na uživatele root v Ubuntu 22.04

  3. Jak vytvořit uživatele Sudo na Ubuntu