sudo相关配置详解

sudo
通用的配置文件:/etc/sudoers
实际运用的配置文件:/etc/sudoers.d/
里面文件权限应设为440;根据需要可以一个用户设置一个配置文件便于管理
visudo
默认打开的是/etc/sudoers文件
visudo -f /etc/sudoers.d/mage
用-f指定某个要编辑的文件
export EDITOR=vim导入一个变量使visudo指令打开文件带颜色
root root=(all) all
root 可以在那个主机上 代表那个用户 执行什么操作

也可以设置组权限

%组名 ALL=(ALL) ALL

授权组名在任意主机上可代表任何个执行任何操作

通过visudo命令编辑配置文件,具有语法检查功能
visudo –c 检查语法
时间戳文件:
centos6:/var/db/sudo
centos7: /var/run/sudo/ts
日志文件:/var/log/secure
sudo授权的操作信息
/etd/sudoers;/etc/sudoers.d/
配置文件支持的写法:
使用通配符glob:
?:任意单一字符
* :匹配任意长度字符
[wxc]:匹配其中一个字符
[!wxc]:除了这三个字符的其它字符
\x : 转义
[[alpha]] :字母 示例: /bin/ls [[alpha]]*
配置文件规则有两类;
1、别名定义:不是必须的
sudo别名和示例
别名有四种类型:
User_Alias, 用户别名
Runas_Alias, 可代表用户的别名
Host_Alias ,主机别名
Cmnd_Alias,指令别名
别名格式:[A-Z]([A-Z][0-9]_)*
别名定义:
别名的类型 NAME1 = item1, item2, item3 : NAME2 = item4, item5
示例1:
Student ALL=(ALL) ALL
%wheel ALL=(ALL) ALL
.示例2:
student ALL=(root) /sbin/pidof,/sbin/ifconfig
%wheel ALL=(ALL) NOPASSWD: ALL
NOPASSWD 不输口令就可以执行操作
示例3
User_Alias NETADMIN= netuser1,netuser2
Cmnd_Alias NETCMD = /usr/sbin/ip
NETADMIN ALL=(root) NETCMD
示例4
User_Alias SYSADER=wang,mage,%admins
User_Alias DISKADER=tom
Host_Alias SERS=www.magedu.com,172.16.0.0/24
Runas_Alias OP=root
Cmnd_Alias SYDCMD=/bin/chown,/bin/chmod
Cmnd_Alias DSKCMD=/sbin/parted,/sbin/fdisk
SYSADER SERS= SYDCMD,DSKCMD
DISKADER ALL=(OP) DSKCMD
示例x
User_Alias ADMINUSER = adminuser1,adminuser2
Cmnd_Alias ADMINCMD = /usr/sbin/useradd,/usr/sbin/usermod, /usr/bin/passwd [a-zA-Z]*, !/usr/bin/passwd root
ADMINUSER ALL=(root) NOPASSWD:ADMINCMD,PASSWD:/usr/sbin/userdel
示例5
Defaults:wang runas_default=tom
wang ALL=(tom,jerry) ALL
wang在执行sudo指令时不用-u就默认代表tom用户执行指令
示例6
wang 192.168.175.136,192.168.175.138=(root) /usr/sbin/,!/usr/sbin/useradd
示例7
wang ALL=(ALL) /bin/cat /var/log/messages*,! /bin/cat /var/log/messages* *
2、授权规则:必须的
sudo命令
ls -l /usr/bin/sudo
sudo –i –u wang 切换身份需要在配置文件中授权与su - 类似
sudo [-u user] COMMAND
-V 显示版本信息等配置信息
-u (可代表的用户的身份):默认为root 授权自己用()里面的内容即可代表的用户的身份执行后面指令
-l,ll 列出用户在主机上可用的和被禁止的命令
-v 再延长密码有效期限5分钟,更新时间戳
-k 清除时间戳(1970-01-01),下次需要重新输密码
-K 与-k类似,还要删除时间戳文件
-b 在后台执行指令
-p 改变询问密码的提示符号
%c 客户端信息
%s 服务器端信息
%d 服务名
%p 守护进程的PID
%% 表示%
示例:
-p ”password on %h for user %p:"
wang ALL=(ALL) sudoedit
授权wang拥有编辑/etc/sudoers文件

猜你喜欢

转载自blog.csdn.net/xc_cfq/article/details/80559091
今日推荐