Postfix архивация почты
Postfix путем пересылки на необходимый адрес позволяет производить архивацию почты. Делается это практически также как я описывал раньше в статье перенаправление писем в Postfix.
Здесь я расскажу об архивации всей исходящей и входящей почты определенного домена. Можно опираясь на вышеуказанную мной, сделать архивацию только указанных почтовых ящиков. Вся суть архивации сводиться к тому, что при отправке либо получений сообщения Postfix делает его копию на указанный аккаунт, соответсвенно письмо ложиться в ящик, куда можно подключиться по POP3 или IMAP и вытянуть нужные вам.
Ну, что же настроим. Я покажу вам на примере связки с MySQL, названия таблиц соответсnвенно подставляйте ваши. Итак все исходящие письма будем складывать в ящик all_out а все входящие в all_incoming.
1) Создадим наши ящики, а точнее информацию о них в SQL базу. Если вы дошли до архивации почты, то я предполагаю, что у вас уже настроенны: база, карта и ящик. Значит просто добавим наши ящики all_out и all_incoming.
2) Создаем таблицу в MySQL, для карты отправки почты. Т.е что с таких то адресов, почта должна ложиться в такие-то ящики
create table sender_map (sender varchar, goto varchar);
create table sender_map (sender varchar, goto varchar);
3) Добавим от какого адреса куда направлять
insert into sender_map values ("@company.com", "all_out@company.com")
insert into sender_map values ("@company.com", "all_out@company.com")
Т.е вся исходящяя почта с нашего домена будет копироваться в ящик all_out@company.com.
4) Создадим карту поиска в MySQL /etc/postfix/maps/sender_maps.cf
Прописав туда следующее:
user=mysql_user
password=mysql_password
dbname=base_name
table=sender_map
select_field=goto
where_fild=sender
host=your_mysql_host (localhost - например)
5) Добавим строку конфига
sender_bcc_maps=mysql:/etc/postfix/maps/sender_maps.cf
Все с исходящей почтой разобрались теперь делаем также на все входящие.
1) Создадим такую же MySQL таблицу для входящей почты
create table recipient_map (recipeint varchar, goto varchar);
2) Опять таки добавим в качестве получателя весь наш домен @company.com
insert into sender_map values ("@company.com", "all_incoming@company.com")
3) Создадим карту поиска в MySQL /etc/postfix/maps/sender_maps.cf
Прописав туда следующее:
user=mysql_user
password=mysql_password
dbname=base_name
table=sender_map
select_field=goto
where_fild=recipient - обратите внимание на поле
host=your_mysql_host (localhost - например)
4) Добавим строку конфига
recipient_bcc_maps=mysql:/etc/postfix/maps/sender_maps.cf
Проверяем конфиг и перегружаем
postfix check
postfix reload
Затем отправим на внешний ящик и с внешнего, чтобы проверить.