(861) 244 20 15

Локальный сборщик почты getmail + dovecot

Наш клиент, в силу рабочих регламентов, работает с одним электронным адресом, количество пользователей, работающих с почтой в среднем 8-10 человек, количество писем, до 500 в день (с вложениями до 20 Мб). Каждый почтовый клиент загружал новые письма, персонально для себя. Естественно такой режим работы страшно нагружал канал связи и был не эффективным. Нашими специалистами была предложена следующая модель работы - сбор и обработка писем производится на отдельном компьютере и только с одной учетной записи, а дальше, сотрудники получают корреспонденцию используя локальную сеть. Для реализации достаточно обычной рабочей станции или виртуальной машины, нами была выбрана ОС Linux (Ubuntu Server 12.04 LTS), ниже приведем процесс настройки необходимых программ:

1. Устанавливаем пакеты

sudo apt-get install dovecot-common dovecot-core dovecot-dev dovecot-pop3d getmail4


2. Создаем пользователя для авторизации

sudo adduser user_name


3. Создаем директорию /home/user_name/.getmail/ и файл getmailrc в ней

mkdir /home/user_name/.get mail

touch /home/user_name/.getmail/getmailrc


4. Заполняем .getmailrc - конфиг для getmail

[default]

message_log = "~/.getmail/log" #путь к логу

delete = 0 #не удалять почту на сервере после получения

readall = 1 #получать всю почту


[retriever]

type = SimplePOP3Retriever #для работы по протоколу POP3

server = #pop3 сервер

username = #имя пользователя

password = #пароль


[destination]

type = Maildir

path = /path_to/Maildir/ #путь к каталогу для хранения почты


5. Заполняем /etc/dovecot/dovecot.conf - конфиг для dovecot

protocols = pop3 pop3s #протоколы через пробел

disable_plaintext_auth = no

log_path = /var/log/dovecot/dovecot.log

info_log_path = /var/log/dovecot/dovecot.info

log_timestamp = "%Y-%m-%d %H:%M:%S "

login_trusted_networks = 192.168.1.0/24

mail_location = maildir:/Maildir/ #Maildir та же куда собирает почту getmail

mail_privileged_group = mail

protocol pop3 {

pop3_uidl_format = %08Xu%08Xv

}

protocol managesieve {

}

auth default {

mechanisms = plain

passdb pam {

}

userdb passwd {

}

user = root

!include_try /etc/dovecot/auth.d/*.auth

}

dict {

}

plugin {

}

!include_try /etc/dovecot/conf.d/*.conf


6. Создаем файлы логов

touch /var/log/dovecot/dovecot.log

touch /var/log/dovecot/dovecot.info

touch ~/.getmail/log


7. Добавляем сбор почты gelmail'ом в cron

getmail -n>>/home/user_name/.getmail/log #-n говорит о том что будут скачаны только новые письма, по умолчанию письма с сервера не удаляются


8. Настраиваем почтовый клиент на наш локальный сервер, логин и пароль пользователя которого создали в пункте 2


Результатом нашей работы стали стабильная работа почтовых программ на клиентских компьютерах и снижение нагрузки на интернет канал на 70%. 

Контакты 350058, г. Краснодар, ул.Старокубанская, д. 114, лит. Б, оф. 4 (861) 244-20-15