Mengelola user dan group di NetBSD dengan useradd, userdel, dan groupadd, memahami file /etc/passwd dan /etc/group, serta mengatur akses root dengan su, doas, dan sudo.

Di episode 4 sebelumnya kita telah mengisi sistem dengan software lewat pkgsrc dan pkg_add. Namun sebuah sistem yang baik tidak dijalankan sebagai root sepanjang waktu — ia membutuhkan penghuni yang terstruktur. Pada episode ini kita akan mengatur user, group, dan privileges di NetBSD: membuat akun, membagi user ke dalam grup, dan membatasi akses administratif dengan su, doas, dan sudo.
Di NetBSD, setiap proses berjalan atas nama sebuah user (identitas) dan satu atau lebih group (kolektif). User dan group didefinisikan dalam dua file teks:
| File | Isi |
|---|---|
/etc/passwd | Daftar user: username, UID, GID, home, shell |
/etc/group | Daftar group: nama, GID, anggota |
Kalian bisa membaca keduanya langsung:
cat /etc/passwd
cat /etc/grouproot:*:0:0:Charlie &:/root:/bin/sh
bin:*:1:1:Bin:/bin:/sbin/nologin
arman:*:1000:100:Arman Dwi:/home/arman:/bin/kshPerhatikan field yang dipisahkan titik dua: username, password (disimpan di /etc/master.passwd — isi /etc/passwd hanya berisi *), UID, GID, GECOS (nama lengkap), home directory, dan shell. Ini struktur UNIX klasik yang diwarisi NetBSD.
Warning
Jangan pernah mengedit /etc/passwd secara manual untuk mengubah password. Password disimpan di file /etc/master.passwd yang dilindungi, dan harus diubah lewat passwd atau chpass. Mengedit file yang salah bisa membuat sistem tidak bisa login.
Perintah useradd membuat user dengan satu baris, dan secara otomatis memperbarui /etc/passwd, /etc/master.passwd, dan /etc/group:
useradd -m -s /bin/ksh -G wheel,oper -c "Arman Dwi" armanarmanPenjelasan opsi yang umum dipakai:
| Opsi | Fungsi |
|---|---|
-m | Membuat home directory (/home/arman) |
-s | Menentukan shell login (contoh /bin/ksh) |
-G | Menambahkan ke grup tambahan (koma dipisah) |
-c | Komentar/GECOS: nama lengkap user |
Setelah user dibuat, tetapkan password dengan passwd:
passwd armanAlternatif interaktif adalah adduser yang memandu pembuatan user langkah demi langkah — nyaman untuk pemula:
adduserUntuk menghapus user, gunakan userdel. Opsi -r sekaligus menghapus home directory dan mail spool:
userdel -r armanSebelum menghapus, pastikan tidak ada proses yang berjalan atas nama user tersebut. Gunakan ps -u arman untuk memeriksa.
Group dibuat dengan groupadd, diubah dengan groupmod, dan dihapus dengan groupdel. Contoh membuat grup untuk tim developer dan menambahkan anggota:
groupadd devteam
groupmod -A arman,budi devteamdevteam:*:100:arman,budiCara lain menambahkan user ke grup adalah dengan usermod -G:
usermod -G wheel,devteam,oper armanSetelah user dan group terbentuk, pertanyaannya: bagaimana memberi akses administratif tanpa membagikan password root? Tiga jawaban umum di NetBSD: su, doas, dan sudo.
NetBSD mengikuti tradisi BSD: hanya anggota grup wheel yang boleh su ke root. Ini lapisan keamanan pertama — bukan semua orang bisa menjadi root hanya dengan tahu passwordnya.
su berpindah ke user lain. Dari anggota wheel, su ke root dengan memasukkan password root:
su - rootPassword:
# whoami
rootdoas adalah tool modern yang ringan — pilihan kalian jika ingin minimalis. Ia tersedia sebagai package pkgsrc:
cd /usr/pkgsrc/security/doas
make install cleanKonfigurasi doas ditulis di /etc/doas.conf. Berikan akses penuh ke anggota wheel:
permit keepenv :wheelSetelah itu, anggota wheel cukup mengetik:
doas sysctl kern.ostypesudo memberi kontrol yang lebih halus — bisa membatasi perintah per user, per host, dan mencatat semua eksekusi. Install dari pkgsrc:
cd /usr/pkgsrc/security/sudo
make install cleanKonfigurasi di /usr/pkg/etc/sudoers dengan visudo (jangan diedit langsung):
visudo%wheel ALL=(ALL:ALL) ALLDengan baris itu, semua anggota wheel bisa menjalankan perintah apa pun sebagai root dengan sudo. Untuk membatasi perintah spesifik (misalnya hanya restart service):
arman ALL=(ALL) /usr/sbin/service| Tool | Basis | Kelebihan | Kekurangan |
|---|---|---|---|
su | Bawaan base system | Selalu ada | Butuh password root |
doas | Package pkgsrc | Sederhana, konfigurasi ringan | Fitur terbatas |
sudo | Package pkgsrc | Kontrol perintah, audit log | Konfigurasi lebih kompleks |
| Aturan | Alasan |
|---|---|
| Jangan login sebagai root langsung | Satu kesalahan cukup untuk merusak sistem |
Batasi anggota wheel | Hanya yang benar-benar butuh akses admin |
Gunakan doas/sudo dan catat aktivitas | Audit dan accountability |
| Gunakan user terpisah untuk service | Prinsip least privilege |
Pada episode 5 ini, kalian telah mengatur user dan group NetBSD dengan useradd, userdel, groupadd, dan usermod, memahami struktur /etc/passwd dan /etc/group, serta membatasi akses root dengan su, doas, dan sudo — dengan grup wheel sebagai pintu masuknya.
Inti yang harus dibawa pulang:
/etc/passwd, group di /etc/group; ubah password lewat passwd, bukan edit file manual.useradd -m -s /bin/ksh -G wheel arman membuat akun lengkap dengan home.wheel yang bisa su ke root.doas untuk solusi ringan (permit keepenv :wheel), sudo untuk kontrol perintah granular.Di episode 6 selanjutnya kita akan menghidupkan mesin layanan: system services dan rc system — memahami /etc/rc.conf, script di /etc/rc.d, perintah service, dan bagaimana rcorder menentukan urutan boot. Sampai jumpa di episode 6!