标签:linux运维
一、sudo基础应用
1、配置文件:/etc/sudoers
adminlocalhost = (root) NOPASSWD:/usr/bin/useradd,/usr/bin/userdel
admin #用户名称
localhost #主机名称
root #执行权限时的身份
NOPASSWD #在执行命令时不需要输入密码
/usr/bin/useradd#可以执行的命令,多条密码
2、修改方法
1》使用visudo命令直接进入/etc/sudoers文件中。注意:在修改系统重要文件时需要先备份,进入文件后添加注释,然后修改文件内容。
2》用vi/etc/sudoers修改,不推荐使用,在修改完毕后,该文件没有检查语法的作用。
二、sudo高级应用
在linux中sudo支持alias,可以最大化的方便企业管理各个部门。
1、 UserAliases
原配置文件的中的英文
## These aren‘t oftennecessary, as you can use regular groups
## (ie, from files,LDAP, NIS, etc) in this file - just use %groupname
## rather thanUSERALIAS
# User_Alias ADMINS =jsmith, mikem #这是一个举例说明User_Alias的使用
解释:这不是经常使用,当你可以使用有规律的组的时候,只需要在组前面加"%"。
注意:若使用useralias,在user alias中的用户必须事先存在
2、Host Aliases
## Groups of machines.You may prefer to use hostnames (perhaps using
## wildcards forentire domains) or IP addresses instead.
# Host_Alias FILESERVERS = fs1, fs2
# Host_Alias MAILSERVERS = smtp, smtp2
解释:主机的组,你可以使用主机名称或者可以用主机ip代替
3、Command Aliases
## These are groups ofrelated commands...
解释:这些是和组有关的命令的集和
在这句话的下面列出了一些工作命令的集合比如
## Installation and management of software
# Cmnd_Alias SOFTWARE = /bin/rpm,/usr/bin/up2date, /usr/bin/yum
4、在实际中应该还有Runas_Alias,runas_Alias是执行sudo命令是可与以怎样的角色执行
三、应用实例
sudoers应用举例,在/etc/sudoers中添加以下内容
############User_Alisaby feitian 2017-7-18###############
User_Aliasfeitian= lala,hehe,haha, %jishu
#注意:在用户别名的时候可以包含整个组的用户,例如上面的jishu
############User_Alisaby feitian 2017-7-18###############
############Host_Alisaby feitian 2017-7-18###############
Host_Aliasrenli= loacal,hostname.
注意:在生产环境中,使用ALL比较多,一般不使用主机别名。主机名一般不要设置成localhost,不然会造成一些不必要的麻烦,在文件/etc/sysconfig/network中修改
############Host_Alisaby feitian 2017-7-18###############
############Cmnd_Alisaby feitian 2017-7-18###############
Cmnd_Aliascmd= /usr/bin/useradd,/usr/bin/userdel,/bin/rm,!/sbin/fdisk
############Cmnd_Alisaby feitian 2017-7-18###############
feitian renli=(root) NOPASSWD:cmd
解释:在别名为feitian的用户组中,他们可以使用sudo,在localhost和hostname主机上以root的身份执行用户添加和删除命令
在应用sudo高级应用的时候应当注意的事项
1》sudo还可以禁止用户执行命令,但是从测试结果中可以得到命令的执行是从后往前,所以要将用户禁止执行的命令放在后边
2》根据配置文件在远程指向sudo命令时要加 –t参数,并且要关闭sshhostname sudo <cmd>,这样会清楚的显示密码
本文出自 “13122323” 博客,请务必保留此出处http://13132323.blog.51cto.com/13122323/1949094
标签:linux运维
原文地址:http://13132323.blog.51cto.com/13122323/1949094