Назад | Перейти на главную страницу

Postfix с виртуальными почтовыми ящиками MySQL: пересылка и хранение электронной почты

Один из моих пользователей, чья почта размещена в Google Apps, но использует мой домен, хочет перенести хостинг электронной почты прямо на мой сервер. Однако у этого пользователя есть правило, которое сохраняет и пересылает каждое полученное письмо на адрес @ yahoo.com и требует, чтобы я делал то же самое.

В настоящее время я настраиваю такие вещи в main.cf (показаны только соответствующие биты):

virtual_alias_domains = 
# This line cut in two here for clarity
virtual_alias_maps = proxy:mysql:/etc/postfix/mysql-virtual_forwardings.cf, 
                     mysql:/etc/postfix/mysql-virtual_email2email.cf
virtual_mailbox_domains = proxy:mysql:/etc/postfix/mysql-virtual_domains.cf
virtual_mailbox_maps = proxy:mysql:/etc/postfix/mysql-virtual_mailboxes.cf

И соответствующие части в файлах конфигурации:

mysql-virtual_forwardings.cf:

 query = SELECT destination FROM forwardings WHERE source='%s'

mysql-virtual_email2email.cf:

query = ВЫБРАТЬ электронную почту ОТ пользователей, ГДЕ email = '% s'

mysql-virtual-mailboxes.cf:

query = SELECT CONCAT(SUBSTRING_INDEX(email,'@',-1),'/',SUBSTRING_INDEX(email,'@',1),'/') FROM users WHERE email='%s'

В таблице переадресации всего 2 столбца: источник и место назначения. Таблица пользователей представляет собой двухколоночную таблицу user @ domain-password.

Что я могу сделать, чтобы postfix доставлялся в учетную запись здесь, но также перенаправлял в учетную запись Yahoo?

В конце концов, я выбрал простой выход и использовал скрипт Sieve на сервере для пересылки:

require ["fileinto"];

if anyof (true)
{ 
    fileinto "INBOX";
    redirect "myaddress@yahoo.com";
}