红帽RHCE之sudo授权

简介: 红帽RHCE之sudo授权

文章目录



什么是sudo?

Sudo 的全称为:super user do。 顾名思义:干超级用户才能干的事!所以Sudo最常用的功能就是提升一个命名的执行权限。

为什么会用到sudo?

sudo是linux系统管理指令,是允许系统管理员让普通用户执行一些或者全部的root命令的一个工具,如halt,reboot,su等等。这样不仅减少了root用户的登录 和管理时间,同样也提高了安全性。sudo不是对shell的一个代替,它是面向每个命令的。

sudo:授权普通用户执行root指令(两种方式)

第一种方式:在/etc/sudoers文件中进行配置

[root@VM-0-3-centos ~]# vim /etc/sudoers.d/90-cloud-init-users 
# Created by cloud-init v. 20.1 on Fri, 01 Apr 2022 11:17:07 +0000
# User rules for root
root ALL=(ALL) NOPASSWD:ALL
boyu ALL=(ALL) NOPASSWD:ALL  #将boyu账号进行授权

参数解释:

1)第一个字段boyu指定的是用户:可以是用户名,也可以是别名。每个用户设置一行,多个用户设置多行,也可以将多个用户设置成一个别名后再进行设置。
2)第二个字段ALL指定的是用户所在的主机:可以是ip,也可以是主机名,表示这个sudo设置后的文件即/etc/sudoers只在这个主机上生效,ALL表示在所有主机上都生效!限制的一般都是本机,也就是限制使用这个文件的主机;如果指定为"192.168.1.88"表示这个文件只有在这台主机上生效,如果拷贝到别的机子上是不起作用的!一般都指定为"ALL"表示所有的主机,不管文件拷到那里都可以用。
3)第三个字段(ALL)括号里指定的也是用户:指定以什么用户身份执行sudo,即使用sudo后可以享有所有账号下的权限。如果要排除个别用户,可以在括号内设置,比如ALL=(ALL,!root,!ops)。也可以设置别名
4)第四个字段ALL指定的是执行的命令:即使用sudo后可以执行所有的命令。也可以设置别名。NOPASSWD: ALL表示使用sudo的不需要输入密码。

测试sudo命令:

[boyu@VM-0-3-centos ~]$ ls -l /etc/shadow
---------- 1 root root 717 Apr  5 16:13 /etc/shadow
#查看文件所属用户
[boyu@VM-0-3-centos ~]$ cat /etc/shadow
cat: /etc/shadow: Permission denied
#此时使用boyu用户没有权限访问/etc/shadow文件
[boyu@VM-0-3-centos ~]$ sudo cat /etc/shadow
[sudo] password for boyu: 
root:$1$quQVrSAy$l5oTUleCiB0ZsizCwGowb.:19083:0:99999:7:::
bin:*:17834:0:99999:7:::
daemon:*:17834:0:99999:7:::
adm:*:17834:0:99999:7:::
#使用sudo命令后,可以执行/etc/shadow文件

第二种方式:将指定用户加入附属组sheel中

1.查看用户账号信息

[boyu@VM-0-3-centos ~]$ id boyu
uid=1000(boyu) gid=1000(boyu) groups=1000(boyu)

2.将指定用户加入附属组sheel中,并确认是否添加成功

[boyu@VM-0-3-centos ~]$ usermod -G wheel boyu
#添加用户boyu到附属组sheel中
[root@VM-0-3-centos ~]# id boyu
uid=1000(boyu) gid=1000(boyu) groups=1000(boyu),10(wheel)
#用户boyu已经加入到sheel中

测试sudo命令:

[boyu@VM-0-3-centos ~]$ ls -l /etc/shadow
---------- 1 root root 717 Apr  5 16:13 /etc/shadow
#查看文件所属用户
[boyu@VM-0-3-centos ~]$ cat /etc/shadow
cat: /etc/shadow: Permission denied
#此时使用boyu用户没有权限访问/etc/shadow文件
[boyu@VM-0-3-centos ~]$ sudo cat /etc/shadow
[sudo] password for boyu: 
root:$1$quQVrSAy$l5oTUleCiB0ZsizCwGowb.:19083:0:99999:7:::
bin:*:17834:0:99999:7:::
daemon:*:17834:0:99999:7:::
adm:*:17834:0:99999:7:::
#使用sudo命令后,可以执行/etc/shadow文件


相关文章
|
2月前
|
运维 Linux 网络安全
CentOS7中Ansible安装与配置全攻略(小白也能看懂的详细教程)
本文详细介绍在CentOS7系统中安装与配置Ansible的完整步骤。从更新系统、添加EPEL源、安装Ansible,到配置主机清单和SSH连接测试,每一步都清晰易懂,适合初学者快速上手自动化运维工具Ansible,实现高效的配置管理和批量操作。
|
3月前
|
监控 关系型数据库 MySQL
MySQL 联合索引
联合索引是MySQL中提升多列查询性能的关键技术,由多个列组成,遵循最左前缀原则。合理设计索引顺序可显著加速查询,避免全表扫描。需结合实际查询需求创建,避免冗余,配合EXPLAIN分析执行计划,优化数据库性能。(238字)
|
7月前
|
SQL 存储 运维
Apache Doris 在菜鸟的大规模湖仓业务场景落地实践
本文介绍了 Apache Doris 在菜鸟的大规模落地的实践经验,菜鸟为什么选择 Doris,以及 Doris 如何在菜鸟从 0 开始,一步步的验证、落地,到如今上万核的规模,服务于各个业务线,Doris 已然成为菜鸟 OLAP 数据分析的最优选型。
433 2
Apache Doris 在菜鸟的大规模湖仓业务场景落地实践
|
9月前
|
XML 缓存 Java
一文讲透程序编排的核心方式:从表达式语言到并行化实践
高德的poi数据来源多种多样,处理流程也多种多样,但因流程相对固定,因此使用了流程化配置简化开发,使用表达式语言保证灵活性。为了加深对平台的理解,并帮助大家对编排有一定的了解,本文会以影响范围的视角去总结当前编排的方案。
425 13
一文讲透程序编排的核心方式:从表达式语言到并行化实践
|
弹性计算 数据挖掘 调度
阿里云服务器e实例与u1实例区别探析
阿里云服务器e实例与u1实例有何区别?阿里云ECS经济型e实例与通用算力型u1实例是两款颇受欢迎的产品,本文将对这两款实例进行详细的对比,帮助用户更好地了解它们的区别并做出选择。
|
Kubernetes Docker Perl
k8s常见故障--yaml文件检查没有问题 pod起不来(一直处于创建中)
k8s常见故障--yaml文件检查没有问题 pod起不来(一直处于创建中)
588 1
|
存储 Java
|
Java 索引
Java系列之 String indexOf() 方法
文章详细介绍了Java中`String`类的`indexOf()`方法的四种不同形式及其用法,包括查找字符和子字符串在字符串中的索引,并提供了相应的实例代码和输出结果。
|
数据可视化 关系型数据库 数据挖掘
scRNA分析|一(尽)文(力)解决你的单细胞火山图问题
scRNA分析|一(尽)文(力)解决你的单细胞火山图问题
1928 0
|
消息中间件 监控 负载均衡
中间件故障转移与容错
【7月更文挑战第23天】
348 1