第十章 组的创建

1.组的基本管理
[root@rlb~]# head -2 /etc/group
root❌0:
bin❌1:bin,daemon

// /etc/group由':' 分割, 分割为4个字段,每个字段的具体含义如下:
字段名称
1.组的名称
2.组的密码(存在/etc/gshadow)
3.组GID信息
4.仅显示附加成员,基本成员不显示

[root@rlb~]# head -2 /etc/gshadow
root:::
bin:::bin,daemon

// /etc/gshadow由 ':' 分割, 分割为4个字段,每个字段的具体含义如下:
字段名称
1.组名称
2.组密码   !:没有密码
3.组管理员
4.仅显示附加成员,基本成员不显示

组的分类
1.基本组
2.附加组

2.shell的分类
1.登录式shell
2.非登录式shell
3.交互式shell
4.非交互式shell

3.环境变量加载顺序

1)登录式shell
/etc/profile            age=10
/etc/profile.d/*.sh     age=11
~/.bash_profile         age=12
~/.bashrc               age=13
/etc/bashrc             age=14

2)非登录式shell
.bashrc
/etc/bashrc
/etc/profile.d/*.sh

如果有需求,所有用户都需要加载的环境变量,和登录式shell 非登录式shell都支持,把环境变量放在:
/etc/bashrc
/etc/profile.d/*.sh

总结:
1.登录式shell,会加载5个地方的环境变量
2.非登录式shell,会加载3个地方的环境变量
2.如果环境变量中配置冲突,最后一个加载的会把之前的冲突的配置覆盖

4.切换用户
su -

5.用户提权
1)sudo
-l:查看sudo的权限
usermod oldboy1 -G wheel

2)sudo配置免密码
    #1.普通用户执行sudo不需要输入密码配置
    [root@rlb ~]# visudo
    rlb ALL=(ALL) /bin/rm, /bin/cp  #默认
    rlb   ALL=(ALL)  NOPASSWD:/bin/rm, /bin/cp  #修改后
    
    #2.默认普通用户无权删除
    [rlb@rlb ~]$ rm -f /root/002
    rm: cannot remove `/root/002': Permission denied
    
    #3.验证sudo免密码执行权限
    [rlb@rlb ~]$ sudo rm -f /root/002

3)sudo配置组
    //如果每增加一个用户需配置一行sudo,这样设置非常麻烦。所以可以进行如下设置

    %rlb ALL=(ALL)     NOPASSWD:/bin/rm, /bin/cp  #新增组
    //group1这个组的所有用户都拥有sudo的权力。接下来只需要将用户加入该组即可。
    
    //创建用户加入该组
    [root@rlb ~]# groupadd rlb
    [root@rlb~]# useradd rlb1 -g rlb
    [root@rlb ~]# useradd rlb2 -g rlb
    
    //root用户建立目录
    [root@rlb ~]# mkdir /root/rlb_sudo
    
    //切换用户并删除测试
    [root@rlb ~]# su - rlb1
    [rlb1@rlb ~]$ rm -rf /root/rlb_sudo
    rm: cannot remove `/root/rlb_sudo': Permission denied
    
    //使用sudo
    [rlb1@rlb ~]$ sudo rm -rf /root/rlb_sudo

6.sudo企业案例
1)优化ssh禁止root用户登录
[root@oldboyedu ~]# vim /etc/ssh/sshd_config
修改禁止root用户登录
原来:
#PermitRootLogin yes
修改成:
PermitRootLogin no

修改ssh的端口
原来:
#Port 22
修改成:
Port 52013

2)重启ssh服务
[root@oldboyedu ~]# systemctl restart sshd

3)关闭防火墙
[root@oldboyedu ~]# systemctl stop firewalld

4)visudo
User_Alias USER_SU = rlb1,rlb2,rlb
Cmnd_Alias SU = /bin/su
USER_SU ALL=(ALL) NOPASSWD:SU

猜你喜欢

转载自www.cnblogs.com/ronglianbing/p/11734805.html