Loading [MathJax]/jax/output/CommonHTML/config.js
前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >专栏 >在 Ubuntu 中如何将用户添加到 Sudoers

在 Ubuntu 中如何将用户添加到 Sudoers

作者头像
雪梦科技
发布于 2020-05-09 09:35:12
发布于 2020-05-09 09:35:12
35.6K010
代码可运行
举报
文章被收录于专栏:ITCoderITCoder
运行总次数:10
代码可运行

sudo是一个命令行程序,它允许被信任的用户以 root 或者其他用户身份去运行命令。

我们将会展示两种方式给用户进行 sudo 提权。第一种方式就是将用户添加到 sudoers 文件。这个文件包含了以下信息:

  • 控制哪些用户和用户组被授予 sudo 权限
  • sudo 权限级别

第二个选项就是将用户添加到在sudoers文件中的 sudo 用户组。默认情况下,基于 Debian 的发行版,例如 UbuntuLinux Mint,sudo 用户组的成员都拥有 sudo 权限。

一、将用户添加到 sudo 用户组

在 Ubuntu 上,最简单的授予一个用户 sudo 权限的方式就是将用户添加到“sudo”用户组。该组成员可以以 root 身份执行任何命令,并且在使用sudo命令,被提示时,使用他们自己的密码进行认证。

我们假定用户已经存在,如果你想要创建一个新用户,检查这篇指南

想要将用户添加到用户组,以 root 或者其他 sudo 用户身份运行下面的命令。确认你将“username”替换成你想要授权的用户名:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
usermod -aG sudo username

通过这种方式授权 sudo 权限对大部分用户场景都很有效。

想要确保用户拥有 sudo 权限,运行whoami命令:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
sudo whoami

你会被提示输入密码。如果用户有 sudo 权限,这个命令将会打印“root”:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
root

如果你得到任何错误提示:“user is not in the sudoers file”,它代表这个用户没有 sudo 权限。

二、将用户添加到 sudoers 文件

用户和用户组的 sudo 权限被定义在文件/etc/sudoers文件。将一个用户添加到这个文件,允许你自定义访问命令以及配置自定义安全策略。

你可以通过修改 sudoers 文件或者在/etc/sudoers.d目录下创建配置文件来配置用户的 sudo 访问权限。目录下的所有文件都会被包含在 sudoers 文件中。

永远使用visudo来编辑/etc/sudoers文件。这个命令在保存文件时会检测文件的语法错误。如果有任何错误,文件就不会被保存。如果你使用一个文本编辑器编辑这个文件,一个语法错误,就可能导致你丢失 sudo 访问权限。

通常,visudo使用 vim 来打开/etc/sudoers文件。如果你没有用过 Vim,并且你想使用nano作为默认编辑器来编辑这个文件,运行:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
EDITOR=nano visudo

比方说,你想允许用户在运行 sudo 命令时,不提示输入密码。想要这么做,你可以打开/etc/sudoers文件:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
visudo

滚动到文件最后,并且添加下面的内容:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
username  ALL=(ALL) NOPASSWD:ALL

保存文件,并且推出编辑器。不要忘记,将“username”修改成你想要授权的用户名。

还有一个典型的例子就是只允许用户通过 sudo 运行指定的命令。例如,想要只允许运行mkdirrmdir,你可以这样: /etc/sudoers

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
username ALL=(ALL) NOPASSWD:/bin/mkdir,/bin/rmdir

与其直接编辑 sudo 文件,你还可以通过在/etc/sudoers.d文件夹下创建同样的文件来完成这个需求。像添加到 sudoer 文件一样,添加同样的规则:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
echo "username  ALL=(ALL) NOPASSWD:ALL" | sudo tee /etc/sudoers.d/username

这种方式会使得 sudo 权限管理更好维护。文件的名称并不重要。通常的做法就是,文件名和用户名一样。

三、总结

在 Ubuntu 上授权用户 sudo 权限很简单,你只需要将用户添加到“sudo”用户组。

