延迟管理员 – 暂时将管理员权限授予管理员

今天,我偶然发现了一个有趣的实用程序,名为 “延迟管理员”. 顾名思义,此实用程序将暂时放弃 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 秒后执行。

从现在开始,您必须等待 30 秒才能执行任何命令 sudo 特权。 当然,您可以更改默认时间间隔 /etc/delayed-admin.conf 文件。 为此,请编辑此文件:

$ sudo delayed nano /etc/delayed-admin.conf

然后根据您的意愿更改延迟的时间间隔。 请记住,您必须运行所有带有前缀“的管理任务”sudo 延迟”。

卸载延迟管理员

等待 30 秒来运行管理任务可能很烦人或没有必要。 如果是这样,只需按如下所述将其卸载。

首先,将您的用户添加回“sudo“组。我重复一遍—— 您必须将用户添加到“sudo” 卸载此实用程序之前的组. 否则,您将失去 sudo 永久访问。 另一个不错的选择是拥有两个管理员帐户。

将当前用户添加回“sudo” 组,运行:

$ sudo delayed usermod -a -G sudo "$USER"
$ sudo delayed gpasswd -d "$USER" delayed-admin

注销并重新登录或重新启动系统以运行命令 sudo 特权。

转到您克隆延迟管理内容的目录并删除延迟-admin 使用命令的实用程序:

$ cd delayed-admin/
$ sudo ./setup.sh uninstall

样本输出:

[✔] Deleted /usr/local/bin/delayed /etc/delayed-admin.conf
[✔] Deleted sudoers file: /etc/sudoers.d/delayed-admin
[✔] Deleted group delayed-admin
[✔] Uninstall successful

最后,删除“延迟 admin“ 目录:

$ cd ..
$ rm -r delayed-admin/

建议阅读:

  • 如何在 Ubuntu 上向用户授予和删除 Sudo 权限
  • 如何恢复用户的 Sudo 权限
  • 如何在 Linux 中查找所有 Sudo 用户
  • 如何限制用户对 Linux 系统的访问
  • Timekpr – 控制用户帐户的计算机使用情况
  • 如何在 Linux 中监控用户活动
  • 如何在 Linux 中设置密码策略
  • 如何在 Linux 中自动注销一段时间后的非活动用户

希望这可以帮助。

资源:

感谢您的光临!

帮助我们帮助您:

祝你有美好的一天!!