cPanel, Global Email Filters, Pipe to a Program
От: Евгений Музыченко Франция https://software.muzychenko.net/ru
Дата: 27.01.26 18:54
Оценка:
У меня на хостинге в cPanel, в разделе Global Email Filters, настроено несколько фильтров, блокирующих разный спам. Изредка бывает, что под какой-то из них попадает нужное письмо, поэтому возжелал складывать нежелательные письма в файл вместо уничтожения.

Меняю действие Discard на Pipe to a Program, вставляю командную строку:

tee -a ${HOME}/mail/rejected >/dev/null

В разделе Filter Test ввожу подходящие реквизиты, в выдаче вижу:

Pipe message to: tee -a \${HOME}/mail/rejected >/dev/null

Но файл rejected в каталоге mail не создается.

Не знаю, что там означает обратный слэш перед "$" — возможно, экранирование каких-то внутренних макросов. В описании упоминается только "скрипт" (а не командная строка), и что путь должен быть относительно домашнего каталога. Поменял строку на имя скрипта (reject.sh), в сам файл записал:

#!/bin/sh
tee -a ${HOME}/mailfilters/rejected >/dev/null

Поставил разрешения 700, как требуется. Не работает.

Здесь есть пример с заданием именно командной строки. Получается, что можно и так, как у меня было в первом варианте.

Поскольку хостинг у меня shared, доступа к логу exim у меня нет, деталей посмотреть не могу.

Что я делаю не так?
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.