前端开发入门到精通的在线学习网站

网站首页 > 资源文章 正文

linux su 切换root 并输入root密码确正确但提示 su:Permission denied

qiguaw 2024-12-16 15:27:37 资源文章 17 ℃ 0 评论

通过普通用户登录Linux系统之后,当su切换为root,系统会提示输入root密码,root密码输入正确,但是系统功会出再卡顿一下,并提示su:Permission denied ,出现此情况一般是,用户的su的切换设置了一定权限。

一般可以通过以下两种方种解决:

  • 1、直接使用root登录并修改/etc/pam.d/su文件。在修改su文件之前,需要备份原始文件,以防修改出现问题。可以使用命令cp /etc/pam.d/su /etc/pam.d/su.bak来备份。
    将su文件中如下内容注释,
    在行首添加#
#auth required pam_wheel.so use_uid   
//这行启用表示的是只有wheel组的用户才可以切换至root。
  • 2、将其他用户添加至wheel组中
    首先登录root,通过
    usermod -G wheel 普通系统用户名,将普通系统用户添加到wheel组中。
usermod -G wheel xiaohua

/etc/pam.d/su知识拓展:

  1. su文件概述
  • /etc/pam.d/su是 Linux 系统中可插拔认证模块(PAM)用于控制su命令行为的配置文件。PAM 提供了一种灵活的方式来配置系统的认证、授权和记账等功能。
  • 这个文件的主要作用是定义了在用户使用su命令(用于切换用户身份,特别是切换到超级用户 root)时,系统如何进行身份验证和权限检查。通过配置不同的 PAM 模块,可以实现各种复杂的安全策略。
  1. 常见模块示例
  • auth sufficient pam_rootok.so:这是一个用于认证 root 用户的模块。它的作用是如果当前用户是 root,就直接通过认证,因为 root 用户在很多情况下被认为是具有最高权限的可信用户。
  • auth required pam_unix.so:这个模块用于使用 Unix 风格的认证方式来验证用户的密码。它会根据系统的/etc/passwd和/etc/shadow文件中的用户信息来检查密码是否正确。当用户使用su命令切换身份时,这个模块会检查输入的密码是否与目标用户(特别是 root 用户)的密码匹配。
  • account required pam_permit.so:此模块用于允许访问。它主要检查账户相关的属性,如账户是否被锁定、是否过期等情况。在su命令的配置中,它通常用于确保目标用户的账户状态是允许访问的。

Tags:

本文暂时没有评论,来添加一个吧(●'◡'●)

欢迎 发表评论:

最近发表
标签列表