全部产品
Search
文档中心

:Perubahan kata sandi gagal pada instance ECS Linux dengan kesalahan 'passwd: Module is unknown'

更新时间:Nov 09, 2025

Saat menggunakan perintah passwd untuk mengubah kata sandi instance ECS Linux, Anda mungkin menerima pesan kesalahan passwd: Module is unknown dan passwd: password unchanged. Kegagalan ini biasanya menunjukkan masalah dengan konfigurasi Modul Otentikasi yang Dapat Dipasang (PAM). Hal ini dapat terjadi jika modul PAM yang diperlukan hilang atau salah dikonfigurasi. PAM adalah kerangka kerja modul di Linux yang digunakan untuk mengelola otentikasi pengguna.

Deskripsi Masalah

Gejala 1: Tidak dapat mengubah kata sandi instance ECS Linux menggunakan perintah passwd. Pesan kesalahan berikut ditampilkan:

passwd: Module is unknown
passwd: password unchanged

Gejala 2: Tidak dapat mereset kata sandi instance ECS Linux menggunakan Asisten Cloud. Pesan kesalahan berikut muncul:

image

Penyebab yang Mungkin

  1. Modul PAM tidak terinstal atau hilang: Modul PAM yang diperlukan, seperti pam_unix.so atau pam_pwquality.so, hilang. Ini dapat terjadi jika file modul secara tidak sengaja dihapus atau rusak.

  2. Kesalahan file konfigurasi PAM: File konfigurasi di folder /etc/pam.d/, seperti common-password atau system-auth, merujuk ke modul yang tidak ada. Ini juga dapat terjadi jika jalur modul atau parameter dalam file konfigurasi salah.

  3. Masalah konfigurasi kebijakan kata sandi: File /etc/security/pwquality.conf dikonfigurasi secara salah. Ini menyebabkan modul pam_pwquality.so gagal.

Solusi

Langkah 1: Periksa apakah modul pam_unix.so ada

  1. Sambungkan ke instance ECS Linux.

    Untuk informasi lebih lanjut, lihat Gunakan Workbench untuk menyambung ke instance Linux melalui SSH.

  2. Jalankan perintah berikut untuk memeriksa apakah modul pam_unix.so ada:

    sudo find / -name "pam_unix.so"
    Catatan
    • Jika pam_unix.so tersedia, lanjutkan ke Periksa konfigurasi modul pam_pwquality.so.

    • Jika pam_unix.so tidak tersedia, kemungkinan file pustaka sistem rusak atau paket terkait PAM belum terinstal. Modul pam_unix.so merupakan komponen inti PAM yang bertanggung jawab atas otentikasi pengguna dasar dan manajemen kata sandi. Dalam situasi ini, Anda perlu menginstal ulang paket PAM.

  3. Instal ulang paket PAM.

    • Ubuntu atau Debian

      sudo apt-get update
      sudo apt-get install --reinstall libpam-modules
    • CentOS, Red Hat Enterprise Linux (RHEL), atau Alibaba Cloud Linux

      sudo yum reinstall pam
  4. Jalankan perintah berikut lagi untuk memeriksa apakah pam_unix.so ada:

    sudo find / -name "pam_unix.so"

Langkah 2: Periksa konfigurasi modul pam_pwquality.so

