Linux 普通用户su root 权限的开启和禁止

linux系统为了限制权限,有时候需要禁止普通用户su到root用户, 首先先说明一下:

su     #只是切换到root用户, 不改变当前目录;
su -   #切换到root和改变目录到/root

wheel组的介绍

在Linux中wheel组就类似于一个管理员的组。通常在LUNIX下,即使我们有系统管理员root的权限,也不推荐用root用户登录。一般情况下用普通用户登录就可以了,在需要root权限执行一些操作时,再su登录成为root用户。但是,任何人只要知道了root的密码,就都可以通过su命令来登录为root用户,这无疑为系统带来了安全隐患。

所以,将普通用户加入到wheel组,被加入的这个普通用户就成了管理员组内的用户,但如果不对一些相关的配置文件进行配置,这个管理员组内的用户与普通用户也没什么区别–就像警察下班后,没有带枪、穿这便衣和普通人(用户)一样,虽然他的的确确是警察。

根据应用的实例不同应用wheel组的方法也不同。这里对于服务器来说,我们希望的是剥夺被加入到wheel组用户以外的普通用户通过su命令来登录为root的机会(只有属于wheel组的用户才可以用su登录为root)。这样就进一步增强了系统的安全性。具体步骤如下:

修改 /etc/pam.d/su 文件,找到

#auth required /lib/security/$ISA/pam_wheel.so use_uid

这一行,将行首的“#”去掉。

修改 /etc/login.defs 文件,在最后一行增加“SU_WHEEL_ONLY yes”语句。
然后,用“usermod -G wheel 用户名”将一个用户添加到wheel组中。

usermod -G wheel 用户名

用刚刚被添加到wheel组的用户登录,并执行su命令登录为root用户。这时输入了正确的root密码可以正常的登录为root用户。但是,如果换成一个不属于wheel组的用户时,执行了su命令后,即使输入了正确的root密码,也无法登录为root用户。普通用户登录为root用户的权限被完全剥夺了。(会收到“密码错误”的提示)。这样无疑提高了系统的安全性。

以上步骤基于CentOS,并适用于Fedora Core和RHEL。接下来我们来操作验证一下,具体的操作步骤如下:

一、实验环境

[root@t2 pam.d]# cat /etc/redhat-release
CentOS Linux release 7.2.1511 (Core)
[root@t2 pam.d]# uname -a
Linux t2 3.10.0-514.el7.x86_64 #1 SMP Tue Nov 22 16:42:41 UTC 2016 x86_64 x86_64 x86_64 GNU/Linux

二、详细配置

(1)去除/etc/pam.d/su文件中如下行的注释:

vi /etc/pam.d/su


(2)在/etc/login.defs文件中加入如下配置项:

vim /etc/login.defs添加:
SU_WHEEL_ONLY yes


经过上述配置后,普通用户将被禁止su至root,如果希望指定普通用户su至root,可以执行如下命令将该用户添加至wheel组中:

usermod -G wheel username
或者
gpasswd -a username wheel

三、场景示例

方法1:

[root@t1 ~]# id a1
uid=1001(a1) gid=1001(a1) groups=1001(a1),10(wheel)
[root@t1 ~]# id a2
uid=1002(a2) gid=1002(a2) groups=1002(a2)

验证

[a1@t1 ~]$ su - root
Password:
Last login: Fri Apr 19 16:40:23 CST 2019 from 10.0.0.1 on pts/2
[root@t1 ~]# [a2@t1 ~]$
[a2@t1 ~]$ su - root
Password:
su: Permission denied

方法2:修改 /etc/pam.d/su文件中如下行:

vim /etc/pam.d/su#auth    required    pam_wheel.so use_uid
auth    required    /lib64/security/pam_wheel.so use_uid group=wheel
#路径不加也是可以的,因为我的环境是x86架构的
auth    required    pam_wheel.so use_uid group=wheel

