一起来学linux:sudo
通常在转换用户的时候会用到su 用户的方式。但是su方式需要知道切换的用户密码。而且su root到roo账户后,root账户有全部的权限。为了防止root账户干错事,因此有了sudo的命令。sudo 顾名思义,super user do 它可以让普通账户执行root账户的权限。
其他账户能够执行sudo必须要在/etc/sudoers文件中添加,这个文件只有root账户才能编辑。还必须使用visudo编辑。之所以用visudo有两个原因:
1
防止两个用户同时修改 2
能进行有限的语法检查。
在添加权限前,我们先来看下当前账户的权限,比如我们想查看/etc/shadow文件的内容。在用zhf账户查询的时候提示没有权限。原因在于这个文件只有root账户才有权限使用
zhf@zhf-linux:~/zhf$
cat /etc/shadow
cat:
/etc/shadow: Permission denied
运行visudo命令。添加%zhf
ALL=(ALL:ALL) ALL
#
Allow members of group sudo to execute any command
%sudo
ALL=(ALL:ALL) ALL
%zhf
ALL=(ALL:ALL) ALL
zhf是用户帐号。第一个ALL代表登陆来源的主机号。
(ALL:ALL)
代表可转换的身份,我们可以在里面设置其他帐号名称比如zhf_test:zhf。这样当用命令sudo
-u zhf_test就会以zhf_test的身份去执行命令。
Sudo
-u zhf就会以zhf的身份去执行命令。
最后一个ALL代表可执行的命令。在这里我们赋予zhf所有root可执行的命令。添加之后我们继续来执行之前的命令。这个时候要采用sudo
cat /etc/shadow 来执行。输入用户名密码后,可以看到能查看etc/shadow文件的内容了
zhf@zhf-linux:~/zhf$
sudo cat /etc/shadow
[sudo]
password for zhf:
root:$3$2lx7mDyC$upA1ssj61RgHwUTonnKxJ1HqxEal71XsIIO4tNYiWDHRiytkYIMDhTiA9E6w0wkPD9KXIS5psm7977/njDkN9.:783420:111111:7:::
另外在下面这一行是配置组的组成员用户的sudo权限。
#
Members of the admin group may gain root privileges
%admin
ALL=(ALL) ALL
对于在/etc/sudoers中配置其他账户所有的权限也是有很多安全隐患的。因此我们一般对于账户能执行的命令是有约束的。比如下面就对zhf帐号进行了约束,授予了ifconfig以及ls的root权限。而其他命令则不涉及
%zhf
ALL=(ALL:ALL) sbin/ifconfig, /bin/ls
一起来学linux:sudo的更多相关文章
- Linux sudo 命令的应用
.note-content { font-family: "Helvetica Neue", Arial, "Hiragino Sans GB", STHeit ...
- 跟着鸟哥学Linux系列笔记3-第11章BASH学习
跟着鸟哥学Linux系列笔记0-扫盲之概念 跟着鸟哥学Linux系列笔记0-如何解决问题 跟着鸟哥学Linux系列笔记1 跟着鸟哥学Linux系列笔记2-第10章VIM学习 认识与学习bash 1. ...
- 跟着鸟哥学Linux系列笔记2-第10章VIM学习
跟着鸟哥学Linux系列笔记0-扫盲之概念 跟着鸟哥学Linux系列笔记0-如何解决问题 跟着鸟哥学Linux系列笔记1 常用的文本编辑器:Emacs, pico, nano, joe, vim VI ...
- 跟着鸟哥学Linux系列笔记0-如何解决问题
跟着鸟哥学Linux系列笔记0-扫盲之概念 在发生问题怎么处理: 1. 在自己的主机.网络数据库上查询How-To或FAQ -Linux 自身的文件数据: /usr/share/doc -CLDP中 ...
- 跟着鸟哥学Linux系列笔记1
跟着鸟哥学Linux系列笔记0-扫盲之概念 跟着鸟哥学Linux系列笔记0-如何解决问题 装完linux之后,接下来一步就是进行相关命令的学习了 第五章:首次登录与在线求助man page 1. X ...
- 为学Linux,我看了这些书
为学Linux,我看了这些书 去年开始,抱着学习的态度开始了我的Linux学习,到现在,差不多一年了,收获很多,不敢说精通Linux,但是,还是对得起"略懂"这两个字的.这一年 ...
- 十天学Linux内核之第十天---总结篇(kconfig和Makefile & 讲不出再见)
原文:十天学Linux内核之第十天---总结篇(kconfig和Makefile & 讲不出再见) 非常开心能够和大家一起分享这些,让我受益匪浅,感激之情也溢于言表,,code monkey的 ...
- 十天学Linux内核之第九天---向内核添加代码
原文:十天学Linux内核之第九天---向内核添加代码 睡了个好觉,很晚才起,好久没有这么舒服过了,今天的任务不重,所以压力不大,呵呵,现在的天气真的好冷,不过实验室有空调,我还是喜欢待在这里,有一种 ...
- 十天学Linux内核之第八天---构建Linux内核
原文:十天学Linux内核之第八天---构建Linux内核 今天是腊八节,说好的女票要给我做的腊八粥就这样泡汤了,好伤心,好心酸呀,看来代码写久了真的是惹人烦滴,所以告诫各位技术男敲醒警钟,不要想我看 ...
- 十天学Linux内核之第七天---电源开和关时都发生了什么
原文:十天学Linux内核之第七天---电源开和关时都发生了什么 说实话感觉自己快写不下去了,其一是有些勉强跟不上来,其二是感觉自己越写越差,刚开始可能是新鲜感以及很多读者的鼓励,现在就是想快点完成自 ...
随机推荐
- 2016北京集训测试赛(九)Problem C: 狂飙突进的幻想乡
Solution 我们发现, 对于一条路径来说, 花费总时间为\(ap + q\), 其中\(p\)和\(q\)为定值. 对于每个点, 我们有多条路径可以到达, 因此对于每个区间中的\(a\)我们可以 ...
- 人生中的那口井 z
有两个和尚住在隔壁,每天都会在同一时间下山去溪边挑水,不知不觉己经过了五年. 突然有一天,左边这座山的和尚没有下山挑水,过了一个星期,还是没有下山挑水. 直到过了一个月,右边那座山的和尚很担心就去探望 ...
- VS2010 MFC中 窗口分割的实现
分割窗口概述 分割窗口,顾名思义,就是将一个窗口分割成多个窗格,在每个窗格中都包含有视图,或者是同一类型的视图,或者是不同类型的视图. MFC分割窗口的方式有两种,动态分割和静态分割. 动态分割窗口通 ...
- vs2012搭建OpenGL环境
1. 下载glut库 glut库地址为:http://www.opengl.org/resources/libraries/glut/glutdlls37beta.zip glut全称为:OpenGL ...
- Mockito 如何 mock 返回值为 void 的方法
转载:https://unmi.cc/mockito-how-to-mock-void-method/#more-7748 最初接触 Mockito 还思考并尝试过如何用它来 mock 返回值为 vo ...
- Android的Framework分析---5 ActivityManager分析
Android系统开发交流群:484966421 OSHome. 微信公众号:oshome2015 watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font ...
- leetcode 46-Permutations and 47-Permutations II
Permutations Given a collection of numbers, return all possible permutations. For example, [1,2,3] h ...
- poj1691--Painting A Board(拓扑+dfs)
题目链接:点击打开链接 题目大意:一个矩形由n个小矩形组成,如今要给小矩形染色,可是颜料会向下滑,为了防止弄乱颜料,所以要先染上面的矩形,后然染以下的矩形.每一次改变颜色都要用一个新的刷子.问最小用多 ...
- Problem F
Time Limit : 2000/1000ms (Java/Other) Memory Limit : 65536/32768K (Java/Other) Total Submission(s) ...
- sakila演示数据库安装
下载地址:https://dev.mysql.com/doc/index-other.html 安装帮助文档:https://dev.mysql.com/doc/sakila/en/sakila-in ...