Итак, я последовал [руководству] [1] о том, как настроить простой почтовый фильтр с Postfix, чтобы я мог найти - заменить в тексте исходящих писем. Я создал сценарий в /tmp/mailfilter.sh, и изменил файл /etc/postfix/master.cf, как указаноПопытка добавить фильтр почты после очереди в Postfix on CentOS, получить разрешение на execvp
# ==========================================================================
# service type private unpriv chroot wakeup maxproc command + args
# (yes) (yes) (yes) (never) (100)
# ==========================================================================
smtp inet n - n - - smtpd
-o content_filter=filter:dummy
filter unix - n n - 10 pipe
flags=Rq user=filter null_sender=
argv=/tmp/mailfilter.sh -f ${sender} -- ${recipient}
Я создал пользовательский фильтр называется и сделал его владелец сценария. Но когда я попытался отправки по электронной почте, я получаю следующее сообщение об ошибке:
Jun 7 03:01:53 localhost postfix/qmgr[31288]: 134D944A0673: from=<[email protected]>, size=894, nrcpt=1 (queue active)
Jun 7 03:01:53 localhost pipe[31603]: fatal: pipe_command: execvp /tmp/mailfilter.sh: Permission denied
Jun 7 03:01:53 localhost postfix/pipe[31562]: 134D944A0673: to=<[email protected]>, relay=filter, delay=8974, delays=8974/0/0/0.01, dsn=4.3.0, status=deferred (temporary failure. Command output: pipe: fatal: pipe_command: execvp /tmp/mailfilter.sh: Permission denied)
В частности то, что я предполагаю, что это отношение является
(temporary failure. Command output: pipe: fatal: pipe_command: execvp /tmp/mailfilter.sh: Permission denied)
/tmp/mailfilter.sh имеет CHMOD а + х и принадлежащих фильтру. Я попытался удалить все в нем, так что это всего лишь пустой файл, и я все еще получаю отказ в разрешении.
Я не могу понять, что мне не хватает. Я установил все разрешения, которые могу найти, но Postfix делает что-то тайное, что я не понимаю.