How to configure PAM to allow/deny users login
Filter User Login Linux Menggunakan PAM (Whitelist User)
Pada contoh ini akan dijelaskan cara membatasi user yang boleh login ke sistem Linux (GUI maupun console) menggunakan konfigurasi PAM (Pluggable Authentication Module).
Metode ini cocok digunakan jika hanya ingin mengizinkan user tertentu saja untuk mengakses sistem.
⚠️ Peringatan Sebelum Konfigurasi
Sebelum melakukan perubahan:
- Sebaiknya lakukan di server percobaan
- Buat snapshot / backup
- Kesalahan konfigurasi PAM dapat menyebabkan gagal login ke sistem
1️⃣ Edit File PAM Authentication
Buka file berikut:
nano /etc/pam.d/common-auth
Tambahkan baris berikut di bagian paling bawah:
auth required pam_listfile.so item=user sense=allow file=/etc/pam.d/users.allow onerr=fail
Lalu simpan perubahan.
2️⃣ Buat File Daftar User yang Diizinkan
Buat file whitelist user:
nano /etc/pam.d/users.allow
Isi dengan username yang boleh login, satu user per baris:
root
user1
user2
user3
3️⃣ Pengujian Konfigurasi
Buat user baru untuk testing:
adduser testuser1
Lalu lakukan pengujian:
❌ Login sebagai testuser1
Tidak akan bisa login karena belum terdaftar di:
/etc/pam.d/users.allow
✅ Login sebagai user yang diizinkan
User berikut tetap bisa login:
- root
- user1
- user2
- user3
4️⃣ Berlaku Juga untuk SSH
Konfigurasi ini juga otomatis berlaku untuk:
- Login SSH
- Login console
- Login GUI
Karena semuanya menggunakan PAM authentication stack.
📚 Referensi
💡 Tips Tambahan (Best Practice)
Jika ingin lebih aman:
- Selalu pastikan root tetap di whitelist
- Gunakan session SSH kedua saat testing
- Siapkan akses console/VM jika terkunci
Komentar