su root 提示 Permission denied

news2024/12/23 11:49:33

        今天在某机器上新建了一个test账号,然后使用su root时,居然提示我没有权限,具体如下所示:

[test@localhost ~]$ su root
Password:
su: Permission denied
[test@localhost ~]$

我确定密码是对的,试了好几次,都不行。于是,开始翻看系统的各种日志,包括messages、audit、secure,都没发现什么有用的线索。

查找原因

        因为使用以前建的admin账号,su root却可以成功。基于以往的经验,我推测肯定是哪里做了配置,导致新建的test账号没有权限。首先,就想到了sshd_config,详细看了下各项参数,发现没有问题。于是,又转战PAM,它在/etc/pam.d下有很多配置:

经常搞安全加固的同学应该比较熟悉这些配置,比如:sshd,passwd,login,password-auth,system-auth等。保险起见,可以将这些配置与其他未加固的机器对比,看看是否有值得怀疑的地方。接着查看这个目录下的其他文件,嘿,看我发现了什么:su?还有su.backup?

好家伙,有backup,说明这个su文件被改过,对比下2个文件 :

su 多了两行:

网上搜下这两行配置的解释:

1. auth sufficient pam_rootok.so

  • 作用:它允许 root 用户不需要进一步验证。pam_rootok.so 模块会检查当前用户是否是 root,如果是,则跳过其他验证步骤。这通常用于一些系统管理命令(如 su 切换用户),如果执行用户是 root,则无需再输入密码。

2. auth required pam_wheel.so group=wheel

  • 作用:表示只有属于 wheel 组的用户才被允许进行某些操作,比如使用 su 切换到其他用户账户。pam_wheel.so 模块要求用户必须在指定的 wheel 组内才能执行此操作。
    • auth required 表示该验证模块是必须的,如果验证失败,则整个验证过程失败。
    • group=wheel 指定只有 wheel 组的用户能通过该模块的验证。

总结

  1. pam_rootok.so 允许 root 用户无需密码即可通过验证。
  2. pam_wheel.so 要求使用 su 命令时,只有 wheel 组的用户可以进行身份切换。

看来,导致问题发生的原因找到了,就是下面这个配置引起的:

auth required pam_wheel.so group=wheel 

按照上面的解释,说明test用户不在wheel组里面。那么,wheel组有什么用呢?

wheel 组的用途

wheel 组通常用于限制某些高级管理操作,比如使用 su 切换用户。在某些系统上,只有 wheel 组中的用户才能使用 su 切换到 root 用户。

要查看系统中哪些用户属于 wheel 组,可以通过以下几种方式来检查:

1. 使用 grep 命令

可以通过查看 /etc/group 文件,找到 wheel 组及其成员:

[root@localhost pam.d]# grep '^wheel' /etc/group
wheel:x:10:admin
[root@localhost pam.d]#

这表示 wheel 组(组ID为 10)包含 admin 用户。

2. 使用 getent 命令

getent 命令也可以用来查找 wheel 组的成员:

[root@localhost pam.d]# getent group wheel
wheel:x:10:admin
[root@localhost pam.d]#

结果同上面是一样的。 

/etc/group 文件中,我们还会看到这种形式:

wheel:x:10:root,user1,user2

上面的结果表示 wheel 组的组名为 wheel,组ID为 10,该组包含的成员有 rootuser1user2。 

字段解释:
  • wheel: 组名,即表示这个组的名字是 wheel

  • x: 表示密码字段。在大多数现代系统中,组密码功能通常未启用,因此该字段一般设置为 x。密码信息通常存储在 /etc/gshadow 文件中,而不是 /etc/group

  • 10: 组的 GID(Group ID),每个组都有一个唯一的组标识符。对于 wheel 组,GID 通常是 10,但这可能会根据系统有所不同。

  • root,user1,user2: 这是 wheel 组中的用户列表。列出的这些用户属于 wheel 组,意味着他们拥有该组的权限。例如,在某些系统中,只有 wheel 组的成员可以使用 su 切换到 root 用户。这段中包含的用户有 rootuser1user2

我们还会看到,有的组后面没跟用户列表,还是拿wheel组来举例吧:

wheel:x:10:

上面的结果意味着目前没有普通用户被添加到 wheel 组,只有 root 用户默认属于该组。

字段解释:
  • wheel: 组名是 wheel
  • x: 表示密码字段。在现代系统中通常未启用组密码,因此这个字段显示为 x
  • 10: 这是 wheel 组的 GID(组标识符)。
  • 用户列表为空: 表示当前没有普通用户被分配到 wheel 组,只有 root 用户(系统默认)属于这个组。

