Mengapa pengguna root memerlukan izin sudo?

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

Pertanyaan: Mengapa pengguna root memerlukan izin sudo? Saya telah melihatnya di berbagai OS UNIX. Bisakah seseorang tolong jelaskan ini?

whoisthesomeone
sumber
2
sudo! = root.
DisplayName

Jawaban:

25

Sehingga mereka dapat (dari manhalaman): -

jalankan perintah sebagai pengguna lain

sudotidak terbatas pada mengizinkan pengguna biasa untuk menjalankan perintah sebagai root. Root dapat menjalankan perintah sebagai pengguna lain dengan: -

sudo -u bloggs <command>

Perhatikan bahwa root tidak perlu menyediakan kata sandi pengguna.

garethTheRed
sumber
2
su -c '<command>' bloggs
Joshua
Ya, ini adalah metode surrogacy dan root hanyalah penggunaan yang sangat umum.
mckenzm
9

Misalkan Anda memiliki skrip yang melakukan banyak hal tanpa memerlukan hak istimewa khusus, dan kemudian satu hal istimewa yang dilakukan melalui sudo.

Jika Anda ingin skrip ini berguna untuk root juga, akan lebih mudah jika perintah sudo terakhir ini tidak akan menolak bekerja karena "Anda root; root tidak diizinkan untuk sudo".

Mengkonfigurasi ini dalam sudoers bukannya hardcoding pengecualian untuk root dalam sudo binary mengurangi kerumitan kode keamanan-kritis di sudo (betapapun sedikit), yang selalu merupakan hal yang baik.

hmakholm ditinggalkan Monica
sumber
1
Dan selain itu, aku sudah lebih dari sekali sengaja mulai perintah admin-level dengan sudosementara aku sudah berada root, hanya karena itu tertanam dalam memori otot saya ...
Shadur
3

Alasan yang diberikan dalam manual sudo asli (maaf tidak ada versi online yang saya tahu) adalah untuk login perintah aktif sedapat mungkin ketika login sebagai root.

Joshua
sumber