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.
8.4.2. Berkas Kata Sandi Tersembunyi dan Terenkripsi: /etc/shadow
Berkas /etc/shadow
berisi field-field berikut:
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;
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.