CentOS 给普通用户添加sudo权限

CentOS 给普通用户添加sudo权限,第1张

添加用户

修改密码:

'visudo'打开的是'/etc/sudoers'文件

在打开的sudo配置文件中找到 root ALL=(ALL) ALL这一行,并在这行下面新增以下格式的内容

切换root用户

1、概念

su使用起来非常方便,但同样也存在安全隐患。在一台服务器上面,如果有多人使用,在使用su命令切换到root后,则大家都知道了root密码,那么以后其他用户均可以以root用户身份登录和维护服务器,则安全策略形同虚设了。那该如何是好?Linux系统中则提供了另外一个命令 sudo 。

sudo配置文件默认权限为440

[root@shell ~]#

[root@shell ~]# ll   /etc/sudoers

2、sudo 用法

sudo主要功能是以其他用户身份执行命令,而要输入的密码也仅仅是当前用户身身的密码而非root账户密码,类似于Windows系统中的 以管理员身份运行 。其常用用法如下所示:

sudo [选项] [命令]

常用选项如下所示:

3、执行流程

1)当用户执行sudo时,系统会在 /etc/sudoers 文件查找该用户是否有执行sudo的权限。

2)若用户拥有执行sudo权限后,则输入用户自身的密码确认

3)若密码确认成功,即可执行sudo后面的命令

4)若切换身份与执行者身份相同,则无需要输入密码

    基于以上流程,能否使用sudo则要看 /etc/sudoers 中的设置

4、sudo 配置

修改 /etc/sudoers,不建议直接使用 vim,而是使用 visudo。因为修改 /etc/sudoers 文件需遵循一定的语法规则,使用 visudo 的好处就在于,当修改完毕 /etc/sudoers 文件,离开修改页面时,系统会自行检验 /etc/sudoers 文件的语法。

[root@shell ~]#

[root@shell ~]# visudo                 #配置sudo

1) 这样我们就可以使用sudo了,我们需要输入普通用户ctsi自己的密码

输入过密码后我们就可以直接使用 ls/cat/mv 这些命令了

[ctsi@shell root]$

[ctsi@shell root]$ sudo  ls                      #以ctsi的身份执行 ls

[ctsi@shell root]$

[ctsi@shell root]$ sudo  cat  anaconda-ks.cfg             #以ctsi的身份执行 cat

2)设置用户免密码执行sudo命令

在准备执行的sudo命令前边增加 NOPASSWD:   即可

[root@shell ~]#

[root@shell ~]# visudo                #配置sudo

## Allow root to run any commands anywhere                 #定位到这一行,在这一行下边添加配置内容即可

root    ALL=(ALL)      ALL                                            #默认存在

ctsi     ALL=(ALL)      NOPASSWD: /usr/bin/ls,/usr/bin/cat,/usr/bin/mv                    ##增加的免密码执行sudo命令的内容

[ctsi@shell root]$

[ctsi@shell root]$ sudo   ls                   #严重免密码执行 sudo

5、sudo 权限用户组设置

有时我们需要为很多用户添加sudo权限,此时可以通过组来实现

前提是这些用户执行的sudo命令是一样的

把需要执行同样的权限的普通用户,添到同一个组中

比如:用户 user1 和 用户 user2 执行的sudo命令和用户ctsi是一样的,那么我们就可以将 user 和 user2 加入到ctsi组:

[root@shell ~]#

[root@shell ~]# visudo

6、定义别名


欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/bake/11704437.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-05-18
下一篇 2023-05-18

发表评论

登录后才能评论

评论列表(0条)

保存