Product SiteDocumentation Site

8.4. Pengguna dan Basisdata Kelompok

Daftar pengguna biasanya disimpan di berkas /etc/passwd, ketika berkas /etc/shadow menyimpan kata sandi ter-hash. Keduanya berupa berkas teks, dalam format yang relatif sederhana, yang dapat dibaca dan dimodifikasi dengan teks editor. Setiap pengguna terdaftar di sana dalam sebuah baris dengan beberapa field dipisahkan dengan titik dua (“:”).

8.4.1. Daftar Pengguna: /etc/passwd

Berikut ini daftar field dalam berkas /etc/passwd:
  • login, contohnya rhertzog;
  • password: kata sandi ini terenkripsi oleh fungsi searah (crypt), menggunakan DES, MD5, SHA-256, atau SHA-512. Nilai khusus “x” menandakan bahwa kata sandi terenkripsi disimpan di /etc/shadow;
  • uid: nomor identifikasi unik tiap pengguna;
  • gid: nomor unik untuk kelompok utama pengguna (secara default Debian membuat kelompok khusus untuk tiap pengguna);
  • GECOS: field data biasanya berisi nama lengkap pengguna;
  • direktori login, diberikan ke pengguna ruang untuk berkas pribadi mereka (variabel lingkungan $HOME umumnya mengarah ke sini);
  • program yang dieksekusi ketika login. Ini biasanya berupa perintah interpreter (shell), memberikan kebebasan pada pengguna. Jika Anda menentukan /bin/false (yang tak melakukan apapun dan mengembalikan kontrol seketika), pengguna tidak dapat login.
Seperti disebutkan sebelumnya, seseorang dapat menyunting berkas ini secara langsung. Namun ada cara yang lebih elegan untuk menerapkan perubahan, yang dijelaskan di Bagian 8.4.3, “Memodifikasi Akun atau Password yang Ada”.

8.4.2. Berkas Kata Sandi Tersembunyi dan Terenkripsi: /etc/shadow

Berkas /etc/shadow berisi field-field berikut:
  • login;
  • kata sandi terenkripsi;
  • beberapa field mengelola masa kadaluarsa kata sandi.
Seseorang dapat membuat kedaluwarsa kata sandi menggunakan berkas ini atau mengatur waktu hingga akun dinonaktifkan setelah kata sandi kedaluwarsa.

8.4.3. Memodifikasi Akun atau Password yang Ada

Perintah berikut memungkinkan modifikasi informasi yang disimpan di bidang tertentu dari basis data pengguna: passwd memungkinkan pengguna biasa untuk mengubah kata sandi mereka, yang pada gilirannya, memperbarui berkas /etc/shadow (chpasswd memungkinkan administrator memperbarui kata sandi untuk beberapa pengguna dalam mode batch); chfn (CHange Full Name, Ubah Nama Lengkap), disediakan untuk pengguna super (root), memodifikasi bidang GECOS. chsh (CHange SHell) memungkinkan pengguna untuk mengubah shell login mereka; namun, pilihan yang tersedia akan terbatas pada yang tercantum dalam /etc/shells; administrator, di sisi lain, tidak terikat oleh pembatasan ini dan dapat mengatur shell ke program apa pun yang mereka pilih.
Akhirnya, perintah chage (CHange AGE) mengizinkan administrator mengubah pengaturan masa kadaluarsa password (pilihan -l pengguna akan menampilkan pengaturan kini). Anda dapat pula memaksa masa kadaluarsa password menggunakan perintah passwd -e pengguna, di mana pengguna perlu mengganti password mereka ketika login berikutnya.
Selain alat-alat ini, perintah usermod memungkinkan untuk memodifikasi semua detail yang disebutkan di atas.

8.4.4. Menonaktifkan sebuah Akun

Anda mungkin menemukan diri Anda perlu "menonaktifkan akun" (mengunci pengguna), sebagai tindakan disipliner, untuk tujuan penyelidikan, atau hanya jika terjadi ketidakhadiran pengguna yang berkepanjangan atau definitif. Akun yang dinonaktifkan berarti pengguna tidak dapat masuk atau mendapatkan akses ke mesin. Akun tetap utuh di mesin dan tidak ada berkas atau data yang dihapus; itu sekadar tidak dapat diakses. Ini dilakukan dengan menggunakan perintah passwd -l pengguna (mengunci). Mengaktifkan kembali akun dilakukan dengan cara yang sama, dengan opsi -u (membuka kunci). Namun, ini hanya mencegah login berbasis kata sandi oleh pengguna. Pengguna mungkin masih dapat mengakses sistem menggunakan kunci SSH (jika dikonfigurasi). Untuk mencegah bahkan kemungkinan ini, Anda harus membuat kedaluwarsa akun juga menggunakan chage -E 1pengguna atau usermod -e 1 pengguna (memberikan nilai -1 di salah satu perintah ini akan mengatur ulang tanggal kedaluwarsa ke never). Untuk (sementara) menonaktifkan semua akun pengguna, cukup buat berkas /etc/nologin.
Anda dapat menonaktifkan akun pengguna tidak hanya dengan menguncinya seperti dijelaskan di atas, tetapi juga dengan mengubah shell login defaultnya (chsh -s shell pengguna). Dengan yang terakhir diubah menjadi /usr/sbin/nologin, pengguna mendapat pesan sopan yang menginformasikan bahwa login tidak dimungkinkan, sementara /bin/false hanya keluar saat mengembalikan false. Tidak ada sakelar untuk memulihkan shell sebelumnya. Anda harus mendapatkan dan menyimpan informasi itu sebelum mengubah pengaturan. Shell ini sering digunakan untuk pengguna sistem yang tidak memerlukan ketersediaan login.

8.4.5. Daftar Kelompok: /etc/group

Kelompok terdaftar di berkas /etc/group, basisdata tekstuan sederhana dalam format mirip berkas /etc/passwd, dengan field sebagai berikut:
  • nama grup;
  • password (pilihan): Ini hanya digunakan untuk menggabungkan kelompok ketika seseorang bukan anggota yang biasa (dengan perintah newgrp atau sg, lihat bilah tepi KEMBALI KE DASAR Bekerja dengan beberapa kelompok);
  • gid: nomor identifikasi unik kelompok;
  • daftar anggota: daftar nama penggua yang merupakan anggota kelompok, dipisahkan dengan koma.
Perintah addgroup dan delgroup menambah dan menghapus kelompok, masing-masing. Perintah groupmod memodifikasi informasi kelompok (gid-nya atau identifier). Perintah gpasswd kelompok mengubah password untuk kelompok, sedangkan perintah gpasswd -r kelompok menghapusnya.