sudo-为普通用户提权

目录

sudo简介

Sudosubstitute user [或 superuser]do)是linux系统管理指令,允许系统管理员委派授权给某些用户(或用户组)以root用户或其他用户身份运行某些(或全部)命令的能力,同时提供命令及其参数的审计跟踪。

官网:https://www.sudo.ws

sudo特性

  • sudo能够授权指定用户在指定主机上运行某些命令。 如果未授权用户尝试使用 sudo,会提示联系管理员。
  • sudo可以提供日志,记录每个用户使用sudo操作。
  • sudo为系统管理员提供配置文件,允许系统管理员集中地管理用户的使用权限和使用的主机。
  • sudo使用时间戳文件来完成类似“检票”的系统,默认存活期为5分钟的“入场券” 。

相关文件

配置文件: /etc/sudoers,/etc/sudoers.d/ 可以修改/etc/sudoers也可以在/etc/sudoers.d/目录下新建配置文件

时间戳文件:/var/db/sudo

日志文件:/var/log/secure

配置文件
配置支持使用通配符glob
  • :任意单一字符
  • *:匹配任意长度字符
    • [wxc]:匹配其中一个字符
    • [!wxc]:除了这三个字符的其他字符
  • x:转义
    • [[alpha]]:字母:示例:/bin/ls [[alpha]]*
配置文件规则:
  1. 别名定义:不是必须的除了
  2. 授权规则:必须的
授权规则格式:
  • user host=(runas) command

用户 登入主机=(代表用户) 命令

示例:root ALL=(ALL) ALL

  • 格式说明:

    • user:运行命令者的身份
    • username:用户名
    • #uid:用户UID
    • %group_name:组名
    • %#gid:用户组GID
    • User_Alias:用户别名

    用户别名:格式User_Alias USER=用户1,用户2...。例:User_Alias DBA=haiyun,wang;其中DBA是别名,haiyun,wang是别名内的用户。注:别名必须为大写。

  • host:通过哪些主机

    • iphostnameIP或者主机名
    • network(/netmask):网段
    • Host_Alias:主机别名

    主机别名:格式Host_Alias HOST=主机1,主机2...。例:Host_Alias HOST=192.168.8.10,192.168.8.100。其中:HOST是别名,192.168.8.10,192.168.8.100是别名中的IP。注:别名必须大写。

  • (runas):以哪个用户的身份
    • username:用户名
  • #uid:用户UID
  • %group_name:组名
  • %#gid:用户组GID
  • Runas_Alias:用户别名

    用户别名:格式Runas_Alias USER=用户1,用户2...。用法同User_Alias。注:别名必须大写。

  • command:运行哪些命令
    • command name:命令名称,注:写绝对路径
    • directory:目录下的命令
    • sudoedit:有编辑sudoers文件的权限,授权的用户可以自定义权限
    • Cmnd_Alias:命令别名
      命令别名:格式Cmnd_Alias CMD=命令1,命令2...。例:Cmnd_Alias CMD=/bin/cat,/bin/mount。其中,CMD为别名,/bin/cat,/bin/mount为别名中的命令。注:别名必须大写。

      命令执行不需要密码,在Commands前可以加NOPASSWD:CMD例如:haiyun ALL=(ALL) NOPASSWD: ALL。代表haiyun用户可以执行所有命令,且不需要密码。注:这只是一个例子,并不建议这么做。
  • 范例
    范例1:使用户haiyun能够有权限挂载/dev/sr0/mnt/cdrom目录下
    [root@A ~]# vi /etc/sudoers            #修改文件/etc/sudoers
    root    ALL=(ALL)   ALL             #在此行后面添加,下面内容。注:命令要写绝对路径
    haiyun ALL=(ALL) /bin/mount /dev/sr0 /mnt/cdrom
    [root@A ~]# su - haiyun                # 切换到haiyun用户
    [haiyun@A ~]$ sudo /bin/mount /dev/sr0 /mnt/cdrom # 使用sudo执行挂载命令
    [sudo] password for haiyun:                 # 输入用户haiyun的密码
    m
  • 2
    点赞
  • 6
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值