• Linux中设置普通用户可以su和sudo


    一:设置普通用户可以使用su 

    su : 可以在一个登陆 session 下切换不同用户(通常是root).意思就是不需要退出当前用户的登录而切换到新用户.

    1、 vi /etc/pam.d/su

    第一个框:去掉注释之后,信任的wheel组用户su时候不用密码。

    第二个框:去掉注释之后,只有wheel的用户才能su。

    注意:以上是仅仅wheel组才可以su,如果改为其他组可以su的话,那么就把 use_uid 改为 group=chen即可(比如 chen组),这样chen组的用户可以su,wheel的用户就不能su了。

    2、把用户test1放到chen组中
    #usermod -a -G chen test1 (加-a ,意思是把test1添加到chen组中,也在原来的组中)
    如果想把用户test1只放到chen组中,从其他组删除,则:
    #usermod -G chen test1

    二:设置普通用户可以使用sudo

    sudo : 暂时切换到超级用户模式以执行超级用户权限,提示输入密码时该密码为当前用户的密码,而不是超级账户的密码.

    1 先查看系统是否安装sudo,可以使用命令 rpm -qa sudo 查看,若没有安装,可以使用yum安装  yum -y install sudo 

    [root@chen ~]# rpm -qa sudo
    sudo-1.8.19p2-10.el7.x86_64

    2 编辑 /etc/sudoers 文件  使用命令  visudo ( 而不是直接使用 vim /etc/sudoers ) , 可以新建一个组, 或者直接使用里面默认的wheel组 ( wheel前面的% 表示wheel是组, 如果没有%则表示wheel是普通用户 ), 

    [root@chen ~]# cat /etc/sudoers | grep wheel
    ## Allows people in group wheel to run all commands
    %wheel    ALL=(ALL)    ALL
    # %wheel    ALL=(ALL)    NOPASSWD: ALL
    [root@chen ~]# 

    3 把用户放到一个可以运行sudo命令的组中, 那么该用户就可以使用sudo了 ( 也可以在新建用户时候直接指定可以使用sudo命令的组中 )

    [root@chen ~]# usermod -aG wheel vbox
    [root@chen ~]# 
    [root@chen ~]# useradd -G wheel test
    [root@chen ~]# 
    [root@chen ~]# cat /etc/group | grep wheel
    wheel:x:10:vbox,test
    [root@chen ~]# 

    注意: 以上操作中,  /etc/sudoers 文件里面这一行  %wheel ALL=(ALL) ALL   意思是 wheel组的成员可以在任何地方运行所有命令, 如果想限制用户或组只能使用特定命令该如何设置呢?  请看下面

    举个例子: 如果设置一个test组,组成员可以在所有地方执行 cat useradd userdel usermod 命令,那么添加这一行  %test ALL=/bin/cat, /sbin/useradd, /sbin/userdel, /sbin/usermod  , 除了以上4条命令可以使用sudo之外,其他命令都不可以使用sudo 

    [test@chen ~]$ sudo cat /etc/sudoers | grep test%test    ALL=/bin/cat, /sbin/useradd, /sbin/userdel, /sbin/usermod
    [test@chen ~]$ 
    [test@chen ~]$ sudo ls /etc/sudoers
    Sorry, user test is not allowed to execute '/bin/ls /etc/sudoers' as root on chen.
    [test@chen ~]$ 
    [test@chen ~]$ sudo useradd user1
    [test@chen ~]$ cat /etc/passwd | grep user1
    user1:x:1008:1008::/home/user1:/bin/bash
    [test@chen ~]$ 
    [test@chen ~]$ sudo groupadd group1
    Sorry, user test is not allowed to execute '/sbin/groupadd group1' as root on chen.
    [test@chen ~]$ 
    [test@chen ~]$ sudo ls /etc/sudoers
    Sorry, user test is not allowed to execute '/bin/ls /etc/sudoers' as root on chen.
    [test@chen ~]$ 
    [test@chen ~]$ 

  • 相关阅读:
    证券市场主体
    证券投资基金
    1.监控系统的重要性
    1.五种世界顶级思维-20190303
    【四校联考】【比赛题解】FJ NOIP 四校联考 2017 Round 7
    【学长出题】【比赛题解】17-09-29
    【codeforces】【比赛题解】#854 CF Round #433 (Div.2)
    【codeforces】【比赛题解】#851 CF Round #432 (Div.2)
    【算法学习】三分法
    【codeforces】【比赛题解】#849 CF Round #431 (Div.2)
  • 原文地址:https://www.cnblogs.com/relax1949/p/9267294.html
Copyright © 2020-2023  润新知