it-swarm.cn

在Linux中添加具有root访问权限的新用户

我想添加新用户并让该新用户拥有所有root访问权限,我该怎么做?

我做了Sudo adduser --system testuser,但没有按我预期的那样工作。

感谢帮助。

31
seg.server.fault

实际上,您可以通过三种方式进行此操作:正确的方法,错误的方法和丑陋的方法。

首先,创建一个普通用户帐户。

adduser username

然后选择以下选项之一:


正确的方式

/etc/sudoers中为Sudo组创建wheel条目,如下所示:

## Allows people in group wheel to run all commands
%wheel  ALL=(ALL)       ALL

或针对“现代”版本:

## Allows people in group sudoers to run all commands
%sudoers ALL=(ALL)       ALL

然后将用户添加到wheel组。现在,添加和删除具有管理特权的用户成为一种记住将其添加到wheel的功能,而不是在Sudo中创建条目。使用wheel的好处是,您可以将此机制扩展到支持组的其他身份验证方案中,即winbind/Active Directory,并在此过程中获得好处。您可以通过将wheel映射到身份验证架构中具有管理员权限的组来实现。

请注意,某些发行版使用不同的管理帐户。 Wheel是实现此目的的“传统”方法,但是您可能会遇到adminadm以及其他具有相同目的的组帐户。

后续编辑:

我必须指出 Bart Silverstrim ,指出Ubuntu为此目的使用admin作为组。尽管我当时没有注意到Ubuntu标记,但他还是先了解了这一点。同样,这完全取决于您使用的发行版。


丑陋的方式

为有问题的用户帐户创建一个Sudo条目,然后授予完整的访问权限。同样,您可以在/etc/sudoers中创建条目,如下所示:

## Allows just user "username" to run all commands as root
username    ALL=(ALL)    ALL

添加:##对于Ubuntu版本:用户名ALL =(ALL:ALL)

如果您只有一个(或两个)普通帐户,那就太好了。当您在多个(地球物理)站点上拥有一百个帐户并且不得不不断维护Sudo文件时,这很丑陋。


错误的方法

您可以编辑/etc/passwd文件,并将用户帐户ID从任何数字更改为0。是的,

username:x:0:502::/home/username:/bin/bash

看到第三项为零?出于所有有效目的,登录该帐户后,您就是root我不建议这样做。如果您不记得自己是谁,可以在开始创建和触摸文件时造成各种破坏root。您也可以将用户名添加到root组。这对文件访问具有相同的效果,但是会带来其他问题。程序会注意到您不是userroot并拒绝运行,但是您将可以访问属于grouproot的文件。

如果这样做,您确实使用了vipw而不是仅使用vi进行编辑,对吗? (或者您最喜欢的文本编辑器是什么)毕竟,此文件中的一个错字可以将您锁定在系统之外-这意味着需要使用修复光盘对相关计算机进行物理访问...

62
Avery Payne

我已经使用了多年了,它是 #1建议的在AskUbuntu上添加sudoer的方法

adduser existinguser Sudo

它比编辑文件简单得多,并且易于抛出Shell脚本进行无人值守安装。

如果要创建用户并授予Sudo特权,可以在一行中执行以下操作:

useradd newuser -m -G Sudo
passwd newuser

-m创建了主目录,而-G指定一个补充组。

3
Dan Dascalescu

并且这是100%:

adduser -u 0 -g root -G root -s /bin/bash -r HackerS2H -p 123456

并与PuTTY和IP服务器连接

2
hacker-s2h

好吧,您可以使用adduser创建用户,请参见man adduser。
之后,您可以将其添加到root或wheel之类的特权组中。但是我认为拥有一些许可的最推荐方法是使用Sudo。

1
Ali Mezgani

您可以执行:

#useradd -m -g root alex

它创建一个具有主目录的用户Alex,该用户属于根组

1
Razique

除了Avery Payne的答案:在Ubuntu中,您可能想要这样:

%Sudo   ALL=(ALL:ALL) ALL

而且不是这样的:

%Sudo    ALL=(ALL) ALL
1
hukeping

“丑陋且混乱”的方式是编辑/ etc/passwd以使新用户的UID = 0和GID = 0。但是这会带来很多安全风险。您确实知道,如果他也是root,他可能会禁用您的助手,更改您的密码,使您成为“标准用户” ...对吗?那为什么不给他自己的帐户呢?

如果您只想为他授予几条命令的root访问权限,则可以研究suid( http://zh.wikipedia.org/wiki/Setuid )的工作方式。

0
quamis