linux的sudo授权
如果有这样一个需求,linux的其他用户(普通用户)要查看你的日志文件,但是你又不想让他使用其他命令
那就要使用sudo了,授权指定用户使用命令了
1
2
### 打开配置文件 这个命令等于 vi /etc/sudoers
visudo
找到下面这行,这行的意思是root用户授权全部命令
1
root ALL=(ALL) ALL
我们添加了一个用户 chen
1 | useradd chen |
这就是我们看日志的用户,我们想让他只使用 cat 和 less 命令 (建议加上 /bin/)
1 | chen ALL=(ALL) /bin/cat,/bin/less |
多个命令直接用逗号隔开
我们登录用户chen
使用 sudo -l 看看
1 | Matching Defaults entries for chen on localhost: |
这一大串看的人头皮发麻,但是前面的基本可以忽略,看最后两行
意思就是
使用者 chen 可以在本地主機上執行以下命令:
/bin/cat
/bin/less
我们来试试命令
1 | sudo cat /var/log/messages |
发现可以正常使用
我们来试试没有授权的命令
1
sudo more /var/log/messages
输入命令之后显示
1
Sorry, user chen is not allowed to execute '/bin/more /var/log/messages' as root on localhost.localdomain.
意思就是:抱歉,使用者 chen 不允許在 localhost.localdomain 上以根使用者身份執行 ‘/bin/more /var/log/messages’。
All articles in this blog are licensed under CC BY-NC-SA 4.0 unless stating additionally.