• cPanel, Global Email Filters, Pipe to a Program

    From Eugene Muzychenko@2:5000/14 to All on Sat Jan 31 12:55:23 2026
    Привет!

    У меня на хостинге в 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, как требуется. е работает.

    Здесь есть пример с заданием именно командной строки:

    https://ventraip.com.au/support-centre/how-to-pipe-an-email-to-a-script/

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

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

    Всего доброго!
    Евгений Музыченко
    fi-do@muzy-chen-ko.net (все дефисы убрать)

    --- GoldED+/W32-MSVC 1.1.5-b20180707
    * Origin: Fox Tracks, France (2:5000/14)