in FOSS

Manajemen User di FreeBSD

FreeBSD termasuk sistem operasi yang memungkinkan beberapa pengguna menggunakan sumber daya komputer dan aplikasi secara bersamaan. Sementara hanya satu pengguna yang bisa duduk di depan layar dan menggunakan keyboard pada satu waktu, sejumlah pengguna dapat masuk ke sistem melalui jaringan. Untuk menggunakan sistem ini, setiap pengguna harus memiliki akun sendiri.

Tipe Akun

Karena semua akses ke sistem FreeBSD dicapai dengan menggunakan akun dan semua proses dijalankan oleh pengguna, pengelolaan pengguna dan akun sangat penting. Ada tiga jenis akun utama: akun sistem (system account), akun pengguna (user account), dan akun superuser (superuser account).

Akun Sistem (System Account)

Akun sistem digunakan untuk menjalankan layanan (service/daemon/aplikasi server) seperti DNS, mail, dan web server. Alasannya adalah keamanan; Jika semua layanan berjalan sebagai superuser, bisa bertindak tanpa batasan.

Contoh akun sistem adalah daemon, operator, bind, news, dan www.

Akun Pengguna (User Account)

Akun pengguna (User account) atau user standar/biasa digunakan oleh orang sungguhan. Setiap orang yang mengakses sistem harus memiliki akun pengguna. Hal ini memungkinkan administrator untuk mengetahui siapa yang melakukan apa dan mencegah pengguna mengubah pengaturan pengguna lain.

Setiap pengguna dapat mengatur lingkungan (environment) sendiri untuk mengakomodasi penggunaan sistem, dengan mengkonfigurasi shell default, editor, dan pengaturan bahasa.

Akun Superuser (Superuser Account)

Akun superuser, biasanya disebut root, yang merupakan akun administrator, digunakan untuk mengelola sistem tanpa batasan. Untuk alasan ini, seharusnya akun superuser tidak digunakan untuk tugas sehari-hari seperti mengirim dan menerima surat, eksplorasi umum sistem, atau pemrograman.

Superuser, tidak seperti akun pengguna lainnya, superuser dapat beroperasi tanpa batas, dan penyalahgunaan akun superuser dapat mengakibatkan bencana. Akun pengguna (User account) tidak dapat merusak sistem operasi karena kesalahan, jadi disarankan untuk masuk sebagai akun pengguna dan hanya menjadi superuser saat perintah memerlukan hak istimewa tambahan.

Dalam contoh ini, pengguna hanya menjadi superuser agar bisa menjalankan make install karena langkah ini hanya bisa dijalankan oleh superuser. Setelah perintah selesai, keluar dari mode superuser dan kembali ke akun pengguna (User account).

Mengelola Akun

FreeBSD menyediakan berbagai perintah yang berbeda untuk mengelola akun pengguna. Perintah yang paling umum digunakan yaitu:

  • adduser: perintah menambah akun pengguna.
  • rmuser: perintah menghapus akun pengguna.
  • chpass: perintah mengubah informasi akun pengguna.
  • passwd: perintah mengubah password akun pengguna.
  • pw:

Menambah user: adduser

Saat pengguna baru ditambahkan, perintah ini secara otomatis memperbarui /etc/passwd dan /etc/group. Perintah ini juga membuat direktori home untuk pengguna baru, menyalin file konfigurasi default dari /usr/share/skel, dan secara opsional dapat mengirimkan pesan selamat datang kepada pengguna baru. Perintah ini harus dijalankan sebagai superuser.

Menghapus user: rmuser

Untuk benar-benar menghapus pengguna dari sistem, jalankan rmuser sebagai superuser. Perintah ini melakukan langkah-langkah berikut:

  • Menghapus crontab (penjadwalan otomatis) pengguna.
  • Menghapus jobs yang dimiliki pengguna.
  • Mematikan semua proses yang dimiliki pengguna.
  • Menghapus pengguna dari file password.
  • Menghapus direktori home (folder dokumen) pengguna.
  • Menghapus file email penggun dari folder /var/mail.
  • Menghapus semua file yang dimiliki oleh pengguna dari temporary file storage seperti /tmp.
  • Menghapus username dari semua group yang termasuk di /etc/group. Jika group kosong dan nama group sama dengan nama username, group tersebut dihapus.

Superuser menghapus user john

Mengubah informasi user: chpass

Setiap pengguna dapat menggunakan chpass untuk mengubah shell default dan informasi pribadi yang terkait dengan akun pengguna. Superuser dapat menggunakan utilitas ini untuk mengubah informasi akun tambahan bagi pengguna manapun. Ketika perintah chpass dijalankan, perintah ini akan membuka informasi akun pengguna melalui aplikasi text editor vi.

Mengubah password: passwd

Setiap pengguna dapat dengan mudah mengubah kata sandinya (password) dengan menggunakan perintah passwd. Untuk mencegah perubahan yang tidak disengaja atau tidak sah, perintah ini akan meminta kata sandi awal (password saat ini) pengguna sebelum kata sandi baru dapat ditetapkan.

Superuser dapat mengubah kata sandi pengguna lain dengan menentukan nama pengguna saat menjalankan passwd. Bila utilitas ini dijalankan sebagai superuser, maka utilitas ini tidak akan meminta kata sandi pengguna saat ini. Ini memungkinkan kata sandi diubah saat pengguna tidak dapat mengingat kata sandinya (reset password pengguna).

Pengguna mengubah password sendiri

Superuser (root) mengubah password pengguna lain (john)

Menambah/mengubah informasi user: pw

Perintah pw dapat membuat, menghapus, memodifikasi, dan menampilkan pengguna dan grup. pw memiliki berbagai opsi baris perintah yang sangat kuat yang membuatnya cocok untuk digunakan dalam skrip shell.

Perintah pw dan opsinya

Perintah pw dan opsi show

Mengelola Group

Group adalah kelompok pengguna. Group diidentifikasi dengan nama group dan GID. Di FreeBSD, kernel menggunakan UID pada sebuah proses, dan daftar group yang menjadi miliknya, untuk menentukan proses yang diperbolehkan dilakukan. Sebagian besar, GID pengguna atau proses biasanya berarti group pertama dalam daftar.

Nama group untuk pemetaan GID tercantum di /etc/group. Ini adalah file teks biasa dengan empat kolom yang terpisah. Field pertama adalah nama group, yang kedua adalah kata sandi terenkripsi, yang ketiga adalah GID, dan anggota pengguna yang dibatasi koma.

Superuser dapat memodifikasi /etc/group menggunakan editor teks. Sebagai alternatif, pw dapat digunakan untuk menambahkan dan mengubah grup. Sebagai contoh, untuk menambahkan sebuah kelompok yang disebut teamtwo dan kemudian mengkonfirmasi bahwa group itu ada:

Dalam contoh ini, 1003 adalah GID group teamtwo. Group teamtwo belum memiliki anggota pengguna. Perintah berikut akan memasukkan user john ke dalam group teamtwo.

Dengan perintah id, menampilkan UID pengguna, dan nama group yang di mana pengguna tersebut menjadi anggota.

User john menjadi anggota pada group john(1002) dan teamtwo(1003).

Group wheel

Di FreeBSD terdapat group wheel yang merupakan group pengguna yang dapat menjadi superuser/root.

Melihat anggota group wheel

User john ingin menjadi superuser

User john tidak bisa menjadi superuser karena john belum masuk ke dalam group wheel.

Memasukkan user john ke dalam group wheel

User john menjadi superuser

selamat mencoba 🙂

sumber: FreeBSD.org – Handbook