Pada artikel sebelumnya, kita telah mempelajari cara menjalankan perintah di direktori sebagai root melalui sudo. Dalam panduan ini, kita akan melihat bagaimana mencegah argumen perintah dengan sudo di Linux. Artinya - kami mengizinkan pengguna untuk menjalankan perintah dengan sudo, tetapi tanpa argumen perintah.
Contents
IntroductionMencegah Argumen Perintah Dengan SudoProhibit Argumen Perintah Dengan Sudo Untuk Semua PenggunaConclusionIntroduction
Seperti yang sudah Anda ketahui, setiap perintah memiliki opsi berbeda untuk melakukan tindakan tertentu. Mari kita ambil perintah "ls" sebagai contoh.
Perintah ls digunakan untuk membuat daftar isi direktori, bukan? Ya. Perintah ls dikirimkan dengan banyak opsi dan flag baris perintah. Misalnya, Anda dapat menggunakan flag -a dengan perintah ls untuk membuat daftar semua konten (yaitu termasuk file tersembunyi) di direktori.
Dalam tutorial singkat ini, kita akan melihat cara mengizinkan pengguna menjalankan perintah ls melalui sudo, tetapi hanya tanpa opsi atau bendera baris perintah. Dipahami? Mari saya tunjukkan cara melakukannya di bagian berikut.
Mencegah Argumen Perintah Dengan Sudo
Edit file /etc/sudoers sebagai pengguna root:
[root@Almalinux8CT ~]# visudo
Tambahkan baris berikut:
user1 ALL=(root) /usr/bin /ls ""
Perhatikan tanda kutip ganda di akhir perintah ls pada baris di atas. Tanda kutip ganda melarang pengguna menggunakan argumen dari perintah yang diberikan (yaitu perintah ls). Sesuai baris di atas, user1 dapat menjalankan perintah ls sebagai root, tetapi tidak dapat menggunakan opsi/flag perintah ls. Anda dapat menggunakan beberapa perintah lain pilihan Anda. Simpan file dan tutup.
Sekarang, logout dari sesi root dan login sebagai user1 dan coba jalankan perintah ls dengan opsi apa pun sebagai root melalui sudo dari sesi user1:
[user1@Almalinux8CT ~]$ sudo -u root ls - a
Anda akan menemukan kesalahan berikut:
Maaf, pengguna user1 tidak diizinkan untuk mengeksekusi '/bin/ls -a' sebagai root pada Almalinux8CT.
Anda dapat menjalankan perintah ls tanpa argumennya:
[user1@Almalinux8CT ~]$ sudo -u root lsMelarang Argumen Perintah Dengan Sudo Untuk Semua Pengguna
Contoh di atas menunjukkan kepada Anda cara menolak pengguna untuk menjalankan perintah dengan argumennya sebagai pengguna root. Bagaimana jika Anda ingin menerapkan aturan ini ke semua pengguna? Sederhana! Cukup tambahkan baris berikut di file /etc/sudoers:
ALL ALL=(root) /usr/bin/ls ""
Sekarang semua pengguna di mesin Linux Anda tidak dapat menjalankan perintah ls dengan flags.
Untuk kembali ke default pengaturan, cukup hapus perintah bersama dengan tanda kutip ganda. Atau, hapus seluruh baris.
Untuk detail selengkapnya, lihat halaman manual.
$ man sudoersConclusion
Dalam panduan ini, kita mempelajari cara mengizinkan pengguna menjalankan perintah menggunakan sudo, tetapi mencegah mereka menambahkan argumen apa pun ke perintah. Dengan cara ini kami dapat membatasi pengguna dari menyalahgunakan argumen baris perintah apa pun.