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

今天,我偶然发现了一个有趣的实用程序 “延迟的管理员”。顾名思义,该实用程序将暂时将管理员特权授予管理员。延迟管理员不会完全删除管理用户帐户的管理员特权,而是将它们延迟特定时间。换句话说,用户仍将具有管理员访问权限,但不能一时兴起。他们必须等待一段时间才能执行任何需要“ sudo”或“ su”特权的命令。请注意,他们仍然可以运行可以以普通用户身份运行的任何命令。

为什么在地球上有人会想要这个?自我控制!请允许我解释。您是否曾经使用过一些自我控制的应用程序和/或附加组件,这些应用程序和/或附加组件会限制您在特定时间访问某些网站?我做!这些应用程序将在一段时间内屏蔽某些网站,以提高我们的生产力。因此,我们可以专心工作,而不会分心,也不必去上瘾的场所。但是,如果您是管理员,则可以随时卸载或禁用这些应用,并随时访问网站,对吗?确实!在这种情况下,我们需要强大的功能,即使我们是管理员,也无法执行任何管理任务。这是“延迟管理”所基于的原理。因此,如果出于某种原因想要延迟对管理员帐户的管理员特权,则“延迟管理员”肯定会有所帮助。

警告–不适用于NOOBS!

在Linux系统上尝试Delayed Admin实用程序之前,请记住以下要点。

  • 设置“延迟管理”后, 您不能使用“ sudo”或“ su”权限执行任何管理任务。因此,建议设置两个管理帐户。万一您被系统锁定,仍然可以使用另一个管理帐户来获得管理访问权限。
  • 延迟的管理员会让您等待 30秒 默认情况下,使用sudo特权运行任何管理任务之前。你们中有些人可能会觉得这很烦。如果您不耐烦,请不要安装它。

安装延迟的管理员

安装 吉特 如果尚未安装。 Git在默认存储库中可用,因此我们可以使用默认软件包管理器进行安装。例如,要在任何基于Debian的系统上安装git,请运行:

$ sudo apt-get install git

在本地克隆“ Delayed Admin”存储库:

$ git clone https://github.com/miheerdew/delayed-admin.git

这将在当前目录中创建一个名为“ delayed-admin”的目录并下载所有内容。 cd到目录:

$ cd delayed-admin/

然后,使用以下命令安装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

安装后,将当前用户添加到delay-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.

看到?即使输入了正确的管理员密码,我也无法执行任何管理员任务。

现在让我运行相同的命令“ sudo delay”前缀:

$ sudo delayed apt-get update

样本输出:

Sleeping for 30 seconds staring from 01/15/18 15:13:45
[...]

你注意到了吗?延迟的管理实用程序已将给定命令置于睡眠状态30秒钟。这意味着默认情况下,您的管理员用户权限会保留30秒。因此,给定的命令将仅在30秒后执行。

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

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

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

卸载延迟的管理员

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

首先,将您的用户添加回“ sudo”组。我重复 – 您必须先将用户添加到“ sudo”组,然后再卸载此实用程序。否则,您将永久失去sudo访问权限。另一个好的选择是拥有两个管理员帐户。

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

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

注销并重新登录或重新引导系统以使用sudo特权运行命令。

转到克隆“延迟的管理员”内容的目录,然后使用以下命令删除“延迟的管理员”实用程序:

$ 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

最后,删除“延迟的管理员”目录:

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

建议阅读:

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

希望这可以帮助。

资源:

  • 延迟的Admin GitHub存储库
Sidebar