今天,我偶然发现了一个有趣的实用程序,名为 “延迟管理员”. 顾名思义,此实用程序将暂时放弃 admin 管理员权限。 延迟管理员不会删除 admin 管理用户帐户的权限完全,但将它们延迟特定时间。 换句话说,用户仍然拥有管理员权限,但不能随心所欲地使用它。 他们必须等待一段时间才能执行任何需要“sudo” 或 “su” 权限。请注意,他们仍然可以运行任何可以作为普通用户运行的命令。
到底为什么会有人想要这个? 自我控制! 请允许我解释一下。 您是否曾经使用过一些限制您在特定时间访问某些网站的自我控制应用程序和/或插件? 我做! 这些应用程序会在一段时间内阻止某些网站,以提高我们的工作效率。 所以我们可以专注于我们的工作,没有任何分心或访问令人上瘾的网站的冲动。 但是,如果您是管理员,您可以随时卸载或禁用这些应用程序并随时访问这些站点,对吗? 的确! 在这种情况下,我们需要一些强大的东西,即使我们是管理员,也不允许我们执行任何管理任务。 这是延迟管理所基于的原则。 所以如果想推迟 admin 出于某种原因对管理员帐户的权限,Delayed Admin 肯定会有所帮助。
警告 – 它不适合 NOOBS!
在您的 Linux 系统上尝试延迟管理实用程序之前,请记住以下要点。
- 设置延迟管理员后, 您不能使用“sudo” 或 “su” 权限. 因此,建议设置两个管理帐户。 万一您被锁定在系统之外,您仍然可以使用另一个管理帐户来获得管理访问权限。
- 延迟管理员会让你等待 30秒 默认情况下,在运行任何管理任务之前 sudo 特权。 你们中的一些人可能会觉得这很烦人。 如果您是不耐烦的用户,请不要安装它。
内容
安装延迟管理员
安装 吉特 如果尚未安装。 Git 在默认存储库中可用,因此我们可以使用默认包管理器进行安装。 例如,要在任何基于 Debian 的系统上安装 git,请运行:
$ sudo apt-get install git
在本地克隆“延迟管理员”存储库:
$ git clone https://github.com/miheerdew/delayed-admin.git
这将创建一个名为“delayed-admin”在当前目录下并下载所有内容。cd到目录:
$ cd delayed-admin/
然后,使用命令安装延迟管理员:
$ sudo ./setup.sh install
示例输出为:
[✔] Created group delayed-admin [✔] Copied /usr/local/bin/delayed and /etc/delayed-admin.conf %delayed-admin ALL = /usr/local/bin/delayed [✔] Copied above to sudoers file /etc/sudoers.d/delayed-admin [✔] Install successful
安装后,将当前用户添加到延迟-admin 团体:
$ sudo usermod -a -G delayed-admin "$USER"
最后,将当前用户从 sudo 团体:
$ sudo gpasswd -d "$USER" sudo
注销并重新登录或重新启动系统以使更改生效。
如何使用延迟管理员暂时将管理员权限授予管理员
请注意,从现在起您不能使用“sudo”。相反,您将不得不使用 “sudo 延迟” 当您执行管理任务时。
让我们用“sudo“特权,看看会发生什么。
$ sudo apt-get update
我的 Ubuntu 16.04 桌面的示例输出:
Sorry, user ostechnix is not allowed to execute '/usr/bin/apt-get update' as root on ostechnix.
看? 即使我输入了正确的 admin 密码,我无法执行任何操作 admin 任务。
现在让我运行相同的命令“sudo 延迟”前缀:
$ sudo delayed apt-get update
样本输出:
Sleeping for 30 seconds staring from 01/15/18 15:13:45 [...]
你注意到了吗? 延迟 admin 实用程序已将给定命令置于睡眠状态 30 秒。 这意味着你的 admin 默认情况下,用户权限被删除 30 秒。 因此,给定的命令只会在 30 秒后执行。