我想建立一个家庭系统,其中用户(即家教孩子)每天/每周/任何时候的计算机使用时间都有限制,超过该时间他们就会注销。只要他们还有“信用时间”,他们就可以根据需要登录和注销。
最初的想法是基于我始终在线的 Mac Mini(或 Synology NAS)设置某种远程用户登录,进行登录/注销记帐(某种 Radius 服务器?哪种?)
客户端计算机最好是 Linux 或 OSX(如果没有必要,我宁愿避免维护 Windows 计算机,因为我很久以前就不再使用 Windows 了)
我一直在研究如何配置事物,但我不清楚最大会话时间是否以某种方式强制执行 - 寻找设置类似事物的技巧/窍门/经验......
答案1
我认为没有理由不使用 SElinux 和 Bash。您可以使用 /etc/security/limits.conf 设置一些限制。SElinux 可以保证没有人可以编辑它,即使是 root 也可以。您可以在 /etc/profile 中添加 TMOUT=300 或类似的东西,以便在登录后一段时间后注销。此外,您也可以使用 Bash,例如在某个时间点执行某些操作:
H=$(date +%H) if (( 8 <= 10#$H && 10#$H < 13 )); then echo between 8AM and 1PM elif (( 13 <= 10#$H && 10#$H < 23 )); then echo between 1PM and 11PM else echo go to bed fi