Полезные команды Exim

Exim (от англ. EXperimental Internet Mailer) — это агент пересылки сообщений, используемый в операционных системах семейства Unix. Первая версия была написана в 1995 году Филиппом Гейзелом (Philip Hazel) для использования в качестве почтовой системы в Кембриджском Университете. Exim распространяется под лицензией GPL, и каждый может свободно скачать его, использовать и модифицировать. Следует отметить, что версия 4 существенно отличается от версии 3.

Exim придерживается дизайна sendmail, где один процесс контролирует всю работу MTA. Такой монолитный дизайн считается небезопасным, но у Exim прекрасная история безопасности и для версии 4.xx. крайне редки критические уязвимости.

Exim 4 спроектирован для систем, имеющих постоянное подключение к сети, поэтому в нём нет сложных механизмов работы с очередью, через которую должны проходить все сообщения. В настройке по умолчанию Exim пытается немедленно доставить сообщение. При большой нагрузке на сервере режим немедленной доставки может быть временно выключен.

Вывести количество сообщений в очереди:

1
exim -bpc

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

1
exim -bp

Печать суммарной информации. Выводимые колонки: количество, объем, старейшее, последнее, домен.

1
exim -bp | exiqsumm

Чем в данный момент занимается Exim:

1
exiwhat

Тестирование маршрута доставки до указанного адреса:

Эмитировать SMTP транзакцию из командной строки, как если-бы сообщение пришло с указанного IP адреса. При этом будет показано прохождение и срабатывание проверок, фильтров и листов доступа (ACL). На самом деле, никакое сообщение никуда доставлено не будет.

1
exim -bh 10.10.10.1

Листинг всех настроек конфигурации exim:

1
exim -bP

Управление очередями сообщений

Запуск очереди:

1
exim -q -v

Запуск очереди только для локальных доставок:

1
exim -ql -v

Удалить сообщение из очереди:

1
exim -Mrm <strong>ID-message</strong>

Заблокировать( заморозить ) сообщение:

1
exim -Mf <strong><code>ID-message

Разблокировать сообщение:

1
exim -Mt <strong><code>ID-message

Доставить сообщение, вне зависимости от состояния блокировки или времени повторной доставки:

1
exim -M <strong><code>ID-message

Доставить сообщение, только если достигнуто время для повторной доставки:

1
exim -Mc <strong><code>ID-message

Принудительно остановить сообщение с формулировкой «отменено администратором»:

1
exim -Mg <strong><code>ID-message

Очистит все заблокированные сообщения из очереди:

1
exipick -zi | xargs exim -Mrm

Очистит все сообщения из очереди:

1
exipick -i | xargs exim -Mrm

Удалить все заблокированные сообщения:

1
exiqgrep -z -i | xargs exim -Mrm

Удалить все сообщения, старше 10 дней (86400 * 10 = 864000 секунд):

1
exiqgrep -o 864000 -i | xargs exim -Mrm

Заблокировать все письма от указанного отправителя:

1
exiqgrep -i -f [email protected] | xargs exim -Mf

Просмотреть заголовки сообщений:

1
exim -Mvh

Просмотреть тело сообщений:

1
exim -Mvb

Просмотр логов сообщения:

1
exim -Mvl

Добавить получателя в сообщение:

1
exim -Mar <strong><code>ID-message

Редактировать отправителя сообщения:

1
exim -Mes