Modul pam_pwquality.so menegakkan aturan kompleksitas kata sandi, seperti panjang minimum dan jenis karakter. Jika modul pam_pwquality.so diaktifkan, kata sandi harus memenuhi aturan yang ditentukan.

  1. Periksa log sistem untuk pesan kesalahan terkait pam_pwquality.so, seperti Module is unknown atau pam_chauthtok() failed.

    • Ubuntu atau Debian

      sudo tail -f /var/log/auth.log
    • CentOS, RHEL, atau Alibaba Cloud Linux

      sudo tail -f /var/log/secure
      Catatan

      Muncul pesan kesalahan berikut:

      PAM unable to dlopen(pam_puquality.so): /lib/security/pam_puquality.so: cannot open shared object file: No such file or directory
      PAM adding faulty module: pam_puquality.so

      Log menunjukkan bahwa sistem tidak dapat memuat modul pam_pwquality.so. Kesalahan ini dapat terjadi jika modul pam_pwquality.so tidak terinstal atau jika jalur instalasi salah.

  2. Jalankan perintah berikut untuk memeriksa apakah pam_pwquality.so terinstal:

    sudo find / -name "pam_pwquality.so"

    Keluaran perintah berikut menunjukkan bahwa modul telah diinstal:

    /usr/lib/x86_64-linux-gnu/security/pam_pwquality.so
  3. Jika pam_pwquality.so terinstal:

    1. Periksa apakah file konfigurasi PAM, seperti /etc/pam.d/common-password atau /etc/pam.d/system-auth, merujuk dengan benar ke pam_pwquality.so.

      Ubuntu atau Debian

      1. Jalankan perintah berikut untuk memeriksa isi file /etc/pam.d/common-password:

        sudo cat /etc/pam.d/common-password | grep -v "#"
      2. Pastikan baris berikut ada di file dan benar:

        password [success=1 default=ignore] pam_unix.so obscure sha512
        password requisite pam_deny.so
        password required pam_permit.so
        password requisite pam_pwquality.so retry=3 minlen=10 minclass=3
      3. Jika konfigurasi salah, edit file /etc/pam.d/common-password:

        sudo vi /etc/pam.d/common-password

        Tambahkan atau ubah baris berikut:

        password requisite pam_pwquality.so retry=3 minlen=10 minclass=3

        Simpan dan tutup file.

      CentOS, Red Hat Enterprise Linux (RHEL), atau Alibaba Cloud Linux

      1. Jalankan perintah berikut untuk memeriksa isi file /etc/pam.d/system-auth:

        sudo cat /etc/pam.d/system-auth | grep -v "#"

        Pastikan baris berikut ada di file dan benar:

        password   sufficient   pam_unix.so sha512 shadow nullok try_first_pass use_authtok
        password   required     pam_deny.so
        password   requisite    pam_pwquality.so try_first_pass local_users_only retry=3
      2. Jika konfigurasi salah, edit file /etc/pam.d/system-auth:

        sudo vi /etc/pam.d/system-auth

        Tambahkan atau ubah baris berikut:

        password requisite pam_pwquality.so try_first_pass local_users_only retry=3

        Simpan dan tutup file.

    2. Jalankan perintah berikut untuk memeriksa isi file /etc/security/pwquality.conf:

      sudo cat /etc/security/pwquality.conf

      Pastikan baris berikut ada di file dan benar:

      minlen = 10
      minclass = 3
      retry = 3
      Catatan
      • minlen = 10: Panjang minimum kata sandi adalah 10 karakter.

      • minclass = 3: Kata sandi harus berisi karakter dari setidaknya tiga kelas karakter (huruf kecil, huruf besar, angka, dan karakter khusus).

      • retry = 3: Mengizinkan hingga tiga percobaan kata sandi.

  4. Jika pam_pwquality.so belum terinstal:

    Catatan
    • Jika Anda tidak perlu menegakkan pemeriksaan kompleksitas kata sandi, seperti panjang kata sandi dan jenis karakter, Anda dapat memberi komentar atau menghapus baris terkait pam_pwquality.so di file /etc/pam.d/common-password.

    • Jika Anda memerlukan pemeriksaan kompleksitas kata sandi, instal paket libpam-pwquality.

    Periksa apakah file konfigurasi PAM merujuk ke pam_pwquality.so:

    Ubuntu atau Debian

    Jalankan perintah berikut untuk memeriksa file /etc/pam.d/common-password:

    sudo cat /etc/pam.d/common-password | grep "pam_pwquality.so"

    Jika keluaran serupa dengan berikut dikembalikan, pam_pwquality.so dirujuk:

    password requisite pam_pwquality.so retry=3 minlen=10 minclass=3

    CentOS, Red Hat Enterprise Linux (RHEL), atau Alibaba Cloud Linux

    Jalankan perintah berikut untuk memeriksa file /etc/pam.d/system-auth:

    sudo cat /etc/pam.d/system-auth | grep "pam_pwquality.so"

    Jika keluaran serupa dengan berikut dikembalikan, pam_pwquality.so dirujuk:

    password requisite pam_pwquality.so try_first_pass local_users_only retry=3

    Jika pam_pwquality.so tidak terinstal tetapi dirujuk, gunakan salah satu dari dua metode berikut:

    Metode 1: Instalasi pam_pwquality.so

    1. Jalankan perintah berikut untuk menginstal modul pam_pwquality.so:

      • Ubuntu atau Debian

        sudo apt-get update
        sudo apt-get install libpam-pwquality
      • CentOS, Red Hat Enterprise Linux (RHEL), atau Alibaba Cloud Linux

        sudo yum install pam_pwquality
    2. Setelah instalasi, jalankan perintah berikut lagi untuk memeriksa apakah pam_pwquality.so ada:

      sudo find / -name "pam_pwquality.so"

    Metode 2: Beri komentar pada konfigurasi pam_pwquality.so (Solusi sementara, tidak direkomendasikan)

    Jika Anda tidak dapat menyelesaikan masalah segera, Anda dapat sementara memberi komentar pada baris pam_pwquality.so untuk melewati pemeriksaan kompleksitas kata sandi.

    1. Buka file konfigurasi PAM.

      • Ubuntu atau Debian

        sudo vi /etc/pam.d/common-password
      • CentOS, RHEL, atau Alibaba Cloud Linux

        sudo vi /etc/pam.d/system-auth
    2. Temukan baris berikut:

      password requisite pam_pwquality.so retry=3 minlen=10 minclass=3
    3. Tambahkan tanda pagar (#) di awal baris untuk memberi komentar.

      # password requisite pam_pwquality.so retry=3 minlen=10 minclass=3
    4. Simpan dan tutup file.

    Penting
    • Setelah Anda memberi komentar pada baris pam_pwquality.so, sistem tidak lagi menegakkan kompleksitas kata sandi, yang dapat mengurangi keamanan. Anda hanya boleh menonaktifkan pemeriksaan kompleksitas kata sandi di lingkungan pengujian atau skenario tertentu.

    • Untuk mengaktifkan kembali pemeriksaan kompleksitas kata sandi, hapus komentar pada baris pam_pwquality.so dan pastikan aturan dalam file /etc/security/pwquality.conf benar.

Langkah 3: Verifikasi bahwa konfigurasi efektif

Ubah kata sandi dan verifikasi bahwa perubahan tersebut berlaku:

passwd