LINUX.ORG.RU

Ответ на: комментарий от buev

Как можно сделать то же самое, но через базу? То есть, не через файл

smtpd_recipient_restrictions = 
      check_recipient_access mysql:/etc/postfix/mysql-virtual-recipient-access.cf

а в файле mysql-virtual-recipient-access.cf соответственно куда и как обращаться и что забирать.

примерно:


user = юзер
password = пароль 
hosts = 127.0.0.1 
dbname = имя базы
query = SELECT access FROM имя таблицы где заблокированные юзеры лежат WHERE source='%s'

constin ★★★★
()
Последнее исправление: constin (всего исправлений: 1)
Ответ на: комментарий от constin

Как настроить, чтобы если у аккаунта status=suspended, тому, кто послал на этот аккаунт мыло, возращалась ошибка 5xx rejected?

buev
() автор топика
Ответ на: комментарий от buev

Как настроить, чтобы если у аккаунта status=suspended, тому, кто послал на этот аккаунт мыло, возвращалась ошибка 5xx rejected?

Все эти статусы аккаунтов по сути не имеет отношения к postfix, это просто какие-то статусы в базе данных, которые придумал майентейнер вашего комбаина или тот, кто писал статью, по которой вы строили ваш почтовик. Те в параметре check_recipient_access . может быть несколько параметров( файлов конфигурации). Вам нужно составить mysql-virtual-recipient-access.cf ( из моего примера выше) так, чтобы он обращался к базе данных, выбирал аккаунты со статусом suspended и далее в конце вам надо формировать ответ.

Если в простом тестовом файле вы бы написали


user1@domain.com REJECT 501

то в файле mysql-virtual-recipient-access.cf вы должны в конце после описания выборки сделать конструктор для формирования ответа

что-то типа


result_filter = suspended
result_format = REJECT 501

погуглите check_recipient_access result_format

constin ★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.