Postfix:为某个命令管道别名设置权限

时间:2012-11-15 09:57:14

标签: linux permissions pipe alias postfix-mta

我正在尝试设置一个别名,用于管理Postfix中命令的传入邮件。所以我在/etc/aliases

中有类似的内容
myuser: "|/usr/bin/command --parameter1 --parameter2"

问题是Postfix以用户/usr/bin/command的身份执行nobody:nogroup。根据{{​​3}},它可以更改,但不能用于单个别名。那么问题是如何为某个别名设置用户?为目录nobody:nogroup设置/usr/bin/command不应该是一个选项。

1 个答案:

答案 0 :(得分:1)

/usr/bin/command替换为/usr/bin/sudo -u <user> /usr/bin/command并配置sudo以允许nobody执行此命令。

[编辑] 您的问题有两种解决方案:

  1. nobody:nogroup
  2. 创建所有必需文件的可读/可写文件
  3. 更改用户(使用suid scriptsu / sudo)。
  4. 如果您不喜欢,那么您的问题就无法解决。您无法在aliases(5)中执行此操作,因为格式不支持此操作(其他程序也会读取此文件,因此后缀无法更改语法)。

    您可以使用default_privs,但这会更改所有外部命令的用户,而您不希望这样(存在巨大的安全风险)。