本文目录:
- 1、CentOS 给普通用户添加sudo权限
- 2、CentOS 之 sudo
- 3、Linux系统创建用户并赋予用户sudo权限
CentOS 给普通用户添加sudo权限
添加用户:
修改密码:
'visudo'打开的是'/etc/sudoers'文件
在打开的sudo配置文件中找到 root ALL=(ALL) ALL这一行,并在这行下面新增以下格式的内容
切换root用户
CentOS 之 sudo
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、定义别名
Linux系统创建用户并赋予用户sudo权限
sudo是linux下常用的允许普通用户使用超级用户权限的工具,允许系统管理员让普通用户执行一些或者全部的root命令,如halt,reboot,su等等。这样不仅减少了root用户的管理时间,同样也提高了安全性。Sudo不是对shell的一个代替,它是面向每个命令的。
sudo的配置文件是 /etc/sudoers 文件,它允许系统管理员集中的管理用户的使用权限和使用的主机。
sudo都提供了一个编辑该文件的命令:visudo 来对该文件进行修改。强烈推荐使用该命令修改 sudoers,因为它会帮你校验文件配置是否正确,如果不正确,在保存退出时就会提示你哪段配置出错的。
打开 /etc/sudoers 文件可以发现一个特殊的 wheel 组
第2行表示:wheel 组中的用户可以在ALL/任意主机上以任意用户执行所有的命令,不过需要输入该用户自己的密码。
第4行在第2行的基础上增加了NOPASSWD,意思是无需输入密码。不过这行默认情况下是注释掉的。
这样我们只需要创建一个专用的账户,然后将其添加到wheel组。
创建用户jupiter
将用户添加到wheel组中
现在用户jupiter就可以执行一些原本root用户才能执行的命令。
首先切换到 jupiter 用户
尝试切换到root用户主目录被拒绝
这次使用sudo
然后就可以成功切换到root用户主目录了。
如果不想输入密码,那么可以将上面提到的第4行的注释字符 # 去掉。
Linux命令手册:
【配置sudo权限】的内容来源于互联网,如引用不当,请联系我们修改。
网友留言: