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

https://www.cyberciti.biz/tips/linux-pam-configuration-that-allows-or-deny-login-via-the-sshd-server.html


💡 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

Postingan populer dari blog ini

Cara restart / stop windows service (services.msc) dengan bat / cmd

Learning Haproxy Load Balancer with Podman and Go Backends

Konfigurasi ITNSA OpenVPN auth LDAP