为了安全及管理的方便,可将需要用root权限的用户加入到sudo管理,用root的权限来管理系统。利用sudo控制用户对系统命令的使用权限。

普通用户可以查看,但不能删除:

但是在/tmp公共环境下可以搞事情:

下面我们授予bqh1用户root权限。

执行如下visudo 或者 vi /etc/sudoers命令,即可打开sudo的配置文件进行编辑:

可以vi编辑器的功能:输入98jj

现在我们用普通用户创建一个用户:

如果不加sudo的话,相当于调兵没带虎符。

如何只授权于某些命令呢?例如:(touch、useradd、mkdir、rm)

注意:授权的命令得写全路径,全路径不知道的情况下可以用which查。

执行命令每次都让输入密码,如何屏蔽:

看效果,并没有提示输入密码:

案例:

定义一个管理员,别名ADMINS,在SERVER机器可以切换的角色有QHJS,能够拥有ADM和USER命令权限,不希望输入密码;再定义一个初级管理员,拥有USER权限,不需要密码,具体配置如下:

执行如下visudo 或者 vi /etc/sudoers命令,即可打开sudo的配置文件进行编辑:

可以vi编辑器的功能:输入98jj查看当前配置情况。

###################sudo 格式 ###################

#root                  ALL=(ALL)               ALL

#User_Alias       Host_Alias = Runas_Alias      Cmnd_Alias

##################by sudo text#####################

定义用户或用户组别名:

User_Alias     ADMINS = bqh, %home

User_Alias     CHUJIADMIN=jyw

定义主机别名:

Host_Alias     SERVERS = bqh-01, abchost

定义命令别名:

Cmnd_Alias  USER = /usr/sbin/useradd

Cmnd_Alias  ADM = /bin/rm

定义切换角色别名:

Runas_Alias    QHJS = root

Runas_Alias    QHJS1 = bqh

###################################################

定义用户规则:

ADMINS      SERVERS = (QHJS) NOPASSWD:ADM, USER

CHUJIADMIN  SERVERS = (QHJS)  NOPASSWD:USER

我们切换到bqh用户下查看拥有哪些权限:

我们切换到jyw用户下查看拥有哪些权限:

我们添加新用户并加入到/home组下,再查看权限有哪些:

什么情况下使用上述别名:

大部分用ALL,工作中一般有多个系统用户,需要分类,分层次管理用户的时候才用定义。

sudo配置文件小结:

授权格则中的所有ALL字符串必须大写字母。

一行命令内容超长,可以用“\”斜线换行。

“!”叹号表示非,就是命令取反的一审,即禁止执行的命令。

命令的顺序是从后向前,即把禁止的命令写到后面,如:/usr/sbin/*,!/usr/sbin/visudo

sudo控制权限简单用法介绍的更多相关文章

  1. setuid、setgid、sticky的权限简单用法

    如何设置setuid.setgid.sticky的权限: setuid :置于 u 的 x 位,原位置有执行权限,就置为 s,没有了为 S . chmod 4xxx file chmod u+s xx ...

  2. rsync命令简单用法介绍

    rsync有两种常用的认证方式,一种为rsync-daemon方式,另外一种则是ssh.在一些场合,使用rsync-daemon方式会比较缺乏灵活性,ssh方式则成为首选.但是今天实际操作的时候发现当 ...

  3. sudo控制用户对系统命令的使用权限

    sudo控制用户对系统命令的使用权限 sudo相关概念 普通用户涉及到超级权限的运用,管理员如果想让该普通用户通过su来切换到root获得超级权限,就必须把root权限密码告诉用户.但是如果普通用户有 ...

  4. ViewPager的简单用法+适配器+监听器的介绍

    之前的actionbar+fragment文章中写过viewpager的简单用法,但因为是融合的文章,所以今天把viewpager提取出来写了.方便查询浏览~ 思路: 1.在布局文件中设置viewpa ...

  5. JS的简单用法

    JS的简单用法 参考:http://www.w3school.com.cn/js/js_switch.asp JavaScript 是网络的脚本语言 JavaScript 是可插入 HTML 页面的编 ...

  6. slf4j的简单用法以及与log4j的区别

    之前在项目中用的日志记录器都是log4j的日志记录器,可是到了新公司发现都是slf4j,于是想着研究一下slf4j的用法. 注意:每次引入Logger的时候注意引入的jar包,因为有Logger的包太 ...

  7. richface的配置、用法介绍和注意事项

    richface的配置.用法介绍和注意事项一.RichFaces (3.1.x) 技术需求 1.JDK 1.5 或更高版本: 2.支持的 JSF 实现: Sun JSF 1.1 RI - 1.2 My ...

  8. centos shell脚本编程1 正则 shell脚本结构 read命令 date命令的用法 shell中的逻辑判断 if 判断文件、目录属性 shell数组简单用法 $( ) 和${ } 和$(( )) 与 sh -n sh -x sh -v 第三十五节课

    centos   shell脚本编程1 正则  shell脚本结构  read命令  date命令的用法  shell中的逻辑判断  if 判断文件.目录属性  shell数组简单用法 $( ) 和$ ...

  9. (数据科学学习手札54)Python中retry的简单用法

    一.简介 retry是一个用于错误处理的模块,功能类似try-except,但更加快捷方便,本文就将简单地介绍一下retry的基本用法. 二.基本用法 retry: 作为装饰器进行使用,不传入参数时功 ...

随机推荐

  1. Solidity遍历

    实际上,映射对于存储地址的标记值非常有用. 我们在许多合约中都看到了它们,它们通常以这种方式定义: mapping (address => uint) public users; 由于映射是公共 ...

  2. Golang数组Array

    数组Array 定义数组的格式:var [n], n>0 package main import ( "fmt" ) func main() { //数组的长度也是类型的一部 ...

  3. [总结]多项式求逆代替分治 $\text{FFT}$

    目录 问题提出 求逆代替分治 代码实现 由于我懒得不想学蠢得学不会分治 \(\text{FFT}\) ,发现可以用多项式求逆来完整地代替... 文章节选自分治 FFT 与多项式求逆,转载方便自己查看. ...

  4. jQuery补充知识点

    链式编程 通常情况下,只有设置操作才能把链式变成延续下去.因为获取 操作的时候,会返回获取到的响应的值,无法反对jQuery对象. //end(); 筛选选择器会改变jQuery对象的DOM对象,想要 ...

  5. swagger2的使用

    springboot项目里怎么使用swagger2? 1.maven依赖 <dependency> <groupId>io.springfox</groupId> ...

  6. 深入理解Java虚拟机--阅读笔记一

    Java内存区域 一.java运行时数据区域 1. 程序计数器:程序计数器占据的内存空间较小,是当前运行线程执行的字节码的计数:分支.循环.跳转.异常处理.线程恢复等都要依赖技术器来对执行的字节码进行 ...

  7. Java生成代码(字节码)

    一.方式 代码生成器 & IDE 编译时代码生成: Pluggable Annotation Processing API 运行时代码生成: Compiler API 运行时生成字节码: cg ...

  8. HDU2255(KB10-K 二分图最大权匹配)

    奔小康赚大钱 Time Limit: 1000/1000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Others)Total Subm ...

  9. pycharm 光标快速移动到括号外或行尾

    coupon = models.ForeignKey("Coupon", on_delete=models.CASCADE) pycharm中编写程序,  需要将光标快速移动到“” ...

  10. nodejs 知识总结

    作者QQ:1095737364    QQ群:123300273     欢迎加入! 1.添加模块:保存到package.json文件中; # npm install vue --save    注意 ...