我应该赋予标准用户帐户哪些特权?

我应该赋予标准用户帐户哪些特权?

我应该赋予标准帐户什么权限?我应该删除什么?我要更改的用户是原始主管理员帐户。我已经设置了第二个帐户,它将成为我的新主管理员,并将添加到所有组中。

编辑:我已经知道如何将用户更改为标准用户,我想知道标准用户应该被允许加入哪些组?

答案1

添加用户设置权限后,请按照以下指南首先设置您最喜欢的编辑器以打开 sudo 配置文件

sudo update-alternatives --config editor

设置最喜欢的编辑器后,打开 sudo 配置,sudo visudo 找到类似这样的内容的行 # 用户权限规范并添加类似的demo ALL=(ALL:ALL) ALL 第一个字段表示规则将应用于的用户名(演示)。

演示 全部=(全部:全部) 全部

第一个“ALL”表示该规则适用于所有主机。

演示 全部=(全部:全部) 全部

这个“ALL”表示演示用户可以以所有用户的身份运行命令。

演示全部=(全部:全部)全部

这个“ALL”表示演示用户可以以所有组的身份运行命令。

演示全部=(全部:全部) 全部

最后的“ALL”表示这些规则适用于所有命令。

演示全部=(全部:全部)全部

以“%”开头的名称表示组名。

您可以通过多种方式来更好地控制 sudo 对调用的反应。

与“mlocate”包关联的 updatedb 命令相对无害。如果我们想允许用户以 root 权限执行它而无需输入密码,我们可以制定这样的规则:

GROUPONE    ALL = NOPASSWD: /usr/bin/updatedb

NOPASSWD 是一个“标签”,表示不需要密码。它有一个配套命令,称为 PASSWD,这是默认行为。标签与规则的其余部分相关,除非稍后被其“孪生”标签否决。

例如,我们可以有这样的一行:

GROUPTWO    ALL = NOPASSWD: /usr/bin/updatedb, PASSWD: /bin/kill

另一个有用的标签是“NOEXEC”,它可用于防止某些程序中的一些危险行为。

例如,某些程序(如“less”)可以通过在其界面中键入以下命令来生成其他命令:

!command_to_run 这基本上会以与“less”运行相同的权限执行用户提供的任何命令,这可能非常危险。

为了限制这种情况,我们可以使用如下代码:

username    ALL = NOEXEC: /usr/bin/less

如果您只是想知道您的用户名定义了什么样的权限,您可以输入:

sudo -l

文章来源

相关内容