Tente alterar sua linha para:
sessão requerida pam_lastlog.so nowtmp
$ su
Password:
Last login: Thu May 30 16:19:42 EDT 2013 on pts/0
Funciona na caixa RHEL / CentOS 6.
Estou tentando configurar os módulos PAM que funcionam com o comando su
. Quero que su
mostre as informações do "último login", como ssh
ou login
do.
Eu acho, em /etc/pam.d/login
, um módulo PAM chamado pam_lastlog
que faz exatamente o que eu quero. Eu simplesmente copio a linha do arquivo de configuração login
para su
, mas quando executo su
não obtive o comportamento esperado.
Este é o conteúdo do meu /etc/pam.d/su
:
#%PAM-1.0
auth sufficient pam_rootok.so
auth include common-auth
account sufficient pam_rootok.so
account include common-account
password include common-password
session include common-session
session optional pam_lastlog.so nowtmp
session optional pam_xauth.so
Este é o arquivo padrão da distribuição GNU / Linux, adicionando apenas a linha session optional pam_lastlog.so nowtmp
comentada acima.
Por que isso não está funcionando?
Acabei de descobrir que a alteração da ordem nos módulos de sessão funciona:
#%PAM-1.0
auth sufficient pam_rootok.so
auth include common-auth
account sufficient pam_rootok.so
account include common-account
password include common-password
session optional pam_lastlog.so nowtmp
session include common-session
session optional pam_xauth.so
Colocar pam_lastlog
antes da inclusão de common-session
apenas funciona. Como você pode ler no meu comentário para @jeffatrackaid, eu ainda não entendi porque a ordem influencia dessa maneira.
O arquivo common-session
incluído possui os seguintes 3 módulos:
session required pam_limits.so
session required pam_unix2.so
session optional pam_umask.so
Alguma ideia?