本文参与 腾讯云自媒体同步曝光计划,分享自作者个人站点/博客。
原始发表:2019年12月16日,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体同步曝光计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
暂无评论
推荐阅读
编辑精选文章
换一批
在 Debian 中如何将用户添加到 Sudoers
sudo是一个命令行工具,它允许被信任用户以另外一个用户身份运行命令,默认是 root 用户。
雪梦科技
2020/05/11
13.1K0
在 Debian 中如何将用户添加到 Sudoers
在 CentOS 上如何将用户添加到 Sudoers
sudo是一个命令行工具,它被设计为允许用户以其他用户(默认是 root 用户)身份去运行命令。
雪梦科技
2020/05/11
11.8K0
在 CentOS 上如何将用户添加到 Sudoers
如何在 Ubuntu 20.04 上将用户添加到 sudoers?
在Ubuntu系统中,sudoers是一个控制用户访问sudo命令权限的配置文件。只有在sudoers文件中列出的用户才能以管理员权限执行命令。本文将指导您如何在Ubuntu 20.04上将用户添加到sudoers,以便他们能够使用sudo命令。
网络技术联盟站
2023/06/20
3.1K0
如何在 Ubuntu 20.04 上将用户添加到 sudoers?
linux详解sudoers
Linux是多用户多任务的操作系统, 共享该系统的用户往往不只一个。出于安全性考虑, 有必要通过useradd创建一些非root用户, 只让它们拥有不完全的权限; 如有必要,再来提升权限执行。   sudo就是来解决这个需求的: 这些非root用户不需要知道root的密码,就可以提权到root,执行一些root才能执行的命令。   执行sudo -u <用户名> <命令>, 将允许当前用户,提权到<用户名>的身份,再执行后面的<命令>, 即使<命令>原本需要root权限。提权到<用户名>身份时,是以<用户名>的身份来执行命令的,因此创建的文件默认属于<用户名>用户。
全栈程序员站长
2022/08/31
8640
6 个超实用的 Sudo 命令使用技巧
sudo 表示 “superuser do”,它允许已验证的用户以其他用户的身份来运行命令。其他用户可以是普通用户或者超级用户。然而,大部分时候我们用它来提权运行命令,以替代直接使用 root 用户的操作。sudo 命令与安全策略配合使用,安全策略可以通过文件 /etc/sudoers 来配置。其安全策略具有高度可拓展性,支持插件扩展。默认情况下 /etc/sudoers 是不能被任何人直接编辑的,因为它的权限是 440,虽然也可以对其赋予写权限后再编辑,但推荐使用 visudo 命令编辑该文件。
iMike
2021/03/25
1.5K0
如何在Ubuntu 16.04上添加和删除用户
您应该知道最基本任务之一是如何在新的Linux服务器上添加和删除用户。当您创建新系统时,您通常(例如在DigitalOcean Droplets上)默认情况下仅提供root帐户。
一步
2018/09/18
6.1K0
Centos7 普通用户加入sudo组 原
1、首先切换到root #su -  (注意有- ,这和su不同,在用命令"su"的时候只是切换到root,但没有把root的环境变量传过去,还是当前用户的环境变量,而使用带横线参数的"su -"命令则将环境变量也一起转换过去,就象用root登录一样) 2、然后 #visudo 这个和vi的用法一样,移动光标,到最后一行,按a,进入append模式,输入以下这行内容(同理,cd到/etc/sudoers目录下,由于sudoers文件为只读权限,所以需要添加写入权限,chmod u+w sudoers 。vim sudoers ) 找到root ALL = (ALL) ALL这一行,在下一行加入username ALL = (ALL) ALL。username指代你想加入sudo组的用户名。  把sudoers文件的权限修改回来。chmod u-w sudoers  这样普通用户可以执行sudo命令了。 ps:这里说下你可以sudoers添加下面四行中任意一条  youuser ALL=(ALL) ALL  %youuser ALL=(ALL) ALL  youuser ALL=(ALL) NOPASSWD: ALL  %youuser ALL=(ALL) NOPASSWD: ALL
拓荒者
2019/03/11
2.4K0
使用sudo时user is not in sudoers file的解决
在Ubuntu下安装系统以后第一个创建的用户默认是在sudo用户组的,所以以sudo执行命令没有问题。
卡尔曼和玻尔兹曼谁曼
2019/01/22
2.3K0
Linux给用户添加sudo权限
一、linux给用户添加sudo权限:  有时候,linux下面运行sudo命令,会提示类似:  xxxis not in the sudoers file.  This incident will be reported.  这里,xxx是用户名称,然后导致无法执行sudo命令,这时候,如下解决: 进入超级用户模式。也就是输入"su -",系统会让你输入超级用户密码,输入密码后就进入了超级用户模式。(当然,你也可以直接用root用) 添加文件的写权限。也就是输入命令"chmod u+w /etc/
joshua317
2018/04/10
44.4K0
如何在Debian 8上添加和删除用户
您应该知道如何在新的Linux服务器上执行的最基本任务之一是添加和删除用户。创建新系统时,默认情况下通常只会为您提供root帐户。虽然以root用户身份运行会为您提供强大的功能和灵活性,但它也很危险并且具有破坏性。添加额外的,无特权的用户来执行常见任务几乎总是更好的主意。然后,您应该为系统上可能拥有的任何其他用户创建其他帐户。
水门
2018/09/19
3.4K0
Linux用户权限管理
Linux系统是一个多用户多任务的分时操作系统,任何一个要使用系统资源的用户,都必须首先向系统管 理员申请一个账号,然后以这个账号的身份进入系统。
星陨1357
2023/03/14
16.1K0
Linux用户权限管理
用户查询操作权限命令
/etc/gshadow 存储当前系统中用户组的密码信息 Tips:原先只有group和passwd两个文件,但后来考虑到安全性问题就又演变出shadow和gshadow两个文件
全栈工程师修炼指南
2022/09/28
3.4K0
用户查询操作权限命令
如何在 Ubuntu 22.04 LTS 中添加、删除和授予用户 Sudo 权限
本教程介绍如何在 Ubuntu Linux 操作系统中添加、删除和授予用户Sudo权限。
网络技术联盟站
2022/05/29
7.3K0
如何在 Ubuntu 22.04 LTS 中添加、删除和授予用户 Sudo 权限
erpit is not in the sudoers file. This incident will be reported
在日常的Linux使用中,你可能会遇到一个令人困惑的错误提示:“erpit is not in the sudoers file. This incident will be reported.”这个错误不仅会阻止你执行需要提升权限的命令,还可能让你对系统的用户权限配置感到困惑。作为一名经验丰富的开发者,默语将在本文中详细解析这个错误的原因,并提供有效的解决方案。本文适用于Linux初学者和中级用户,帮助你更好地理解和管理系统权限。
默 语
2024/11/22
1080
用户组管理问题:用户组管理混乱,权限分配不当
是山河呀
2025/02/04
1350
centos 新增用户并添加到sudoers
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
suveng
2019/09/18
1.3K0
sudo 后门|Linux 后门系列
随着操作系统版本迭代,很多应用程序都将配置文件分为两部分,主配置文件以及主配置文件加载的配置文件,这里所谓的主配置文件加载的配置文件通常以文件夹的形式加载,也就是说文件夹中所有的文件都会被认为是配置文件。意图让运维人员自定义配置的时候,不再修改主配置文件,这样即使运维人员配置出现问题,也能保证基本的程序功能不会受到影响。尤其是这种涉及登录、权限变化的程序
意大利的猫
2023/09/05
6150
sudo 后门|Linux 后门系列
centos7下如何将用户加入sudo组 原
在Ubuntu下安装系统以后第一个创建的用户默认是在sudo用户组的,所以以sudo执行命令没有问题。
拓荒者
2019/03/11
7200
Linux中sudoers文件简析
注释啥的不去管他,Defaults啥的暂时还用不到,主要是中间的部分。 默认情况我们会看到有"%admin ALL=(ALL) ALL"一句话,就是允许admin组在所有主机上执行所有命令。
mythsman
2022/11/14
1.1K0
sudoers修改_sudoers配置使用
sudo是linux下常用的允许普通用户使用超级用户权限的工具,允许系统管理员让普通用户执行一些或者全部的root命令,如halt,reboot,su等等。这样不仅减少了root用户的登陆 和管理时间,同样也提高了安全性。Sudo不是对shell的一个代替,它是面向每个命令的。它的特性主要有这样几点:
全栈程序员站长
2022/08/31
1.8K0
相关推荐
在 Debian 中如何将用户添加到 Sudoers
更多 >
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档