6.41. pam_xauth-在用户之间转发 xauth 密钥

pam_xauth.so [调试] [xauthpath = * +16+ *] [systemuser = * +17+ *] [targetuser = * +18+ *]

6.41.1. DESCRIPTION

pam_xauth PAM 模块旨在在用户之间转发 xauth 密钥(有时称为“ cookie”)。

如果不使用 pam_xauth,则在启用 xauth 且用户使用 su(1)命令来承担另一用户的特权时,该用户将不再能够访问原始用户的 X 显示,因为新用户没有访问该显示所需的密钥。 。 pam_xauth 通过将密钥从运行 su 的用户(源用户)转发到创建会话时源用户假设其身份的用户(目标用户),并在会话断开时销毁密钥来解决该问题。

例如,这意味着从 xterm 会话运行 su(1)时,无需显式处理 xauth(1)xauth 命令或~/ .Xauthority 文件即可运行 X 程序。

仅当 xauth 可以列出连接到$ DISPLAY 环境变量的密钥时,pam_xauth 才会转发密钥。

原始访问控制由调用用户主目录中的~/.xauth/export和目标用户主目录中的~/.xauth/import提供。

如果用户具有~/.xauth/import文件,则该用户将仅从文件中列出的用户那里接收 Cookie。如果没有~/.xauth/import文件,则该用户将接受任何其他用户的 cookie。

如果用户具有.xauth/export文件,则该用户只会将 cookie 转发给文件中列出的用户。如果没有~/.xauth/export文件,并且调用用户不是* root ,则该用户会将 Cookie 转发给其他任何用户。如果没有~/.xauth/export文件,并且调用用户是 root ,则该用户不会*将 cookie 转发给其他用户。

导入和导出文件均支持通配符(例如***)。导入和导出文件都可以为空,表示不允许用户。

6.41.2. OPTIONS

  • debug

    • 打印调试信息。
  • xauthpath=/path/to/xauth

    • 指定 xauth 程序的路径(该路径应在/usr/X11R6/bin/xauth中,