linux系统root具有至高无上的权限,工作生产环境或者VPS一般为了安全起见,禁止root登录,禁止root用户权限,使用普通用户登录,有特殊需求可以su或sudo切换到root权限进行操作,下面介绍一个方法只允许特定的组用户su切换到root:


1、新建普通用户,比如baby

1
useradd   baby

2、修改密码

1
passwd  baby

3、将帐号加入wheel组

1
usermod  -G wheel baby

4、设置只允许这个组的帐号,使用su命令切换到root

vi /etc/pam.d/su

找到#auth            required        pam_wheel.so use_uid

去掉行首的注释符 # 保存退出;

接着vi /etc/login.defs

在最末添加SU_WHEEL_ONLY yes 保存退出即可。

或者执行 

1
echo  "SU_WHEEL_ONLY yes" >> /etc/login .defs

现在,再建立新的普通帐号,是无法使用su命令切换到root组了。

实验验证:

1
2
3
4
5
6
7
8
9
10
11
12
13
[root@localhost ~] # su - baby
[baby@localhost ~]$  whoami  
baby
[baby@localhost ~]$  su  -
Password:
[root@localhost ~] # whoami
root
[root@localhost ~] # su - anglea
[anglea@localhost ~]$  whoami
anglea
[anglea@localhost ~]$  su  -
Password:
su : incorrect password


baby属于wheel组,wheel组的用户只允许su切换到root;anglea不属于wheel组,正确输入root的密码也提示不正确的密码,无法切换到root;

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