Brc's blog
首页
前端
后端
运维
  • 工作笔记
  • 分类
  • 标签
  • 归档
关于

Brc

努力中
首页
前端
后端
运维
  • 工作笔记
  • 分类
  • 标签
  • 归档
关于
  • Linux基础

    • Bash shell
    • 文件属性
    • 编辑工具vim
    • 用户管理
    • 用户组管理
    • 普通用户提权
      • su命令身份切换
        • Shell登陆分类
        • 环境变量配置文件
        • su与环境变量的关系
      • sudo命令提权
        • sudo的由来
        • sudo快速起步
    • 基础权限
    • 特殊权限
    • 文件特殊属性
    • IO重定向
    • 文件查找
    • 文件压缩
    • 软件包管理

    • 磁盘管理

    • 进程管理
    • 计划任务
    • systemd
    • Supervisor
    • 网络管理

    • Chrony时间同步
    • NFS网络文件系统
  • Linux进阶

  • 其他

  • 运维
  • Linux基础
Brc
2021-07-04
目录

普通用户提权

往往公司的服务器对外都是禁止root用户直接登录,所以我们通常使用的都是普通用户,当我们使用普通用户执行/sbin目录下部分命令时,会发现没有权限,这种情况我们可以使用如下两种方式:su、sudo

  • su switch user身份切换,使用普通用户登录,然后使用su命令切换到root
    • 优点:简单
    • 缺点:需要知道root密码
  • sudo提权,当需要使用root权限时进行提权,而无需切换至root用户
    • 优点:安全、方便、
    • 缺点:需要预先定义规则、较为复杂

# su命令身份切换

  • 在使用su切换身份前,我们需要了解shell登陆分类、环境变量配置文件加载顺序;

# Shell登陆分类

  • 登陆shell需要输入用户名和密码才能进入Shell,日常接触的最多的一种
  • 非登陆shell不需要输入用户和密码就能进入Shell,比如运行bash会开启一个新的会话窗口

# 环境变量配置文件

  • profile类文件:设定环境变量,登陆前运行的脚本和命令
  • bashrc类文件:设定本地变量,定义命令别名
  • 用户配置文件:
    • ~/.bash_profile
    • ~/.bashrc
  • 全局环境变量:
    • /etc/profile
    • /etc/profile.d/*.sh
    • /etc/bashrc
  • 登录式shell配置文件加载顺序︰/etc/profile->/etc/profile.d/*.sh->~/.bash_profile->~/.bashrc->/etc/bashrc
  • 非登录式shell配置文件加载顺序:~/.bashrc->/etc/bashrc->/etc/profile.d/*.sh

# su与环境变量的关系

  • su - username属于登陆式Shell
  • su username属于非登陆式Shell
  • 它们最大的区别就在于加载的环境变量不一样;

普通用户使用su切换到root用户,需要输入root超级管理员密码;

[bi@web ~]$ su - root
密码:
[root@web ~]# pwd
/root
1
2
3
4

以某个用户的身份执行某个服务,使用命令su - username -c 'command'

# 只执行命令,不会切换到用户
[root@web ~]# su - bi -c 'ifconfig'
[root@web ~]# su - bi -c 'ls ~'
1
2
3

# sudo命令提权

# sudo的由来

su命令在用户身份切换时,需要拿到root管理员密码;在多人协作时,如果当中某个用户不小心泄露了root密码;那系统会变得非常不安全,为了改进这个问题,从而就有了sudo;

其实sudo就是给某个普通用户埋下了浩克hulk的种子,当需要执行一些特权操作时,进行发怒,获取最高权限,但正常情况下还是普通用户,仍然会受到系统的约束以及限制;

# sudo快速起步

快速配置sudo方式[先睹为快]

  1. 将用户加入wheel组,默认wheel组有sudo权限;

    [root@web ~]# usermod bi -G wheel
    
    1
  2. 切换到普通用户身份;

    [root@web ~]# su - bi
    
    1
  3. 普通用户正常情况下无法删除/opt目录;

    [bi@web ~]$ rm -rf /opt/
    rm: cannot remove `/opt: Permission denied
    
    1
    2
  4. 使用sudo提权,然后输入普通用户密码,会发现能正常删除无权限的/opt目录;

    [bi@web ~]$ sudo rm -rf /opt
    
    1
  5. 后期可以通过审计日志查看普通用户提权都执行了什么操作;

    [root@web ~]# tail -f /var/log/secure
    
    1
#Linux
Last Updated: 2021/11/05, 14:31:43
用户组管理
基础权限

← 用户组管理 基础权限→

最近更新
01
谷歌云创建GKE集群
07-26
02
ElastiCacheForRedis启用密码
07-26
03
upload-to-gcs
06-29
更多文章>
Theme by Vdoing | Copyright © 2021-2024 Brc | MIT License | 浙ICP备19031881号-4
  • 跟随系统
  • 浅色模式
  • 深色模式
  • 阅读模式