pam_autologin
pam_autologin 自动登录用户。与其他自动登录方法不同,此模块会保存密码,并在正常身份验证过程中使用它。然后,该密码可供 pam_mount 用于挂载加密的家目录,或供 GNOME/Keyring 用于解锁登录密钥环。
安装
安装 pam_autologinAUR 包。
要为特定应用程序启用该模块,请编辑其在 /etc/pam.d/ 中的配置,例如
/etc/pam.d/login
#%PAM-1.0 auth required pam_autologin.so auth include system-local-login account include system-local-login session include system-local-login
自动登录行应位于 auth 部分的第一个模块,以便它能够设置用户名和密码。如果其他模块先于它出现并需要用户名,它会提示您输入。
自动登录每次仅在每个 TTY 上发生一次,因为当您注销时,您很可能打算登录到另一个帐户。该模块会搜索 /var、/log、/wtmp 路径以查找自上次启动以来在该 TTY 上的登录记录。要每次都自动登录,可以指定 always 选项
auth required pam_autologin.so always
如果登录过程由基于 PAM 的应用程序运行,例如 显示管理器,或类似 loginxAUR 的 getty/login 组合,则无需进一步配置。然而,纯粹的 agetty 不是 PAM 应用程序,无论如何都会提示输入用户名。要为其启用自动登录,您需要给 getty传递 --skip-login 选项以立即启动 login,方法是为 systemd 的 getty@.service 添加一个 drop-in 文件
/etc/systemd/system/getty@.service.d/override.conf
[Service]
ExecStart=
ExecStart=-/sbin/agetty --skip-login --noreset --noclear - ${TERM}
配置
通过创建其配置文件,告知自动登录模块保存下次登录
# touch /etc/security/autologin.conf
重新启动,您应该会看到一条消息,告知您下次登录将被保存。正常登录。再次重新启动,您应该会自动登录。
当您想停止自动登录时,请删除配置文件
# shred -u /etc/security/autologin.conf
使用 shred 工具在取消链接文件之前将其清零。该文件包含您的用户名和密码,否则它们可能会出现在您的未分配存储区域中,黑客可能会在那里找到它们。尽管该文件使用随机密钥进行了混淆,但密钥必须存储在文件本身中才能让自动登录模块自动读取它,因此它只能混淆,不能保护。
安全
自动登录经常被不公正地嘲笑为不安全,因此有必要对该主题进行一些观察。要决定它是否对您不安全,您必须问“免受什么侵害?”。对于绝大多数用户来说,只有两种类型的威胁需要关注:恶意软件和盗窃。
恶意软件和各种远程黑客威胁通过用户特权下运行的程序的错误(通常是网页浏览器)传入。此模块保存的登录信息只有 root 用户可读,因此恶意软件首先需要一个权限升级漏洞。以 root 权限运行的恶意软件已经可以通过键盘记录器记录您的登录信息来获取您的密码,因此在这种情况下,自动登录不会降低您的安全性。
盗窃是另一种常见威胁,也是自动登录确实允许小偷完全访问一切的威胁。盗窃对您的困扰程度可能因人而异。如果您在家中使用台式机,在大多数地方被盗的可能性可以忽略不计。大城市以外的入室盗窃很少见。如果您在家工作,您尤其安全;窃贼不喜欢与人打交道。在台式机上启用自动登录,您几乎与不启用自动登录时一样安全,并且不必输入密码的便利性可能会超过任何剩余的担忧。
另一方面,笔记本电脑更容易被盗。任何时候您在公共场合将其无人看管,当您回来时发现它不见了,这并不令人意外。在笔记本电脑上使用自动登录通常不是一个好主意,但笔记本电脑并非总是在公共场合使用。如果您只在家中使用笔记本电脑,那么它被盗的风险并不比台式机大,并且在其上使用自动登录同样安全。如果您在家外使用笔记本电脑,但使用频率不高,那么在离开家之前可以禁用自动登录。这样,您仍然可以保持所有内容加密,同时在安全位置仍然可以方便地自动登录。
在大多数情况下,除了在公共场合携带的笔记本电脑外,使用 pam_autologin 是相当安全的,几乎没有理由害怕这样做。