序言:

/etc/sudoers的规则可分为两类:

一类是别称定义[略]。

一类是授权规则。

别称定义并不是必须的,授权规则是必须的。

若果系统中只有几个少量用户,设置权限有限的话,可以不用定义别称linux双机切换命令,针对系统用户直接授权。

简单的扯一下授权规则:

格式:

授权用户主机=[(切换到什么用户或用户组)][是否须要密码验证][命令1],

[(切换到什么用户或用户组)][是否须要密码验证][命令2],……

简化:

授权用户主机=命令动作

主机=ALL:表示授权用户可以在任何可能出现的主机名的系统中执行前面命令。

注意:

linux双系统切换_linux切换命令行_linux双机切换命令

1、[]中的内容linux双机切换命令,可以省略。

2、命令与命令之间用’,’号分隔。

3、[(切换到什么用户或用户组)]:

3.1:假如省略,则默认为root用户。

案例:user1ALL=/bin/chown,命令2表示:user1可以切换到root

3.2:假如ALLlinux makefile,则代表能切换到所有用户。

案例:user1ALL=(ALL)命令1,命令2表示:user1用户可以切换到任何用户

4、[是否须要密码验证]

4.1:假如省略,须要验证密码。

4.2:NOPASSWD:命令这样就不须要输入密码

扯文字游戏还是比较无趣的,看一下下边的几个案例。

案例1:

linux双机切换命令_linux双系统切换_linux切换命令行

user1ALL=(root)/bin/chown

表示:user1可以切换到root执行前面的命令,须要输入密码

案例2:

user1ALL=(root)NOPASSWD:/bin/chown

表示:user1可以切换到root执行前面的命令,不须要输入密码

案例3:[懒人型,不推荐]

user1ALL=(ALL)NOPASSWD:ALL

user1ALL=(ALL)ALL

表示:用户user1可以切换到所有用户执行所有命令

注意:

关于wheel组上期再做详尽解释

1、以centos7普通用户stephen为例红旗linux5.0,演示怎么授权:

创建用户并为其赋密码

linux双机切换命令_linux双系统切换_linux切换命令行

切换到stephen用户

以chown命令为例

注意:普通用户是不能使用chown命令的

右图所示无权限操作

2、利用root更改/etc/sudoers文件

首先给sudoers可写[w]的权限

chmodu+w/etc/sudoers

查看

linux双系统切换_linux切换命令行_linux双机切换命令

ll/etc/sudoers

3.1、测试案例1:

测试命令:stephenALL=(root)/bin/chown

vim/etc/sudoers

linux双机切换命令_linux切换命令行_linux双系统切换

切换到stephen测试

sudochownstephen:odyseesudoFile/

注意:

1、使用命令须要输入密码

2、sudo-l:可以查看用户拥有的命令

如右图stephen只有一个可怜巴巴的chown

linux切换命令行_linux双系统切换_linux双机切换命令

3.2、测试案例2:

测试命令:stephenALL=(root)NOPASSWD:/bin/chown

用root用户更改一下sudoers文件

vim/etc/sudoers

linux双机切换命令_linux切换命令行_linux双系统切换

切换到stephen测试

sudochownstephen:rootsudoFile/

这儿就不用输入密码了

linux切换命令行_linux双机切换命令_linux双系统切换

4、还原文件,除去sudoers文件w权限

linux双机切换命令_linux切换命令行_linux双系统切换

虽然只要弄明白了授权规则,其他的都是自己操作验证了

提示:

最好别user1ALL=(ALL)NOPASSWD:ALL/user1ALL=(ALL)ALL那么直接。

Author

这篇优质的内容由TA贡献而来

刘遄

《Linux就该这么学》书籍作者,RHCA认证架构师,教育学(计算机专业硕士)。

发表回复