• Linux中如何禁止普通用户使用su命令


    su 命令是一个特殊的命令,它允许用户以另一个用户和组的身份运行命令。它还允许你切换到 root 帐户或另一个指定的用户帐户。

    要切换到另一个用户帐户,用户可以从他们当前的登录会话中运行 su 命令,如下所示,用户可以通过su切换用户:

    [bob@localhost ~]$ su - user01
    Password:
    


    默认情况下,所有用户都可以使用 su 命令。我们可以在/etc/sudoers中禁用su命令。

    若要切换到 root 帐户,用户必须具有 root 密码。在此示例中,用户正在切换到 root 帐户。

    [user01@localhost ~]$ su -
    Password:
    

    禁用普通用户的su访问

    禁用普通用户的 su 访问权限,首先,备份以下/etc/sudoers的原始文件,如下所示:

    [bob@localhost ~]$ sudo cp -p /etc/sudoers /etc/sudoers.back
    [sudo] password for bob:
    

    使用visudo命令打开sudoers配置文件

    [bob@localhost ~]$ sudo visudo
    

    ## Command Aliases部分下面添加如下行:

    Cmnd_Alias DISABLE_SU = /usr/bin/su
    


    然后在文件末尾添加以下行,将用户名 bob替换为需要禁用 su 访问权限的用户:

    bob ALL=(ALL) NOPASSWD: ALL, !DISABLE_SU
    


    保存退出

    使用bob用户验证一下。系统应返回如下错误消息 "Sorry, user bob is not allowed to execute '/bin/su - user01' as root on localhost.localdomain."

    [bob@localhost ~]$ sudo su - user01
    Sorry, user bob is not allowed to execute '/bin/su - user01' as root on localhost.localdomain.
    

    禁用用户组的su访问

    还可以禁用用户组的 su 访问权限。例如,要禁用组 wheel 中所有用户的 su 访问权限,可以执行下面命令:

    [bob@localhost ~]$ sudo visudo
    
    %wheel ALL=(ALL) ALL, !DISABLE_SU
    


    保存退出。

  • 相关阅读:
    Pytorch:tensor.mean()和tensor.sum()
    kafka无法启动的问题
    角度回归——角度编码方式
    线性代数 --- 四个基本子空间(个人学习笔记)
    [wp][RCTF2015]EasySQL
    【SA8295P 源码分析 (二)】12 - HQX Display(OpenWFD)调试命令介绍
    浅谈uniapp中开发安卓原生插件
    激活码问题解疑【点盾云】
    SpringBoot_整合Thymeleaff模板引擎
    代码研发规范考试
  • 原文地址:https://blog.csdn.net/linux_hua130/article/details/127582144