Saya menulis modul PAM saya sendiri yang akan menjadi bagian dari aplikasi yang saya kembangkan, tetapi saya tidak yakin persis di mana harus meletakkannya. Modul saya pada dasarnya melakukan otentikasi tingkat jaringan (dengan mojo lainnya tentu saja) mirip dengan LDAP.
Ada banyak file konfigurasi di /etc/pam.d/
direktori saya , dan saya tahu apa yang dilakukan sebagian besar layanan (kecuali beberapa, seperti atd, polkit, ppp). Saya berasumsi bahwa otentikasi dengan tumpukan PAM berjalan seperti ini:
- Menjalankan tumpukan berdasarkan nama layanan (jika ada file konfigurasi)
- Jika tidak diautentikasi, kembalilah pada common- *, di mana * adalah tipe modul (auth, akun, dll)
- Kembalikan sukses atau gagal memanggil aplikasi (dan data lainnya tentu saja)
Apakah saya benar dalam asumsi ini? Apakah semua platform memiliki common-auth, common-account, common-password, dan common-session?
Jika demikian, saya berpikir tentang hanya meletakkannya di atas common * sebagai sufficient
modul sehingga pada kegagalan tumpukan PAM biasa tidak akan terpengaruh. Ini terutama menguntungkan karena saya secara terprogram dapat melakukan ini pada instalasi perangkat lunak.
Apakah saya kehilangan potensi kerentanan keamanan?
Saya tidak dapat menemukan dokumentasi yang sangat bagus tentang di mana mengintegrasikan modul PAM khusus atau masalah keamanan di sekitar tempat meletakkan modul.