码迷,mamicode.com
首页 > 其他好文 > 详细

Sudo浅谈

时间:2017-06-27 15:03:17      阅读:145      评论:0      收藏:0      [点我收藏+]

标签:linux   sudo   

    在Linux系统中, Sudo是最重要的命令之一,关系到整个系统的操作安全。

    sudo命令是用来以其它的身份来执行命令,预设的身份是root。配置文件是/etc/sudoers,权限为440,下面来了解下其基本设置:

[root@localhost sbin]# visudo 

## Allow root to run any commands anywhere

root    ALL=(ALL)       ALL

zwj     ALL=(ALL)      NOPASSWD:ALL,! /usr/sbin/reboot,! /usr/sbin/poweroff,! /usr/bin/passwd [A-Za-z]*

其中,绿色背景是增加的设置,可以看到用户zwj无法关机和重启,也无法修改任何人的密码,NOPASSWD:表示无需输入密码即可执行。!:表示取反的意思,即不允许执行。

[zwj@localhost ~]$ sudo reboot

对不起,用户 zwj 无权以 root 的身份在 localhost.localdomain 上执行 /sbin/reboot。

[zwj@localhost ~]$ sudo poweroff

对不起,用户 zwj 无权以 root 的身份在 localhost.localdomain 上执行 /sbin/poweroff。

[zwj@localhost ~]$ sudo passwd zwj

对不起,用户 zwj 无权以 root 的身份在 localhost.localdomain 上执行 /bin/passwd zwj。


可以查看下用户所具有的sudo权限,更多参数请查看帮助sudo -h;

[zwj@localhost ~]$ sudo -l

匹配此主机上 zwj 的默认条目:

    !visiblepw, always_set_home, env_reset, env_keep="COLORS DISPLAY HOSTNAME HISTSIZE KDEDIR LS_COLORS", env_keep+="MAIL PS1 PS2 QTDIR

    USERNAME LANG LC_ADDRESS LC_CTYPE", env_keep+="LC_COLLATE LC_IDENTIFICATION LC_MEASUREMENT LC_MESSAGES", env_keep+="LC_MONETARY

    LC_NAME LC_NUMERIC LC_PAPER LC_TELEPHONE", env_keep+="LC_TIME LC_ALL LANGUAGE LINGUAS _XKB_CHARSET XAUTHORITY",

    secure_path=/sbin\:/bin\:/usr/sbin\:/usr/bin


用户 zwj 可以在该主机上运行以下命令:

    (ALL) NOPASSWD: ALL, (ALL) !/usr/sbin/reboot, (ALL) !/usr/sbin/poweroff, (ALL) !/usr/bin/passwd [A-Za-z]*


如果要为用户设置具体的权限,可以这样设置:

## Allow root to run any commands anywhere

root    ALL=(ALL)       ALL

zwj     ALL=(ALL)       /sbin/useradd,/sbin/usermod

这样一来,操作的风险大为降低,当然也可以通过用户别名、命令别名来设置,较适合于权限划分很精细的公司。

本文出自 “一万年太久,只争朝夕” 博客,请务必保留此出处http://zengwj1949.blog.51cto.com/10747365/1942365

Sudo浅谈

标签:linux   sudo   

原文地址:http://zengwj1949.blog.51cto.com/10747365/1942365

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!