unix – sudo:如何只允许命令的一个参数?

前端之家收集整理的这篇文章主要介绍了unix – sudo:如何只允许命令的一个参数?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我想在我的suoders中添加一个条目,允许一个用户运行一个只有一个非选项参数的命令.
# tail -1 /etc/sudoers
ALL     ALL = (:tool) NOPASSWD: /bin/echo [a-z]*
$sudo -g tool /bin/echo abc def
abc def
$sudo -g tool /bin/echo -abc def
[sudo] password for user:

我可以使用sudoers sytnax吗?或者我需要创建一个帮助脚本?

据我所知,如果该参数不同,则不能将非命令参数传递给sudo.

您可以指定以下内容

users ALL=(ALL) NOPASSWD: /usr/bin/tail /some/file

这将允许用户拖尾某些文件而不是其他文件.

如果您需要传递变量,我建议使用包装器脚本.

以下是rsync包装器的示例:

https://sites.google.com/site/beingroot/articles/useful-scripts/wrapper-script-to-use-rsync-via-sudo

如果你搜索谷歌的sudo包装,你可以找到更多的例子.

如果用户不可信,请务必对所有路径进行硬编码并对输入运行健全性检查.

猜你在找的Bash相关文章