Saya ingin membuat pengguna baru di beberapa host Debian / Ubuntu saya yang dapat memperbarui server menggunakan perintah apt-get update
dan apt-get dist-upgrade
, tetapi saya tidak ingin memberi mereka akses sudo penuh untuk dapat melakukan hal lain. Apakah ini mungkin? Mungkin ada cara untuk membuat skrip yang tidak dapat diedit tetapi dapat dieksekusi, yang akan dieksekusi sebagai pengguna root?
permissions
sudo
privileges
Programster
sumber
sumber
man sudoers
dansudo cat /etc/sudoers
.Jawaban:
Sudo
dan/etc/sudoers
file tidak hanya untuk memberikan pengguna akses root penuh.Anda dapat mengedit file sudoers dengan pengguna sudo yang ada, dengan perintah
sudo visudo
Anda dapat mengelompokkan perintah yang ingin Anda beri akses seperti di bawah ini:
Anda kemudian dapat memberikan hak pengguna khusus untuk perintah-perintah seperti:
Ini bisa dilihat pada gambar di bawah ini :
Sekarang jika Anda mencoba
sudo apt-get update
atausudo apt-get dist-upgrade
perintah itu akan dijalankan tanpa meminta kata sandi . Jika Anda ingin dimintai kata sandi, hapusNOPASSWD
bit tempat Anda memberikan akses kepada pengguna ke grup perintah.Jika Anda mencoba menjalankan hal lain sebagai
sudo
pengguna, Anda akan dimintai kata sandi dan gagal.Referensi
sumber
apt-get
, atau bahkan sekadarapt-get upgrade
, memberi mereka akses root penuh ! Banyak skrip pemutakhiran memungkinkan pengguna interaktif untuk mengeksekusi shell, misalnya ketika file konfigurasi telah berubah. Agar aman, batasiapt-get
perintah tertentu, dan paksakan agar tidak interaktif. Lihat Apakah aman bagi pengguna ssh saya untuk diberikan sudo tanpa kata sandi untukapt-get update
danapt-get upgrade
?%sudo ...