Solución 1:
Según tengo entendido, success=$num
especificará cuántas reglas omitir cuando tenga éxito. Así que si pam_unix.so
o pam_winbind.so
tiene éxito, PAM saltará a la línea final. Por supuesto, la línea final permite el acceso en todos los casos.
Solución 2:
pam.d(5) - Página man de Linux
Para la sintaxis más complicada, los valores de control válidos tienen la siguiente forma:
[value1=action1 value2=action2 ...]
La acciónN puede ser:un entero sin signo, n, que significa una acción de 'saltar sobre los siguientes n módulos en la pila'
Lo que dice la autenticación común:
- Si la autenticación UNIX local devuelve éxito , salta dos módulos al 4º módulo (módulo 1 + 2 módulos para saltar -> módulo 4). De lo contrario, ignore el resultado de la autenticación local y pase al siguiente módulo.
- Si winbind (reemplazado con sssd en estos días) con autenticación kerberos devuelve éxito , salta un módulo al módulo 4. De lo contrario, ignora el resultado de la autenticación local y pasa al siguiente módulo.
- Denegar la solicitud de autenticación. El resultado finaliza como DENIED y PAM se detiene allí (la acción definida para el control de requisitos).
- Permitir todo. El resultado se finaliza como PERMITIDO pero pasa al siguiente módulo (la acción definida para el control requerido). Sin embargo, no queda ningún módulo por ejecutar, por lo que termina ahí.