HOTLINE

(0275) 2974 127

CHAT WA 24/7
0859-60000-390 (Sales)
0852-8969-9009 (Support)
pengetahuan umum

Tutorial Pemakaian Command Sudo dan File Sudoer

Command sudo memungkinkan user non root untuk menjalankan command yang biasanya membutuhkan hak istimewa super user, sedangkan file sudoers menginstruksikan sistem untuk menangani command sudo.

Di artikel kali ini kami kan menyajikan tutorial kepada Anda command dasarnya dan cara mengedit file sudoers.

Memahami Sudo

Untuk dapat mengetahui cara kerjanya, Anda harus terlebih dahulu mengakses VPS lewat SSH.

Sebetulnya, user root tidak perlu memakai  prefix sudo. Mereka sudah dahulu mempunyai semua hak istimewa yang dibutuhkan. Namun, jika user non-root ingin menambahkan user lain, prefix sudo harus ditambahkan ke command useradd, seperti:

sudo useradd edward

Jika user tidak menggunakan prefix sudo, maka akan menghasilkan output “Permission denied”.

File Sudoers

Command sudo sudah dikonfigurasi melalui file yang terletak di /etc/ bernama sudoers.

Melalui command ini, Anda menyediakan hak-hak istimewa pada level admin untuk user reguler. Secara normal, user pertama yang dibuat saat memasang Ubuntu mempunyai hak-hak sudo. Di dalam VPS, user tersebut adalah user root secara default. Anda dapat konfigurasikan user lainnya untuk dapat menjalankan command sudo. Hal itu bisa dilakukan dengan melakukan edit terhadap sudoers.

Perlu diingat! Saat mengedit pada file sudoers, syntax yang salah ataupun buruk bisa mengunci semua user pada distribusi Anda.

Syntax File Sudoers

Anda dapat membuka file tersebut dengan editor teks apa saja yang Anda sukai. Pada contoh artikel ini, kami akan memberi contoh menggunakan vi:

vi /etc/sudoers

Tampilan File VPS terlihat seperti ini:

Mari kita simak beberapa format dan rule yang wajib diikuti saat mengedit sudoers:

  • Semua baris yang diawali dengan # adalah komentar (comment)
  • Root ALL=(ALL:ALL) ALL baris ini berarti user root memiliki hak-hak istimewa yang tidak ada batasnya dan bisa menjalankan semua command pada sistem.
  • %admin ALL=(ALL) ALL tanda % ini menandakan sebuah grup. Siapa saja yang berada di dalam grup admin mempunyai hak istimewa yang sama dengan user-user.
  • %sudo ALL=(ALL:ALL) ALL semua user di dalam grup sudo mempunyai hak-hak istimewa untuk menjalankan command apa saja.

Terdapat baris penting seperti #includedir /etc/sudoers.d, yang memungkinkan Anda untuk dapat menambahkan konfigurasi ke file sudoers.d dan menautkannya di file tersebut.

Mengedit File Sudoers

Untuk mengedit file /etc/sudoers, gunakan command berikut:

sudo visudo -f /etc/sudoers

Kami merekomendasikan Anda untuk menggunakan visudo untuk mengedit pada file sudoers. Visudo memastikan file sudoers diedit oleh satu user pada satu waktu dan dapat memeriksa syntax yang diperlukan.

Untuk melihat user mana yang berada dalam grup sudo, Anda dapat menggunakan command grep:

grep ‘sudo’ /etc/group

Command tersebut akan menghasilkan sebuah daftar berisikan nama-nama user.

Untuk menambahkan sebuah user bernama Tom pada grup sudo, Anda dapat menggunakan command adduser pada baris command, seperti:

adduser tom sudo

Jika Anda menggunakan command grep untuk memeriksa siapa saja yang berada dalam grup, Anda akan melihat username Tom.

Jika Anda ingin memberi hak istimewa root kepada siapapun, tambahkan mereka ke sudo.

Untuk menghapus user dari sudo:

deluser tom sudo

command deluser akan menghapus Tom dari grup sudo.

Sekarang, user Tom tidak bisa lagi melakukan aksi yang membutuhkan hak-hak istimewa sudo.

Menggunakan File Sudo untuk Memberikan Hak Istimewa Tertentu

Bagaimana jika Anda ingin membuat Tom hanya dapat menjalankan command tertentu dengan hak-hak istimewa sudo, seperti networking?

Agar Anda bisa melakukannya, Anda harus membuat sebuah file konfigurasi di /etc/sudoers.d/ yang bernama networking.

Gunakan command berikut ini untuk membuat file tersebut:

sudo visudo -f /etc/sudoers.d/networking

Tambahkan teks berikut ke dalam file:

Cmnd_Alias     CAPTURE = /usr/sbin/tcdump
Cmnd_Alias     SERVERS = /usr/sbin apache2ctl, /usr/bin/htpasswd
Cmnd_Alias     NETALL = CAPTURE, SERVERS
%netadmin ALL=NETALL

Langkah yang dilakukan di atas adalah cara membuat sebuah grup netadmin. User di dalam grup netadmin dapat menjalankan command-command tertentu di dalam NETALL. NETALL secara bergantian memuat semua command di bawah alias CAPTURE dan SERVERS. Command tcpdump di bawah alias CAPTURE, contoh /usr/sbin/tcpdump.

Selanjutnya, tambahkan user Tom ke grup netadmin:

sudo adduser tom netadmin

Sekarang, user Tom bisa menjalankan command tcpdump begitu juga dengan command networking lainnya.

Kesimpulan

Jika Anda berkolaborasi dengan banyak user, penting untuk memahami command sudo dan file sudoers. Dalam panduan ini, Anda telah mempelajari semua hal mendasar untuk mendapatkan kendali atas hak istimewa sistem Anda!
5/5 - (1 vote)
Hamidah Putri

Recent Posts

Kenali Tracert: Tools Rahasia untuk Diagnosa Koneksi Internet yang Lemot

Perkembangan jaringan internet saat ini semakin pesat seiring meningkatnya kebutuhan komunikasi digital, pekerjaan online, hingga…

38 minutes ago

Apa Itu Vue JS? Pengertian, Kelebihan, Fitur, dan Cara Belajar untuk Pemula

Apa Itu Vue JS? Vue JS (Vue.js) adalah framework JavaScript progresif yang digunakan untuk membangun…

1 hour ago

Cara Mengatasi ERR_TOO_MANY_REDIRECTS (Redirect Loop) dengan Mudah

Salah satu masalah yang sering terjadi pada website adalah redirect loop atau dikenal juga dengan…

3 hours ago

Cara Upload CodeIgniter 3 ke Hosting Lengkap dari Lokal ke Online Tanpa Error

CodeIgniter 3 adalah salah satu framework PHP yang ringan, cepat, dan banyak digunakan untuk membangun…

21 hours ago

Perbedaan Web Developer, Web Designer, dan Webmaster Lengkap

Di era digital saat ini, website menjadi salah satu kebutuhan utama baik untuk bisnis, personal…

22 hours ago

Tak Perlu Mulai dari Nol! Gemini Hadirkan Fitur Transfer Ingatan AI

Perkembangan teknologi Artificial Intelligence (AI) dalam beberapa tahun terakhir berlangsung sangat cepat dan membawa perubahan…

23 hours ago