Mengelola akun pengguna dan grup di FreeBSD dengan pw dan adduser, memahami struktur /etc/passwd, /etc/group, dan /etc/master.passwd, lalu mengatur privilege escalation dengan su, doas, dan sudo. Kalian akan tahu kapan memakai wheel group dan bagaimana mengamankan akses root.

Di episode 4 sebelumnya kalian sudah belajar menginstal software dengan pkg dan ports. Sekarang giliran fondasi keamanan paling dasar: manajemen user, group, dan privilege. Tanpa pengelolaan akun yang baik, sistem kalian — sebagus apapun firewallnya — tetap rapuh dari dalam.
FreeBSD menangani user dengan cara yang sangat BSD: file flat seperti /etc/passwd dan /etc/master.passwd, tool pw yang konsisten, dan sistem grup yang sederhana. Episode ini mengupas semuanya, lalu membahas perdebatan abadi: sudo atau doas?
FreeBSD menyimpan akun user di dua file. /etc/passwd berisi data yang bisa dibaca publik. /etc/master.passwd berisi data sensitif termasuk hash password, dan hanya bisa dibaca root. Setiap baris mewakili satu user dengan kolom yang dipisahkan titik dua:
cat /etc/passwdKolom-kolomnya meliputi nama login, UID, GID, komentar, direktori home, dan shell. Password tidak pernah disimpan di /etc/passwd — hanya di /etc/master.passwd, atau di database yang lebih modern lewat pwd_mkdb.
Grup disimpan di /etc/group dengan format nama, password (umumnya *), GID, dan daftar member:
cat /etc/groupGrup wheel sangat penting — anggotanya diizinkan melakukan su ke root. Kelompok ini adalah gerbang administrasi di FreeBSD.
Warning
Jangan mengedit /etc/passwd atau /etc/master.passwd dengan editor biasa. Perubahan yang tidak konsisten bisa merusak database user. Selalu gunakan pw atau vipw, dan biarkan pwd_mkdb memperbarui indeks binary-nya.
pw adalah tool utama manajemen user FreeBSD. Sintaksnya konsisten dan mendukung banyak operasi.
pw useradd john -c "John Doe" -d /home/john -m -G wheel -s /bin/shPerintah di atas membuat user john, home directory /home/john, anggota grup wheel, dengan shell /bin/sh. Tanda -m memastikan home directory ikut dibuat.
pw userdel john
pw usermod john -G wheel,www -s /bin/tcshpw usermod bisa mengubah grup, shell, atau komentar. Periksa hasilnya dengan pw usershow:
pw usershow john
pw groupshow wheelJika kalian lebih suka pendekatan wizard interaktif, FreeBSD menyediakan adduser:
adduseradduser memandu pembuatan akun dengan pertanyaan langkah-demi-langkah dan menyimpan preset di /etc/adduser.conf. Cocok untuk pengguna baru yang belum hafal flag pw.
Membuat dan mengelola grup dilakukan dengan pw groupadd dan pw groupmod:
pw groupadd developers
pw groupmod developers -M john,jane
pw groupdel developersGrup adalah mekanisme izin berbasis file. Kalian bisa mengatur akses file dengan mengubah owner group dan permission — pola yang harus kalian kuasai di episode 7 saat membahas filesystem.
Dengan su, user di grup wheel bisa menjadi root setelah memasukkan password root:
su -su - memulai shell login root dengan environment bersih. Masalahnya, kalian perlu tahu password root — dan membagikan password root antar admin adalah kebiasaan buruk.
sudo memungkinkan user tertentu menjalankan perintah tertentu sebagai root, tanpa harus tahu password root. Diinstal dari pkg:
pkg install sudoKonfigurasinya di /usr/local/etc/sudoers, yang harus diedit dengan visudo:
visudoInfo
Jangan pernah mengedit /usr/local/etc/sudoers dengan editor biasa. visudo memvalidasi sintaks sebelum menyimpan — kesalahan kecil di file ini bisa mengunci kalian keluar dari akses admin.
doas adalah alternatif modern dari sudo, populer karena konfigurasinya yang singkat dan kode yang lebih kecil. Instal dan buat konfigurasinya:
pkg install doasBuat /usr/local/etc/doas.conf:
echo "permit persist :wheel" > /usr/local/etc/doas.conf
chmod 0400 /usr/local/etc/doas.confSetelah itu anggota wheel bisa menjalankan perintah root dengan doas:
doas pkg upgradeSintaks permit persist :wheel mengizinkan seluruh grup wheel, dan persist membuat kredensial bertahan beberapa menit agar tidak diminta password berulang kali.
| Kriteria | sudo | doas |
|---|---|---|
| Konfigurasi | Kompleks, granular | Singkat |
| Ukuran kode | Besar | Kecil |
| Ekosistem | Sangat luas | Sedang |
| Cocok untuk | Enterprise, kebijakan kompleks | Server pribadi, kesederhanaan |
Success
Untuk sebagian besar lab belajar, doas dengan satu baris permit persist :wheel sudah lebih dari cukup. Pindah ke sudo ketika kebutuhan aturan mulai kompleks — misalnya membatasi perintah tertentu untuk user tertentu.
Beberapa kebiasaan yang wajib kalian pegang sejak dini:
doas atau sudo (detail di episode 14).wheel hanya untuk admin yang benar-benar butuh./var/log/auth.log atau last:last
last -f /var/log/utx.lastloginDi episode 5 ini kalian sudah menguasai manajemen user dan grup di FreeBSD: file sistem passwd, master.passwd, dan group, penggunaan pw untuk membuat, menghapus, dan memodifikasi akun, serta perbandingan su, sudo, dan doas untuk privilege escalation.
Inti yang harus dibawa pulang:
pw, bukan editor manual, untuk mengubah akun user.wheel adalah grup gerbang administrasi untuk akses su.sudo memberi kontrol granular; doas menawarkan kesederhanaan.sudoers hanya dengan visudo; konfigurasi doas.conf harus mode 0400.Di episode 6 selanjutnya kita akan membahas system services & rc system — bagaimana FreeBSD mengelola service dari boot hingga shutdown, struktur /etc/rc.conf, skrip rc, perintah service, dan sysrc untuk mengelola konfigurasi tanpa mengedit file manual. Inilah jantung otomasi sistem kalian.