设为首页 收藏本站
查看: 909|回复: 0

[经验分享] sudo命令的简单使用

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2017-12-7 11:44:15 | 显示全部楼层 |阅读模式
                                                sudo命令的作用:能够通过授权使某用户以另一个用户的身份运行命令。

# sudo [-u user] COMMAND
命令选项:
  -V 显示版本编号
  -h 显示版本编号及指令的使用方式说明
  -l 显示出自己(执行sudo的执行者)的权限
  -v 因为sudo在第一次执行时会询问当前用户的密码以验证身份,密码验证通过后,会建立一个当前用户的密码缓存凭据(/etc/sudoers文件配置了timestamp_timeout,这个指令的作用是指定了当前用户的密码缓存凭据的保存期限,默认设置为5分钟;也就是说当用户输入正确密码后,密码缓存凭据能有效保存5分钟,那么5分钟之内再使用sudo执行命令就不需要再次输入密码,超过5分钟后密码缓存凭据就会过期,那么再次执行sudo命令就需要输入密码),这个选项的作用是刷新5分钟缓存期限,重新计时
  -k 立即清除密码缓存凭据,下次执行sudo命令时需要输入当前用户密码
  -b 把将要执行的指令放到后台执行
  -p prompt 可以更改询问密码的提示语,其中%u会替换为使用者的账号名称,%h会显示主机名称
  -u username/$uid 不加此参数,代表要以root的身份执行命令,而增加了此参数,可以以username的身份执行命令(#uid为该username的使用者uid)
  -s 执行环境变数中的SHELL为执行的shell,或是/etc/passwd里所指定的shell
  -H 执行环境变数中的HOME(家目录)指定为要变更身份的使用者家目录(如不加-u参数就是系统管理者root)command要以系统管理者身份(或以-u更改为其他人)执行的指令

配置文件:/etc/sudoers
使用专用的配置工具来进行配置:visudo
因为sudoers文件为了其安全性,默认是没有写权限的
sudoers文件配置选项

root ALL=(ALL) ALL
%wheel ALL=(ALL) ALL

即:
who where (whom) which

root即who,表示运行命令者的身份,user
ALL即where,表示通过哪些主机,host
(ALL)即(whom),表示以哪个用户身份,runas
ALL即which,表示运行哪些命令,command
%wheel,表示wheel组

user的支持格式:
  username,用户名
  #uid 用户uid,#号是固定格式,不可省略
  user_alias,用户别名
  %group_name,用户组名,%号是固定格式,不可省略
  %#gid,用户组gid,%#是固定格式,不可省略
host的支持格式:
  ip,ip地址
  hostname,主机名
  netaddr[/netmask],网络地址,网段
command:
  command name,命令名,需要注意的是,这里的命令必须携带绝对地址路径
  directory,目录名,即目录内的所有命令
  sudoedit,编辑sudoers文件本身,即赋予编辑sudoers文件的权限
  Cmnd_Alias,命令别名

别名机制:
注意:别名必须为全大写字母
user_alias用户别名
例:User Alias NETADMIN = netuser1,netuser2

Cmnd_Alias命令别名
例:Cmnd_Alias NETADMINCMNDS = /usr/sbin/ip,/usr/sbin/fdisk

别名名单中可以使用通配符:
例:Cmnd_Alias USERADMINCMNDS = /usr/bin/passwd [a-z]*,!/usr/bin/passwd root
以上表示USERADMINCMNDS命令别名中,可以使用passwd命令,但是必须带参数,且不能使用passwd root,也就是不能更改root用户密码

用户别名和命令别名可以直接在sudo文件中应用
例:NETADMIN ALL=(root) NETADMINCMNDS

特殊用法:
NOPASSWD:USERADMINCMDS
USERADMIN ALL=(root) NOPASSWD:USERADMINCMNDS
表示执行USERADMINCMNDS命令别名包含的命令时不需要输入当前用户密码

写的比较潦草,如有遗漏错误和争议之处,欢迎大家的批评指正和讨论,谢谢。

                                       


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-421677-1-1.html 上篇帖子: redhat 红帽子 centos lsblk命令 下篇帖子: centos升级默认node版本
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表