![如何设置SDDM和PAM来配合阻止某些登录?](https://linux22.com/image/214616/%E5%A6%82%E4%BD%95%E8%AE%BE%E7%BD%AESDDM%E5%92%8CPAM%E6%9D%A5%E9%85%8D%E5%90%88%E9%98%BB%E6%AD%A2%E6%9F%90%E4%BA%9B%E7%99%BB%E5%BD%95%EF%BC%9F.png)
简而言之 - 我读过一些主题和文章,但无法让 PAM 与 SDDM 一起使用(我正在使用 Ubuntu+XFCE4+SDDM)
我已将 /etc/security/time.conf 文件修改为此
login ; * ; aaaa ; Wk1900-2000
login ; * ; aaaa ; Wd1400-2200
然后 - 我在 /etc/pam.d/common-auth 中取消注释了这一行:
account requisite pam_time.so
(后来我将 Requirement 更改为 require,因为..我不知道这意味着什么,但在我读到的几乎所有主题中,人们都提到“account require pam_time.so”)
然后我在tty2中尝试了一下。我可以登录我的主帐户,但无法登录 aaaa 帐户(正如预期的那样)
但是 - 当我以图形方式通过 SDDM 时,我可以使用任何帐户(包括“aaaa”帐户)登录。
(我确实想实际看看现在是几点。上次测试是(星期三)23:55,我从〜22:15开始尝试(所以在22点之后,即使我搞砸了周末和工作日,或这些别名在 time.conf 中的含义))
我还在 /etc/pam.d/common-account 中添加了“account required pam_time.so”,因为..我不知道为什么它应该在 common-auth 中而不是在 common-account 中(现在我保留它在这两个文件中)。
我在 pam.d 文件中找到了名为 sddm 的文件。据我了解,它包括 common-auth (它包含行:“@include common-account”),但是,我在这里添加了“account required pam_time.so”行,它没有引起任何变化。
我正在测试 100 种不同的逻辑和半逻辑想法,所以有一次我添加了(到 /etc/pam.d/SDDM)行:
auth required pam_time.so
起初我认为它有效 - 因为它限制了“aaaa”登录,但后来我意识到它不起作用,因为没有人可以登录。 (我猜,SDDM 只是“破产”了,因为我做了一些愚蠢的事情)。进入 tty 并取消此更改后,我能够再次通过 SDDM 登录。
但它给了我暗示,SDDM 文件确实影响 SDDM 至少在一些方式...在进一步尝试期间,我在 SDDM 文件中重新添加并保留“需要帐户”,但无论我做什么(我正在更改 time.conf 文件并将此“帐户请求...”行添加/删除到/也许我应该对 /etc/pam.d/ 中的其他文件进行一些更改?
我的 pam.d 文件夹包含以下文件:
ls /etc/pam.d/
chfn lightdm-autologin
chpasswd lightdm-greeter
chsh login
common-account newusers
common-account.pam-old other
common-auth passwd
common-auth.pam-old polkit-1
common-password ppp
common-password.pam-old runuser
common-session runuser-l
common-session-noninteractive samba
common-session-noninteractive.pam-old sddm
common-session.pam-old sddm-autologin
cron sddm-greeter
cups su
gdm-autologin sudo
gdm-fingerprint su-l
gdm-launch-environment systemd-user
gdm-password xfce4-screensaver
gnome-screensaver xscreensaver
lightdm
我确实相信我的 time.conf 工作正常,因为......登录到 tty 的工作效果非常符合预期。
我不知道 SDDM 是做什么的,它不起作用。
我一直在查看所有这些主题/网站 https://wiki.archlinux.org/title/SDDM https://www.stephenrlang.com/2012/06/using-pam-to-enforce-access-based-on-time/ https://www.techrepublic.com/article/using-pam-to-restrict-access-based-on-time/ https://linux.die.net/man/5/pam.d https://www.stephenrlang.com/2012/06/using-pam-to-enforce-access-based-on-time/ https://bbs.archlinux.org/viewtopic.php?id=258195 +其他一些
而且...要么我太愚蠢,无法理解我刚刚读到的内容,要么所有这些网站仍然不包含我需要的信息。