当“su”时显示“上次登录”信息

当“su”时显示“上次登录”信息

我正在尝试使用命令配置 PAM 模块su。我想su显示“上次登录”信息,assshlogindo。

我发现,在/etc/pam.d/login一个名为的 PAM 模块上pam_lastlog,它正是我想要的。我只是将行复制loginsu配置文件,但是当我运行时,su我没有得到预期的行为。

这是我的内容/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

这是默认的 GNU/Linux 发行版的文件,仅添加session optional pam_lastlog.so nowtmp上面注释的行。

为什么这不起作用?

答案1

尝试将您的线路更改为:

需要会话 pam_lastlog.so nowtmp

    $ su 
Password: 
Last login: Thu May 30 16:19:42 EDT 2013 on pts/0

适用于 RHEL/CentOS 6 机器。

答案2

我只是认为更改会话模块的顺序是有效的:

#%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

放在刚刚pam_lastlog包含的common-session内容之前。正如您可以在我对@jeffatrackaid 的评论中读到的那样,我仍然不明白为什么顺序会以这种方式产生影响。

包含的文件common-session有以下3个模块:

session  required      pam_limits.so
session  required      pam_unix2.so
session  optional      pam_umask.so

任何想法?

相关内容