好了,到此为止,我们基本上弄清楚了,为什么会出现test用户无法su root的问题。如何解决这个问题呢?

两种解决方法

  1. 将那行配置注释掉,但这么操作,将使系统的安全性降低,不推荐。
  2. 将test用户增加到wheel组中。 

接下来,就介绍下第二种方法。

如何添加用户到 wheel

可以使用以下命令:

sudo usermod -aG wheel username

其中,username 是要添加到 wheel 组的用户名,比如我们创建的test账号。

添加成功后,用户将拥有 wheel 组的权限,比如可能能够使用 su 切换到 root

参数解释:

usermod 命令中,-aG 是两个选项的组合,具体解释如下:

  • -a 选项

-aappend(追加)的意思,表示将用户添加到新的组时不会从其他组中删除。换句话说,它会将用户追加到新的组,同时保持用户在其他组中的现有成员身份。如果不加 -a,用户会从当前所有组中移除,只保留新指定的组。

  • -G 选项

-Ggroups 的意思,用于指定要将用户添加到的组列表。你可以通过此选项指定多个组,用户将被加入这些组中。

  • -aG 的组合

-a-G 组合使用时,表示将用户追加到指定的组而不会影响其现有的组成员身份。例如:

所以,上面这条命令的作用是将 username 用户添加到 wheel 组,同时保留该用户在其他组中的成员资格。如果你仅使用 -G 而没有 -a,则会覆盖用户的所有组信息,只保留用户在 wheel 组中的成员身份。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2108824.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

彻底解决 node/npm, Electron下载失败相关问题, 从底层源码详解node electron 加速配置

最近玩了一下electron项目, 总是会遇到electron的下载失败问题, 于是看了一下node源码, 做一个记录. node/npm 加速配置 这个配置通过设置node配置里面的registry 这个配置项来完成加速. 配置方法 npm config set registry https://registry.npmmirror.com上面的命令就是将当…

day42-测试平台搭建之前端vue学习-基础1

一、Vue是什么 1.1.一套用于构建用户界面的渐进式JavaScript框架 1.2.渐进式 Vue可以自底向上逐层的应用 1).简单应用:只需一个轻量小巧的核心库 2).复杂应用:可以引ll入各式各样的Vue插件 二、Vue特点 2.1.采用组件化模式,提高代码复用率、…

翻译论文的关键部分 | Parallel Tiled QR Factorization for Multicore Architectures

SSRFB DTSQT2 DLARFB DGEQT2 1, 对角子矩阵分解 DGEQT2 这个例程被开发出来,用于针对对角Tile子矩阵: ,执行不分块的QR分解。 这个运算产生: 一个上三角矩阵 一个酉下三角矩阵,这个矩阵包含 b 个 Householder 反光面…

跨平台打印模板转化pdf源码--SAAS本地化及未来之窗行业应用跨平台架构

