Seperti kebanyakan hal di Linux, perintah sudo sangat dapat dikonfigurasi. Anda dapat meminta sudo menjalankan perintah tertentu tanpa meminta kata sandi, membatasi pengguna tertentu hanya untuk perintah yang disetujui, perintah log yang dijalankan dengan sudo, dan banyak lagi.
Perilaku perintah sudo dikendalikan oleh file / etc / sudoers di sistem Anda. Perintah ini harus diedit dengan perintah visudo, yang melakukan pemeriksaan sintaks untuk memastikan Anda tidak merusak file secara tidak sengaja.
Tentukan Pengguna Dengan Izin Sudo
Akun pengguna yang Anda buat saat menginstal Ubuntu ditandai sebagai akun Administrator, yang berarti dapat menggunakan sudo. Setiap akun pengguna tambahan yang Anda buat setelah penginstalan dapat berupa akun pengguna Administrator atau Standar - Akun pengguna standar tidak memiliki izin sudo.
Anda dapat mengontrol jenis akun pengguna secara grafis dari alat Akun Pengguna Ubuntu. Untuk membukanya, klik nama pengguna Anda di panel dan pilih Akun Pengguna atau cari Akun Pengguna di dasbor.
Buat Sudo Lupa Kata Sandi Anda
Secara default, sudo mengingat kata sandi Anda selama 15 menit setelah Anda mengetiknya. Inilah sebabnya mengapa Anda hanya perlu mengetikkan kata sandi Anda sekali saat menjalankan beberapa perintah dengan sudo secara berurutan. Jika Anda akan mengizinkan orang lain menggunakan komputer Anda dan Anda ingin sudo meminta kata sandi saat dijalankan berikutnya, jalankan perintah berikut dan sudo akan melupakan kata sandi Anda:
sudo –k
Selalu Minta Kata Sandi
Jika Anda lebih suka ditanyai setiap kali Anda menggunakan sudo - misalnya, jika orang lain secara rutin memiliki akses ke komputer Anda - Anda dapat menonaktifkan perilaku mengingat kata sandi sepenuhnya.
Pengaturan ini, seperti pengaturan sudo lainnya, terdapat di file / etc / sudoers. Jalankan perintah visudo di terminal untuk membuka file untuk diedit:
sudo visudo
Terlepas dari namanya, perintah ini secara default menggunakan editor nano baru yang ramah pengguna, bukan editor vi tradisional di Ubuntu.
Tambahkan baris berikut di bawah baris Default lainnya di file:
Default timestamp_timeout = 0
Tekan Ctrl + O untuk menyimpan file, lalu tekan Ctrl + X untuk menutup Nano. Sudo sekarang akan selalu meminta kata sandi kepada Anda.
Ubah Batas Waktu Kata Sandi
Untuk menyetel waktu tunggu sandi yang berbeda - baik yang lebih lama seperti 30 menit atau yang lebih pendek seperti 5 menit - ikuti langkah di atas tetapi gunakan nilai yang berbeda untuk timestamp_timeout. Angka tersebut sesuai dengan jumlah menit sudo akan mengingat kata sandi Anda. Agar sudo mengingat kata sandi Anda selama 5 menit, tambahkan baris berikut:
Default timestamp_timeout = 5
Jangan pernah Minta Kata Sandi
Anda juga dapat meminta sudo tidak pernah meminta kata sandi - selama Anda masuk, setiap perintah yang Anda awali dengan sudo akan berjalan dengan izin root. Untuk melakukan ini, tambahkan baris berikut ke file sudoers Anda, di mana nama pengguna adalah nama pengguna Anda:
username ALL = (ALL) NOPASSWD: ALL
Anda juga dapat mengubah baris% sudo - yaitu, baris yang memungkinkan semua pengguna di grup sudo (juga dikenal sebagai pengguna Administrator) untuk menggunakan sudo - agar semua pengguna Administrator tidak memerlukan kata sandi:
% sudo ALL = (ALL: ALL) NOPASSWD: ALL
Jalankan Perintah Khusus Tanpa Kata Sandi
Anda juga dapat menentukan perintah khusus yang tidak memerlukan kata sandi saat dijalankan dengan sudo. Alih-alih menggunakan "ALL" setelah NOPASSWD di atas, tentukan lokasi perintah. Misalnya, baris berikut akan memungkinkan akun pengguna Anda menjalankan perintah apt-get dan shutdown tanpa kata sandi.
nama pengguna ALL = (SEMUA) NOPASSWD: / usr / bin / apt-get, / sbin / shutdown
Ini bisa sangat berguna saat menjalankan perintah tertentu dengan sudo dalam skrip.
Izinkan Pengguna untuk Menjalankan Hanya Perintah Tertentu
Meskipun Anda dapat memasukkan perintah tertentu ke dalam daftar hitam dan mencegah pengguna menjalankannya dengan sudo, ini tidak terlalu efektif. Misalnya, Anda dapat menentukan bahwa akun pengguna tidak dapat menjalankan perintah shutdown dengan sudo. Tetapi akun pengguna tersebut dapat menjalankan perintah cp dengan sudo, membuat salinan perintah shutdown, dan mematikan sistem menggunakan salinan tersebut.
Cara yang lebih efektif adalah dengan memasukkan perintah tertentu ke dalam daftar putih. Misalnya, Anda dapat memberikan izin akun pengguna Standar untuk menggunakan perintah apt-get dan shutdown, tetapi tidak lebih. Untuk melakukannya, tambahkan baris berikut, di mana pengguna standar adalah nama pengguna pengguna:
standarduser ALL = / usr / bin / apt-get, / sbin / shutdown
Perintah berikut akan memberi tahu kami perintah apa yang dapat dijalankan pengguna dengan sudo:
sudo -U standarduser –l
Akses Sudo Logging
Anda dapat mencatat semua akses sudo dengan menambahkan baris berikut. / var / log / sudo hanyalah sebuah contoh; Anda dapat menggunakan lokasi file log mana pun yang Anda suka.
Defaults logfile=/var/log/sudo
Lihat konten file log dengan perintah seperti ini:
sudo cat /var/log/sudo
Ingatlah bahwa, jika pengguna memiliki akses sudo tidak terbatas, pengguna tersebut memiliki kemampuan untuk menghapus atau mengubah konten file ini. Pengguna juga bisa mengakses prompt root dengan sudo dan menjalankan perintah yang tidak akan dicatat. Fitur logging paling berguna jika digabungkan dengan akun pengguna yang memiliki akses terbatas ke subset perintah sistem.