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 unchangedGejala 2: Tidak dapat mereset kata sandi instance ECS Linux menggunakan Asisten Cloud. Pesan kesalahan berikut muncul:

Penyebab yang Mungkin
Modul PAM tidak terinstal atau hilang: Modul PAM yang diperlukan, seperti
pam_unix.soataupam_pwquality.so, hilang. Ini dapat terjadi jika file modul secara tidak sengaja dihapus atau rusak.Kesalahan file konfigurasi PAM: File konfigurasi di folder
/etc/pam.d/, seperticommon-passwordatausystem-auth, merujuk ke modul yang tidak ada. Ini juga dapat terjadi jika jalur modul atau parameter dalam file konfigurasi salah.Masalah konfigurasi kebijakan kata sandi: File
/etc/security/pwquality.confdikonfigurasi secara salah. Ini menyebabkan modulpam_pwquality.sogagal.
Solusi
Langkah 1: Periksa apakah modul pam_unix.so ada
Sambungkan ke instance ECS Linux.
Untuk informasi lebih lanjut, lihat Gunakan Workbench untuk menyambung ke instance Linux melalui SSH.
Jalankan perintah berikut untuk memeriksa apakah modul
pam_unix.soada:sudo find / -name "pam_unix.so"CatatanJika
pam_unix.sotersedia, lanjutkan ke Periksa konfigurasi modul pam_pwquality.so.Jika
pam_unix.sotidak tersedia, kemungkinan file pustaka sistem rusak atau paket terkait PAM belum terinstal. Modulpam_unix.somerupakan komponen inti PAM yang bertanggung jawab atas otentikasi pengguna dasar dan manajemen kata sandi. Dalam situasi ini, Anda perlu menginstal ulang paket PAM.
Instal ulang paket PAM.
Ubuntu atau Debian
sudo apt-get update sudo apt-get install --reinstall libpam-modulesCentOS, Red Hat Enterprise Linux (RHEL), atau Alibaba Cloud Linux
sudo yum reinstall pam
Jalankan perintah berikut lagi untuk memeriksa apakah
pam_unix.soada: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.
Periksa log sistem untuk pesan kesalahan terkait
pam_pwquality.so, sepertiModule is unknownataupam_chauthtok() failed.Ubuntu atau Debian
sudo tail -f /var/log/auth.logCentOS, RHEL, atau Alibaba Cloud Linux
sudo tail -f /var/log/secureCatatanMuncul 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.soLog menunjukkan bahwa sistem tidak dapat memuat modul
pam_pwquality.so. Kesalahan ini dapat terjadi jika modulpam_pwquality.sotidak terinstal atau jika jalur instalasi salah.
Jalankan perintah berikut untuk memeriksa apakah
pam_pwquality.soterinstal:sudo find / -name "pam_pwquality.so"Keluaran perintah berikut menunjukkan bahwa modul telah diinstal:
/usr/lib/x86_64-linux-gnu/security/pam_pwquality.so
Langkah 3: Verifikasi bahwa konfigurasi efektif
Ubah kata sandi dan verifikasi bahwa perubahan tersebut berlaku:
passwd