Dlaczego użytkownik root potrzebuje uprawnień sudo?


16
[root@notebook ~]# grep root /etc/sudoers
root    ALL=(ALL)   ALL

Pytanie: Dlaczego użytkownik root potrzebuje uprawnień sudo? Widziałem to w różnych systemach UNIX. Czy ktoś może to wyjaśnić?


2
sudo! = root.
DisplayName

Odpowiedzi:


25

Aby mogli (z man strony): -

wykonać polecenie jako inny użytkownik

sudonie ogranicza się do umożliwienia zwykłym użytkownikom wykonywania polecenia jako root. Root może uruchomić polecenie jako inny użytkownik za pomocą:

sudo -u bloggs <command>

Pamiętaj, że root nie będzie musiał podawać hasła użytkownika.


2
su -c '<command>' bloggs
Joshua

Tak, jest to metoda zastępcza, a root jest jedynie bardzo powszechnym zastosowaniem.
mckenzm

9

Załóżmy, że masz skrypt, który wykonuje wiele czynności bez specjalnych uprawnień, a następnie jedną uprzywilejowaną funkcję wykonywaną przez sudo.

Jeśli chcesz, aby ten skrypt był także użyteczny dla roota, wygodnie jest, aby to ostatnie polecenie sudo nie odmawiało działania, ponieważ „jesteś rootem; root nie ma prawa do sudo”.

Skonfigurowanie tego w sudoers zamiast na stałe wyłączania dla roota w binarnym sudo zmniejsza złożoność krytycznego dla bezpieczeństwa kodu w sudo (choć nieznacznie), co zawsze jest dobrą rzeczą.


1
A poza tym, mam więcej niż jeden raz przypadkowo rozpoczął polecenia administratora z poziomu sudo, a ja już był korzeń, tylko dlatego, że jest to zakorzenione w mojej pamięci mięśniowej ...
Shadur

3

Powodem podanym w oryginalnej instrukcji sudo (przepraszam, nie znam wersji online) było rejestrowanie aktywnych poleceń, gdy tylko jest to możliwe, gdy logujesz się jako root.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.