如何暂时将自己锁定在主帐户之外?

Ole*_*828 6 user-management

我正在寻找像LeechBlockStayFocusd 之类的东西,可以暂时阻止我的 Internet 访问的东西,但是以一种禁用的主要麻烦的方式来执行,这与这些浏览器插件不同(“主要麻烦” “就像重新安装操作系统一样)

如果我创建一个“受限”帐户,阻止其 Internet 访问并将其从sudoers.

这可以在 Ubuntu 中完成吗?(我坚持使用11.04,但我会考虑升级或为此功能付费)

简单地让其他人成为我机器的管理员对我来说不是一个可以接受的解决方案。

类似cron临时重置密码的工作可能会完成这项工作,但显然它必须非常可靠。我不能冒险被永久锁定,因为机器必须重新启动等。

我还在生产力.SE 中询问了这个问题的更一般版本。

Tak*_*kat 6

聚丙烯酰胺

实现临时锁定帐户的一种不太容易克服的好方法是为可插拔身份验证模块pam_time定义规则。通过这样做,我们可以定义一天中允许我们登录和使用我们的帐户的特定时间。在这些定义的时间之外,登录将导致身份验证失败。

告诉 lightdm 使用 pam_time:

为了应用 pam_time 我们编辑/etc/pam.d/lightdm添加以下行:

account    required    pam_time.so
Run Code Online (Sandbox Code Playgroud)

为 pam_time 定义规则:

pam_time 的所有规则都存储在/etc/security/time.conf. 有关语法的详细信息,请参阅time.conf联机帮助页。例如,oleg在工作日上午 8:00 到下午 5:00拒绝用户登录,我们在那里添加以下行:

login; *; oleg; !Wd0800-1700
Run Code Online (Sandbox Code Playgroud)

为了克服这些规则,我们可以从 root 访问中注释掉添加的行(例如,通过启动实时系统或使用另一个用户帐户)。

除了限制访问之外,我们可能会考虑进一步将范围缩小到我们可能不想访问的某些服务:

http; *; oleg; !Wd0800-1700
Run Code Online (Sandbox Code Playgroud)

oleg在工作日的上午 8 点至下午 5 点禁止用户访问互联网。