一、跨平台打印转pdf渲染 pdf渲染模式可以支持国产化系统,和手机系统,安卓,苹果系统,qq浏览器,火狐,谷歌刘安祺 二、代码 /* ///cyberwin_offline_database_printtemp.js未来之窗打印模板解析技术 2024-…

maven的作用

一.什么是maven? maven是apache旗下的一个开源项目,是一款用于管理和构建java项目的工具。 关于Apache软件基金会,是目前世界最大的最受欢迎。 二.Maven的作用? 1.依赖管理 方便快捷的管理项目依赖的资源(jar包),避免版本冲突问题。 配置文件(pom.x…

Android UID 和 userID 以及 appID

我们知道Android 操作系统是基于Linux内核的,所以Android 的UID 是基于 Linux UID的。 Linux UID Linux 本身就是一个多用户操作系统,每一个用户都会有一个UID,不同UID 之间的资源访问是受限的。 其中,Linux的DAC权限模型&#…

mysql笔记2(安装配置与连接)

文章目录 1. 社区版两种安装包2. mysql是一个典型的C/S架构的软件3. 编写mysql代码的三个位置① cmd② mysql软件客户端③ 第三方软件Hyper 4. 常见的关系型数据库① myql② sql server③ oracle 5. 连接mysql① 为什么要连?② cmd里怎么连? 6. 清屏与退…

直线上最多的点数

优质博文:IT-BLOG-CN 题目 给你一个数组points,其中points[i] [xi, yi]表示X-Y平面上的一个点。求最多有多少个点在同一条直线上。 示例 1: 输入:points [[1,1],[2,2],[3,3]] 输出:3 示例 2: 输入&am…

中间件解析漏洞(附环境搭建教程)

⼀:IIS解析漏洞 环境资源: https://download.csdn.net/download/Nai_zui_jiang/89717504 环境安装 windows2003iis6 1.创建新的虚拟机 2.在下⼀步中选择我们的iso⽂件镜像 vm已主动识别到windows2003 3.产品密钥⽹上搜⼀个 密码自己设置一个简单的&…

Depop被封如何恢复?如何申诉?可以解封吗?

Depop 是一个受欢迎的在线市场,帮助用户在全球范围内买卖服装、时尚物品和其他配饰。然而,与其他在线平台一样,Depop 有每个用户必须遵守的准则和规则,以确保市场安全公平。其中一条规则是,您不得拥有多个帐户&#xf…

Docker核心原理解读:深度剖析Docker Daemon,掌控容器背后的引擎

容器技术已经成为现代应用程序开发和部署中的核心工具,而在Docker生态系统中,Docker Daemon 扮演着至关重要的角色。它不仅是Docker架构的核心,还负责容器的管理、镜像的操作、资源的分配等复杂任务。本文将深入解读Docker Daemon的工作原理&…

【2024高教社杯全国大学生数学建模竞赛】ABCDEF题 问题分析、模型建立、参考文献及实现代码

【2024高教社杯全国大学生数学建模竞赛】ABCDEF题 问题分析、模型建立、参考文献及实现代码 1 比赛时间 北京时间:2024年9月5日 18:00-2024年9月8日20:00 2 思路内容 2.1 往届比赛资料 【2022高教社杯数学建模】C题:古代玻璃制品的成分分析与鉴别方案…

导入word模板的数据到DB,偏自学,可自改套用

GetMapping("/importTestPeople")public void importTestPeople(RequestParam("file") MultipartFile multipartFile) throws IOException {InputStream inputStream null;File file null;try {// 创建临时文件file File.createTempFile("temp&quo…

【2024数模国赛赛题思路公开】国赛C题第二套思路丨附可运行代码丨无偿自提

2024年国赛C题第二套解题思路 第一问:2024~2030年农作物的最优种植方案 【问题分析】 题目要求为某乡村在2024~2030年制定农作物的最优种植方案,目的是最大化收益,并需考虑两种销售情况: 1. 超过预期销售量的部分滞销&#xff0…

首席数据官职位设置流程解析

首席数据官专业能力验证(CDO Professional Competency Certification)旨在评估并验证那些精通国内外数据安全合规政策、擅长构建数据安全体系以及熟练掌握数据安全管理流程与技术防护手段的专业人士的能力。 为加强数据安全领域的人才队伍建设&#xff…

【网络安全】服务基础第一阶段——第七节:Windows系统管理基础---- Web与FTP服务器

将某台计算机中的⽂件通过⽹络传送到可能相距很远的另⼀台计算机中,是⼀项基本的⽹络应⽤,即⽂件传送。 ⽂件传送协议FTP (File Transfer Protocol)是因特⽹上使⽤得最⼴泛的⽂件传送协议。 涉及到文件的上传和下载,很…

2024 RustChinaConf 赞助商介绍

2024 RustChinaConf 得到了行业各界的广泛支持,在此向以下赞助商表示感谢! 非凸科技 非凸科技是一家全栈使用Rust的金融科技公司,致力于为券商、私募、公募等金融机构及个人投资者提供一站式数智交易领域服务解决方案。作为本次大会的钻石赞助…

常见概念 -- 色度色散与偏振模色散

色度色散(CD) 由于光纤中不同波长对应不同的传输速度,不同波长到达相同距离的光纤的时间不同,从而导致光脉冲展宽。 偏振模色散(PMD) 由于光纤的随机性双折射,不同相位状态的光传播速度不同,使光脉冲展宽。 色散对系统的影响 C…

【办公效率】Axure会议室预订小程序原型图,含PRD需求文档和竞品分析

作品说明 作品页数:共50页 兼容版本:Axure RP 8/9/10 应用领域:中小型企业的会议室在线预订 作品申明:页面内容仅用于功能演示,无实际功能 作品特色 本作品为会议室预订小程序原型图,定位于拥有中大型…

太速科技-VC709E 基于FMC接口的Virtex7 XC7VX690T PCIeX8 接口卡

VC709E 基于FMC接口的Virtex7 XC7VX690T PCIeX8 接口卡 一、板卡概述 本板卡基于Xilinx公司的FPGA XC7VX690T-FFG1761 芯片,支持PCIeX8、两组 64bit DDR3容量8GByte,HPC的FMC连接器,板卡支持各种FMC子卡扩展。软件支持windows&#xf…