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 ~]$ 

 

转载于:https://www.cnblogs.com/relax1949/p/9267294.html

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值