11 февр. 2010 г.

Решение для небольших офисов. Почтовый пересыльщик на основе hMailserver

Пролог.
В первую очередь, данная статья будет интересна начинающим администраторам, студентам-информатикам, продвинутым пользователям. В ней описывается настройка почтового пересыльщика (mail hub). В качестве почтового сервера используется hMailserver версии 5.1.2.

Задача.

Есть 5 почтовых ящиков: 4-и (назовем их A,B,C,D) на бесплатных серверах, 1-н (назовем его H) предоставлен хостингом. Есть 4-и абонента, назовем их директор, бухгалтер, менеджер №1 и менеджер №2. Все абоненты работают в одном офисе. Необходимо обеспечить раздачу почты по следующей схеме:

  • Директор получает письма из ящиков H,A,B.
  • Бухгалтер получает почту из ящиков A,B.
  • Менеджер №1 получает почту из ящиков B,C,D.
  • Менеджер №2 получает почту из ящиков B,C,D.
Решение.

Установка почтового сервера. Настройка сервера на прием почты с внешних серверов и последующая раздачей её абонентам в соответствии с описанной выше схемой.

Реализация.
Этап №1. Создание “домена” и учетных записей.

Примечание: Для реализации выбранного решения будем использовать hMailserver (windows версия).

В дереве настроек в разделе Domains создадим “почтовый домен” org.local.

Примечание: Принцип именования внутренних почтовых ящиков и списков рассылки.
Все учетные записи, предназначены для забора почты с внешних серверов, имеют имена вида:
НазваниеВнешнегоПочтовогоЯщика@ИмяВнутренегоДомена.
Пример: Внешний ящик A@yandex.ru –> A@org.local
Все рассылки имеют имена вида:
Distr_НазваниеПочтовогоЯщика@ИмяВнутренегоДомена
Пример: Внешний ящик A@yandex.ru –> Distr_A@org.local
Внутренние почтовые учетные записи имеют имена вида:
ИмяПользователя_ НазваниеВнешнегоПочтовогоЯщика@ИмяВнутренегоДомена
Пример: Внешний ящик A@yandex.ru, имя пользователя Dir–>Dir_A@org.local

Затем создадим в “домене” org.local 5-ть учетных записей (Account), вида A@org.local, B@org.local и т.д., для забора почты с внешних серверов. При создании очередной учетной записи на вкладке External accounts задаем реквизиты необходимого почтового ящика (pop-сервер, имя пользователя, пароль, интервал забора почты). Так же устанавливаем галочку “Удалять сообщения сразу” (Delete messages immediately), что бы внешний ящик не переполнился.

Далее будем создавать почтовые ящики по следующей схеме. Директор должен получать почту из ящиков H,A,B – создаем учетные записи следующего вида:
  • Dir_H@org.local для почты с внешнего ящика H;
  • Dir_A@org.local для почты с внешнего ящика A;
  • Dir_B@org.local для почты с внешнего ящика B;
Аналогично для бухгалтера:
  • Buh_A@org.local для почты с внешнего ящика A;
  • Buh_B@org.local для почты с внешнего ящика B;
И так далее. В процессе создания учетных записей не забываем задавать им пароли.

Этап №2 Создание списка рассылки.

Списки рассылки хранятся в разделе настроек Distribution list. Создадим 4 списка, по 1 на каждый внешний ящик. Назовем их Distr_A@org.local, Distr_B@org.local и т.д. При создании очередного списка на вкладке Members указываем адреса абонентов, которые должны получать соответствующую почту. Т.е. если директору необходимо получать почту из ящика A, то адрес директора Dir_A@org.local необходимо включить в рассылку Distr_A@org.local.

После того как все списки рассылки созданы, необходимо настроить пересылку почты с учетных записей вида A@org.local в соответствующие списки рассылки, т.е. Distr_A@org.local. Это можно сделать на вкладке Forwarding необходимой учетной записи.

Этап №3 Ограничение доступа к почтовому серверу.

Ограничить доступ к почтовому серверу можно при помощи опций Settings->Advanced->Ip ranges. Ip ranges является чем то вроде простого firewall’а. Заданному диапазону IP адресов, разрешается или запрещается выполнять какое либо действие.

Нам необходимо создать 2 правила: pub – внутренняя сеть, all – все остальное.

В правиле pub в качестве диапазона Ip адресов зададим адреса внутренней подсети, например Lower IP 192.168.1.1, Upper IP 192.168.1.255. В разделе Allow connection оставим галочку на пункте POP3. В поле приоритет (Priority) зададим значении 20.

Для правила all в качестве диапазона Ip адресов зададим Lower IP 0.0.0.0 Upper IP 255.255.255.255. В разделе Allow connection уберем все галочки. В поле приоритет (Priority) зададим значении 10.

В результате настройки Ip ranges, почтовый сервер будет принимать только POP3(110) соединение из внутренней сети.

Этап №4 Настройка клиентов.

На почтовых клиентах в качестве сервера входящей почты указываем Ip-адрес компьютера, на который установили почтовый сервер. В качестве имени пользователя указываем название почтового ящика, например, Dir_A@org.local. Не забываем указывать пароль.

Итоги.
Подведем итоги проделанной работы:
  • Все пользователи получают предназначенную им почту.
  • Экономится трафик, за счет того, что почтовый сервер единожды загружает партию почты с внешнего сервера, после чего раскладывает её по внутренним адресам.
  • Удобное средство управления потоком входящей почты офиса.
Что можно было еще сделать.
  • Антивирусная проверка на почтовом сервере.
  • Резервное хранилище входящей почты.
  • Спам фильтр.

4 комментария:

  1. Друг, я совсем не понял, как идет переадресация почты с интернета на почтовые ящики акаунтов. Можно просто объяснить: один инет два аккаунта?

    ОтветитьУдалить
  2. вот вот... для НАЧИНАЮЩИХ мутить такую сложную схему....
    начинать нужно попроще.
    более интересна и реальна схема такая:
    имеется 1 внешний e-mail - 2 и более локальных пользователей. вот тут можно даже вывести схему - два (и более) локальных пользователя ИЛИ 1 локальный + IMAP.

    ОтветитьУдалить
  3. Извиняюсь за столь поздний ответ. Здесь я описал реальную схему которая действует на 2-х небольших фирмах. Обещаю написать для 1-й почты и 2-х пользователей.

    ОтветитьУдалить
  4. Один внешний два внутренних e-mail. http://mynotesonit.blogspot.com/2010/11/hmailserver.html

    ОтветитьУдалить