Настройка почты · 3 min read · Sep 27, 2025
Как настроить автоответчик Postfix с помощью Autoresponse
Как настроить автоответчик Postfix с помощью Autoresponse
Версия 1.0
Автор: Фалко Тимме
Autoresponse — это автоответчик для MTA Postfix. Он позволяет создавать сообщения автоответчика для учетных записей электронной почты из командной строки, а также отправляя текст автоответчика на определенный адрес электронной почты.
Я не даю никаких гарантий, что это сработает для вас!
1 Предварительная заметка
Настройка, которую я описываю здесь, работает для всех моих настроек “Виртуальные пользователи и домены с Postfix, Courier, MySQL и SquirrelMail”. Я не гарантирую, что это будет работать для других настроек.
Я использую такую “Виртуальные пользователи и домены с Postfix, Courier, MySQL и SquirrelMail” здесь и настроил учетную запись электронной почты [email protected], для которой я хочу создать автоответчик.
2 Установка Autoresponse
Мы можем скачать и установить Autoresponse следующим образом:
cd /tmp
wget http://www.nefaria.com/scriptz/autoresponse-1.6.2.tar.gz
tar xvfz autoresponse-1.6.2.tar.gz
cd autoresponse
useradd -d /var/spool/autoresponse -s `which nologin` autoresponse
mkdir -p /var/spool/autoresponse/log /var/spool/autoresponse/responses
cp ./autoresponse /usr/local/sbin/
chown -R autoresponse:autoresponse /var/spool/autoresponse
chmod -R 0770 /var/spool/autoresponseЗатем мы редактируем /etc/postfix/master.cf:
vi /etc/postfix/master.cfВ начале файла вы должны увидеть строку
| [...] smtp inet n - - - - smtpd [...] |
Измените ее так, чтобы она выглядела следующим образом (вторая строка должна начинаться хотя бы с одного пробела!):
| [...] smtp inet n - - - - smtpd -o content_filter=autoresponder:dummy [...] |
В конце файла добавьте следующие две строки (снова, вторая строка должна начинаться хотя бы с одного пробела!):
| [...] autoresponder unix - n n - - pipe flags=Fq user=autoresponse argv=/usr/local/sbin/autoresponse -s ${sender} -r ${recipient} -S ${sasl_username} -C ${client_address} |
Затем выполните…
postconf -e 'autoresponder_destination_recipient_limit = 1'… и перезапустите Postfix:
/etc/init.d/postfix restartЕсли у вас есть пользователи с доступом к оболочке, и вы хотите, чтобы эти пользователи могли создавать сообщения автоответчика самостоятельно в оболочке, вы должны добавить каждую учетную запись пользователя в группу autoresponse, например, следующим образом для системного пользователя falko:
usermod -G autoresponse falko Однако это не обязательно, если вы хотите создавать все сообщения автоответчика от имени root (или использовать функцию электронной почты для создания сообщений автоответчика - я к этому вернусь через мгновение).
3 Использование Autoresponse
Запустите
autoresponse -hчтобы узнать, как использовать Autoresponse:
server1:~# autoresponse -h
/usr/local/sbin/autoresponse [-r {recipient email} -s {sender email} -S {sasl username} -C {client ip}]
[-e {email address}] [-d {email address}] [-E {email address}] [-D {email address}] [-h]
-r, -s, -S, и опционально -C должны использоваться вместе для
указания получателя, отправителя, имени пользователя sasl и IP-адреса клиента сообщения автоответчика.
Обычно вы настраиваете это в ”master.cf” Postfix,
но они также могут использоваться из терминала (только для тестирования!).
Если это выполняется из терминала, вам нужно нажать CTRL-D
когда вы закончите набирать текст сообщения автоответчика.
-e используется для создания нового автоответчика или редактирования существующего для указанного пользователя.
Если существует отключенное сообщение автоответчика,
оно будет игнорироваться, и будет создано новое сообщение.
-d используется для отключения существующего активного сообщения автоответчика.
-E используется для включения существующего сообщения автоответчика. Если существуют как отключенное, так и активное сообщение автоответчика,
активное сообщение будет перезаписано отключенным.
-D используется для удаления существующего сообщения автоответчика, оно не удалит отключенные сообщения автоответчика.
-h выводит это меню помощи
server1:~#
Чтобы создать сообщение автоответчика для учетной записи [email protected], мы выполняем…
autoresponse -e [email protected]… и вводим текст автоответчика:
| Я буду отсутствовать на неделе с 2 марта с очень ограниченным доступом к электронной почте. Я отвечу как можно скорее. Спасибо! Фалко |
(Вы не можете установить тему с помощью этого метода; по умолчанию темой сообщений автоответчика будет “Вне офиса”).
Теперь отправьте электронное письмо на [email protected] с другого аккаунта, и вы должны получить сообщение автоответчика в ответ.
Чтобы отключить существующий автоответчик, выполните
autoresponse -d [email protected]Чтобы включить деактивированный автоответчик, выполните
autoresponse -E [email protected]Чтобы удалить автоответчик, выполните
autoresponse -D [email protected]Вы можете изменить переменную RESPONSE_RATE в /usr/local/sbin/autoresponse. Она определяет временной лимит (в секундах), который определяет, как часто будет отправляться сообщение автоответчика для каждого адреса электронной почты. Значение по умолчанию — 86400 (секунд), что означает, что если вы отправите электронное письмо на [email protected] и получите сообщение автоответчика, а затем отправите второе электронное письмо на [email protected] в течение 86400 секунд (один день), вы не получите еще одно сообщение автоответчика.
vi /usr/local/sbin/autoresponse| [...] declare RESPONSE_RATE="86400" [...] |
4 Создание/Удаление сообщений автоответчика по электронной почте
Вместо создания сообщений автоответчика в командной строке это также можно сделать по электронной почте. Если вы хотите создать сообщение автоответчика для адреса электронной почты [email protected], отправьте электронное письмо с [email protected] на [email protected] (это работает только если вы настроили SMTP-AUTH на своем сервере). Тема этого электронного письма станет темой сообщения автоответчика (таким образом, вы можете задать темы, отличные от “Вне офиса”), а текст письма станет текстом автоответчика.
Если вы создаете автоответчик таким образом, Autoresponse отправит вам электронное письмо с сообщением, подобным этому (чтобы вы знали, была ли операция успешной):
Автоответчик включен для [email protected] пользователем с аутентификацией SASL: [email protected] от: 192.168.0.200 Если для этого адреса электронной почты уже существует активный автоответчик, он будет отключен (т.е. активного автоответчика для этого адреса больше не будет, и вы получите электронное письмо, сообщающее вам об этом:
Автоответчик отключен для [email protected] пользователем с аутентификацией SASL: [email protected] от: 192.168.0.200).
Это означает, что функция электронной почты является переключателем - если автоответчика нет, он будет создан, а если автоответчик есть, он будет отключен.
5 Ссылки
- Autoresponse: http://nefaria.com/?page_id=7
Get new posts in your inbox
No spam. Unsubscribe anytime.