sudo je pravděpodobně jeden z nejpoužívanějších příkazů Linuxu. Umožňuje vám získat administrátorská nebo zvýšená oprávnění na počítači se systémem Linux.
Obvykle potřebujete zvýšená oprávnění k provádění akcí, jako je instalace softwaru, správa služeb a mazání důležitých systémových souborů. Věděli jste ale, že v Linuxu existují alternativy k příkazu sudo?
Proč spouštět příkazy Linuxu jako jiný uživatel?
sudo je velmi důležitý příkaz, protože vám umožňuje spouštět příkazy s oprávněními superuživatele. Ve výchozím nastavení mají uživatelé bez oprávnění root obvykle omezený přístup ke zdrojům a souborům v systému Linux.
Omezení přístupu uživatelům v systému Linux je velmi důležité z následujících důvodů:
- Řízení: Umožňuje správcům nebo vlastníkům systému udělit konkrétní přístup k určitým souborům a programům. To je dobré pro stabilitu systému, soukromí a celkový výkon.
- Bezpečnostní: Omezení přístupu k určitým částem systému zabraňuje náhodnému smazání nebo změnám v systému. A to také snižuje útočnou plochu systému.
sudo funguje dobře a dělá mnohem víc, než k čemu ho většina lidí používá. Bohužel se tím velmi nafukuje.
Naštěstí, stejně jako u většiny věcí v Linuxu, existuje několik skvělých alternativ k příkazu sudo a zde jsou některé z nich.
1. pkexec
Příkaz pkexec (PolicyKit Executive) je front-end implementace frameworku PolicyKit, který poskytuje sadu pravidel pro udělování oprávnění uživatelům a procesům.
pkexec vám umožňuje spustit příkaz s oprávněními jiného uživatele nebo role na základě pravidel definovaných ve specifikované politice.
Nástroj pkexec je již nainstalován na Ubuntu a dalších hlavních distribucích Linuxu. V případě, že není nainstalován, zde je návod, jak jej nainstalovat.
Na systémech založených na Debianu spusťte:
sudo apt Aktualizace && sudo apt Nainstalujte policykit-1
Na RHEL a podobných distribucích spusťte:
sudo dnf Nainstalujte policykit
V distribucích Linuxu založených na Arch použijte následující příkaz:
sudo sudo pacman -S policykit
Jak používat pkexec
Chcete-li použít pkexec, musíte nejprve zadat klíčové slovo pkexec následované příkazem, který chcete provést, a za ním všechny argumenty nebo volby, které příkaz vyžaduje.
Například k instalaci legrační linuxový program: cowsay na vašem systému s oprávněním superuživatele byste použili následující:
pkexec apt Nainstalujte cowsay
Můžete také určit uživatele nebo roli, které mají převzít oprávnění, pomocí --uživatel možnost následovaná jménem uživatele nebo role. Chcete-li například provést předchozí příkaz s oprávněními uživatele admin, použijte následující příkaz:
pkexec --user admin apt install cowsay
Také budete muset zadat heslo uživatele nebo role, kterou jste zadali v příkazu. Pokud nemáte potřebná oprávnění, zobrazí se chyba.
2. doas
Příkaz doas má svůj původ v operačním systému OpenBSD. Umožňuje vám spustit příkaz s oprávněními zadaného uživatele nebo role.
Je hodně podobný příkazu sudo, ale je moderní, velmi lehký a snadno se konfiguruje, protože používá stručné a čitelné příkazy.
Pokud není, Zde je návod, jak nainstalovat doas na Linux.
Konfigurace doas v systému Linux
Na rozdíl od sudo a pkexec příkazy, musíte nakonfigurovat nově nainstalovanou instanci doas, než ji začnete používat. Konfigurační soubor se nachází na adrese /etc/doas.conf. Pokud konfigurační soubor neexistuje, vytvořte jej pomocí dotykového příkazu nebo jakýkoli jiný program dle vašeho výběru.
Chcete-li uživateli udělit superuživatelská oprávnění „mwizak“ ve vašem systému, můžete přidat následující řádek do /etc/doas.conf soubor:
povolení přetrvávat :mwizak tak jako vykořenit
Nezapomeňte nahradit uživatele "mwizak" ve výše uvedeném příkazu správným uživatelským jménem.
Po uložení změn konfigurace zkuste nainstalovat cowsay pomocí následujícího příkazu:
doas apt Nainstalujte cowsay
Chcete-li použít jiného uživatele, můžete použít -u příznak následovaný uživatelským jménem. Je to podobné jako u --uživatel příznak používaný s příkazem pkexec.
Chcete-li například spustit předchozí příkaz jako správce systému, spustili byste:
doas -u admin apt Nainstalujte cowsay
3. su
Příkaz su je zkratka pro "přepnout uživatele." Umožňuje provádět příkazy jako uživatelé jiní než aktuálně přihlášený uživatel. Obvykle se používá ke spouštění příkazů, které vyžadují oprávnění root, ale můžete spustit jakýkoli jiný příkaz pomocí su.
Spuštění příkazu su bez jakýchkoli argumentů předpokládá uživatele root, takže abyste mohli pokračovat, musíte znát heslo uživatele root. Pokud byste se přepnuli na uživatele jménem john, jednoduše byste spustili příkaz:
su john
Zadejte heslo pro uživatele john. Chcete-li přepnout zpět na původního uživatele, jednoduše spusťte výstup příkaz.
Uvědomte si, že spouštění příkazů jako uživatel root se obvykle nedoporučuje, protože nejste vyzváni k zadání a heslo pro každý příkaz, který spustíte, což může vést ke katastrofálním následkům, jako je nechtěné smazání soubory.
4. dzdo
dzdo je nástroj příkazového řádku, který se používá ke spouštění příkazů s oprávněními jiného uživatele, jako je superuživatel nebo uživatel root. Je podobný příkazu sudo, který se běžně používá ke stejnému účelu. Příkaz dzdo je většinou dostupný v systému Oracle Linux.
Můžete použít -u příznak k určení uživatele, jehož oprávnění chcete použít. Například následující příkaz provede aktualizace apt-get příkaz s oprávněními superuživatele (root):
dzdo -u root apt-dostat Aktualizace
Systém vás požádá o zadání příslušného hesla pro potvrzení, že máte potřebná oprávnění ke spuštění příkazu.
Použijte správné uživatelské ovládací prvky pro zvýšenou bezpečnost v systému Linux
sudo je běžně používaný příkaz v systémech Linux, který umožňuje uživateli spustit příkaz s oprávněními uživatele root. V závislosti na vašich potřebách můžete ve svém pracovním postupu použít libovolné alternativy sudo.
V systému Linux je také důležité přiřadit správné úrovně přístupu k souborům a složkám pro lepší zabezpečení.