Linux普通用户su root权限的开启和禁止相关推荐

  1. linux 文件夹换所属用户,linux普通用户su root切换提示没有文件或目录的解决方法...

    1. 首先进入单用户模式: 1). ubuntu : 上述情况可以在grub界面选择第二项修复,但没有grub可以参考: 1.重启ubuntu,随即长按shirft进入grub菜单: 2.选择reco ...

  2. linux普通用户su root切换提示没有文件或目录

    linux普通用户su root切换提示没有文件或目录 用root无法远程和本地登录 普通用户可以远程登录,但是无法切换root 解决办法: 重启服务器进入单用户模式: 在grub上相应要启动的内核上 ...

  3. Linux中su无法切换到目录,linux普通用户su root切换提示没有文件或目录的解决方法...

    1. 首先进入单用户模式: 1). ubuntu : 上述情况可以在grub界面选择第二项修复,但没有grub可以参考: 1.重启ubuntu,随即长按shirft进入grub菜单: 2.选择reco ...

  4. linux普通用户获取root权限_小米CC9和小米CC9e TWRP3.2-3.3已发布-最简单刷机-获取ROOT权限...

    小米CC系列属于小米的新家族,主打的就是自拍类,很多小伙伴们购买这2款机型 ROM乐园官网,已率先支持以上2款机型的第三方TWRP_recovery,可以轻松的获取 ROOT权限和刷入刷机包,目前小米 ...

  5. Linux切换用户su root 与 su - root 的区别

    区别在与是否切换环境变量 su  后面不加用户是默认切到 root su  是不改变当前变量 su - 是改变为切换到用户的变量  也就是说su只能获得root的执行权限,不能获得环境变量 而su - ...

  6. linux sudo漏洞 可导致用户以 root 权限运行命令

    Linux 用户要注意了!几乎所有基于 UNIX 和 Linux 的操作系统上安装的核心命令,也是最重要.最强大也最常用的工具 Sudo中被曝存在一个漏洞. Sudo 的全称是"superu ...

  7. java linux root权限管理_新的 Linux sudo 漏洞使本地用户获得 root 权限

    近日被技术专家所发现的新 sudo 漏洞允许任何本地用户在不需要任何身份验证的情况下就可以在类 Unix 操作系统上获得 root 权限. Sudo 实际上就是一个 Unix 程序,它使系统管理员可以 ...

  8. linux sudo权限_Linux Sudo 被曝漏洞,可导致用户以 root 权限运行命令

    聚焦源代码安全,网罗国内外最新资讯!编译:奇安信代码卫士团队 Linux 用户要注意了!几乎所有基于 UNIX 和 Linux 的操作系统上安装的核心命令,也是最重要.最强大也最常用的工具 Sudo中 ...

  9. linux给普通用户分配root权限

    当我们想给如web用户添加root权限,有以下步骤: 使用root权限打开/etc/sudoers vim /etc/sudoers 找到root ALL=(ALL:ALL) ALL这一行,在下面添加 ...

  10. sudo命令普通用户提升root权限配置

    sudo命令普通用户提升root权限配置 1.概述 在操作linux时候,有些命令需要使用root权限才能执行,如果我们使用的是普通用户可以使用sudo命令将普通用户权限提升到root权限解决权限限制 ...

最新文章

  1. TileList自动滚动指定单元格,可视部分
  2. Eureka VS Zookeeper
  3. activeMq 安装
  4. HashMap,HashTable,ConcurrentHashMap面试总结!!!
  5. MySQL—表的完整性约束(外键约束)(一)
  6. maven 上传jar 包含源码
  7. Myeclipse8.5 反编译插件 jad 安装
  8. g++是什么_飞度车主开奔驰G级的一天,会是什么样的体验?
  9. codevs 5958 无
  10. 什么是阻塞和非阻塞?
  11. UI05 - UILabel05
  12. 388.文件的最长绝对路径
  13. iphone 6p拆机,换开机键排线
  14. Java调用WebService接口
  15. Ubuntu双系统、ROS、软件安装教程
  16. vs2013 格式化代码 快捷键
  17. vs2019编译libcef
  18. 华为手机pc模式机型_哪些手机型号外接便携显示器能实现PC电脑模式
  19. Python报错记录之“list indices must be integers or slices, not str”
  20. 你想收到中国向世界发出的第一封电子邮件吗

热门文章

  1. 护网笔记(三)-Windows基础、常用服务和入侵排查
  2. msn一直登陆不上,没有办法只好启用meebo!
  3. 微信开发验证php,解析微信公众平台开发之验证步骤实例(PHP版)
  4. 行列式的3种计算方法技巧和一点注意
  5. c语言变量赋值字母,C语言变量定义和赋值
  6. QQ加群组件-Android
  7. 图表控件AnyChart使用JavaScript创建维恩图
  8. solve函数c语言_c语言:回溯解数独程序
  9. flutter打包出错了,有大神帮忙看看吗?
  10. T2691 桶哥的问题——送桶