我正在尝试使用命令配置 PAM 模块su
。我想su
显示“上次登录”信息,asssh
或login
do。
我发现,在/etc/pam.d/login
一个名为的 PAM 模块上pam_lastlog
,它正是我想要的。我只是将行复制login
到 su
配置文件,但是当我运行时,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
任何想法?