O módulo PAM é descoñecido: que proceso fallou realmente
A mensaxe nomea un obxecto compartido e un punto de entrada, non un contrasinal. Atope o proceso que o rexistrou e despois revise a carga, os símbolos e as garantías da pila.
Lea esa frase como unha afirmación sobre un obxecto compartido e un punteiro a función, non sobre un contrasinal. As mesmas palabras poden vir dun OpenVPN complemento, dunha pila PAM cargada para un servizo ou desde dentro do demo RADIUS, e son tres investigacións distintas. Primeiro escolla o proceso.
As comprobacións seguintes supoñen que a mensaxe apareceu mediante unha integración de Linux-PAM nun inicio de sesión VPN. Se veu da configuración propia do servidor RADIUS, hai que comezar pola evidencia dese demo.
Nomee o proceso antes de nomear o paquete
Tres compoñentes chámanse módulo e ningún é intercambiable. Un complemento de autenticación OpenVPN cárgao o demo VPN e implementa a interface de chamada de retorno dese demo. Un módulo PAM é un obxecto compartido que libpam carga para un servizo nomeado, e que implementa puntos de entrada como pam_sm_authenticate. Un módulo de FreeRADIUS é unha peza da configuración propia dese demo. Unha mensaxe coas mesmas palabras pode vir de calquera dos tres, así que a primeira pregunta é que liña de rexistro o produciu.
Correlacione a marca de tempo dun intento fallido entre o rexistro VPN e o rexistro de autenticación do sistema, e despois lea as liñas anteriores ao resumo. A mensaxe concreta do cargador adoita estar xa alí.
Lea o erro de carga e despois o punto de entrada
PAM informa dun módulo descoñecido cando non pode cargar o obxecto compartido seleccionado ou cando o obxecto cargado non fornece a función que esixe esa entrada da pila. Son reparacións distintas: a primeira é un problema de ruta, empaquetado ou ABI, e a segunda é un punto de entrada que non coincide. Unha liña de autenticación necesita pam_sm_authenticate mentres que unha liña de conta necesita pam_sm_acct_mgmt, e unha biblioteca que só implementa unha das dúas fallará na outra, tal como o código do despachador mostra. Atopar o ficheiro no disco non demostra ningunha das dúas cousas.
Tomar unha biblioteca cun nome semellante doutra distribución ou arquitectura de CPU non é unha reparación, e pode deixar un proceso cargando un módulo que nunca se probou contra o seu libpam. Comprobe o paquete propietario da ruta prevista e a arquitectura real do ficheiro antes de cambiar nada.
Manteña as garantías que ofrecía a pila
A forma máis rápida de silenciar este erro é tamén a peor: marcar como opcional un módulo obrigatorio, eliminar a etapa de conta, ou inserir un permiso incondicional. Cada unha converte unha comprobación fallida nunha comprobación ausente, e o inicio de sesión pasa entón por motivos que ninguén pretendía. Restablecer contrasinais e cambiar segredos compartidos tampouco fornecen a función que falta, porque o fallo ocorre antes de que ningunha credencial chegue a un servizo de fondo.
Unha pila de varios módulos puido executar outro servizo de fondo antes da entrada fallida, así que o erro non demostra que non se enviase ningunha petición RADIUS.
Verifique o inicio de sesión, non o módulo
Unha vez corrixida a discrepancia, probe a ruta real de admisión. Unha conta válida debería pasar, as credenciais non válidas deberían seguir fallando e unha conta prohibida debería seguir sendo rexeitada. Confirme tamén que calquera requisito de certificado ou factor adicional segue aplicándose, porque unha pila reparada que salta unha etapa parece un éxito desde o lado do cliente.
Que un módulo se cargue limpiamente é un avance, non unha proba rematada.
Anote que nome de servizo, que ficheiros de política e que puntos de entrada interviñeron, xunto co único intento que usou como evidencia. Ese rexistro é o que converte a próxima aparición nunha consulta e non nun exercicio de arqueoloxía.