2019-12-26

sudo是为所有想使用root权限的普通用户设计的。可以让普通用户具有临时使用root权限的权利,只需要普通用户输入自己账户的密码即可。当然这个普通用户必须在/etc/sudoers文件中具有配置项,才具有使用sudo的权利。


没有配置权限之前,普通用户是无法进行root权限操作的,例如普通用户查看/root目录下的文件:


[if !vml]

[endif]


使用root用户编辑/etc/sudoers文件,给普通用户授权


命令行输入visudo,打开/etc/sudoers文件,加入如下的内容,保存:

[if !vml]

[endif]



这样普通用户就可以使用sudo执行需要root权限的命令了,如下:

[if !vml]

[endif]



 sudo的工作过程如下:


1. 当用户执行sudo时,系统会主动寻找/etc/sudoers文件,判断该用户是否有执行sudo的权限


2. 确认用户具有执行sudo的权限后,让用户输入自己的密码进行确认


3. 若密码输入成功,则开始执行sudo后续的命令


如果想要更加精准的控制普通用户使用sudo的场景,就需要理解配置中的含义。


user-1 ALL=(ALL)    ALL


第一个ALL是指网络中的主机,我们可以指定主机名,这样user-1用户只可以在此主机上执行后面的命令。第二个括号里的ALL是指目标用户,也就是以谁的身份去执行命令,最后一个命令指命令名称。


例如,我们想让user-1用户在node-1主机上以allen的身份执行kill命令,就可以这样编写配置文件:


user-1 node-1=(allen)   /bin/kill


案例:只允许user-1用户以root身份在node-1主机上执行ls、cat命令,并且执行的时候免输入密码。


需要修改/etc/sudoers配置文件:


user-1 node-1=NOPASSWD:   /bin/ls,/bin/cat

[if !vml]

[endif]


此时若user-1用户执行非ls、cat命令时会被禁止:

[if !vml]

[endif]



而ls命令就可以正常执行:

[if !vml]

[endif]

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 1.使用URL Scheme跳转到其他应用 如果我们想要跳转到别的应用,首先你要知道其他App的Scheme是什么...
    jojoaa阅读 163评论 0 0
  • 使用CentOS7.6安装MySQL5.6 前言 渔非鱼,要学会举一反三,MySQL其他版本安装大同小可 环境 服...
    浅水魚阅读 444评论 0 0
  • 摘录自:https://neuqzxy.github.io/2017/07/08/wget%E7%9A%8415%...
    vicLeo阅读 601评论 0 0
  • 1.1 基础建设阶段 英文 遇到重复单词3次以上记录句子:错误提示含义如何排查看懂 命令150个左右 知识点 排错...
    之I音阅读 144评论 0 0
  • 文/小妖 01 有天早上,我起床后慢悠悠地从楼梯上往下走,听到后门处窸窸窣窣地翻动柴禾声,便轻声唤了声妈妈。 我本...
    Max的书桌阅读 333评论 0 10