CentOS: Zimbra - хороший почтовик, и не только.

Поиск идеальной почтовый системы - это, пожалуй, одно из самых сложных занятий на *nix платформе. Существует огромнейшее количество всевозможных комбинаций различного ПО, для создания полноценной почтовой системы, что порой даже удивляешься - откуда их столько? Просто по тому что на *nix платформах немного другой подход к созданию приложений - одно приложение должно выполнять одну функцию, но делать это хорошо, эт традиция началась на заре компьютерных технологий, когда объёмы оперативной памяти исчислялись десятками килобайт. По этому такая связка как Postfix + Dovecot + MySQL + Spamassassin + spamass-milter + Postfixadmin + Roundcubemail + ClamAV вполне нормальна для создания полноценной почтовой системы. Но в то же время - такая конструкция крайне сложная для начинающих админов, желающих перейти с Windows платформы (и отказать от вареза или покупки лицензии для новой версии ОС/почтовика). Но ни что не стоит на месте, в том числе и разработчики ПО. За последние года вычислительные мощность процессоров выросли на порядок, а цены на оперативную память упали до неприличных значений, по этому в наше время создание ПО для *nix систем "всё в одном", выглядит вполне нормально. Об одной такой системы мы сегодня и поговорим - Zimbra Collaboration Suite (ZCS).

Zimbra была разработана компанией Zimbra, в 2007-м году её купила Yahoo, а в 2010 выкупила VMware.
ZCS предлагается в пяти версиях: Open Source Edition, Consumer Edition, Business Email Edition, Standard Edition, Professional Edition. Версии Consumer Edition и Business Email Edition доступны только для хостинг-провайдеров. Мы будем говорить о Open Source Edition. Помимо серверной части, Zimbra так же предлагает и клиентское ПО ка кдля десктопов (Windows, Linux, Mac OS), так и для мобильных устройств (Nokia Eseries, BlackBerry, Windows Mobile, iPhone). Я не буду говорить о клиентах, по той простой причине что не вижу особой надобности - работать с Zimbra сервером можно из любого, любимого вами почтового клиента, календаря, записной книги. В частности я спокойно подключил почтовый ящик
Screenshot 2013-05-01 19.10.04
адресную книгу
Screenshot 2013-05-01 19.05.42
и календарь
Screenshot 2013-05-01 19.06.42
и всё это замечательно работает.
При этом, у нас так же, естественно, есть и web-интерфейс для всего этого
Screenshot 2013-05-01 19.12.29

Я не буду вдаваться в подробности настройки самой ZCS, я ду маю что как-нибудь напишу отдельную заметку на эту тему, а пока мы его просто установим. В качестве ОС я снова использую CentOS, по тому установка будет простой и быстрой.
Для начала нам нужно избавится от postfix`а, который идёт в комплекте с ситемой.

korp # service postfix stop
korp # chkconfig postfix off

Устновить необходимые модули

korp # yum install nc libstdc++.i686 sysstat

Внесём небольшие изменения, что бы можно было выполнить sudo без терминала

korp # nano /etc/sudoers
#Defaults    requiretty

Обязательно в hosts дольжна быть запись такого вида о вашем сервере, иначе установщик Zimbra будет очень сильно ругаться (а так же верный HOSTNAME в /etc/sysconfig/network).

korp # nano /etc/hosts
192.168.0.10	mail.korphome.ru	mail

Теперь можно скачать последнюю версия ZCS с сайта разработчиков.

korp # wget http://files2.zimbra.com/downloads/8.0.3_GA/zcs-8.0.3_GA_5664.RHEL6_64.20130305090204.tgz

Распаковываем, заходим

korp # tar xvf zcs-8.0.3_GA_5664.RHEL6_64.20130305090204.tgz
korp # cd zcs-8.0.3_GA_5664.RHEL6_64.20130305090204

Запускаем инсталятор

korp # ./install.sh --platform-override

Сам процесс установки описывать не буду, он достаточно прост и понятен без подсказок, установщик прекрасно пишет что он делает и чего он хочет от вас. В крайнем случае можно посмотреть видео по установке на youtube
После установки добавляем в автозапуск

korp # chkconfig zimbra on

Что мне ещё понравилось в Zimbra, так это ежедневные отчёты, вот пример стандартного ежедневного отчёта:

Grand Totals
------------
messages

     27   received
     59   delivered
      0   forwarded
      4   deferred  (14  deferrals)
     16   bounced
      0   rejected (0%)
      0   reject warnings
      0   held
      0   discarded (0%)

  34048   bytes received
 125547   bytes delivered
      4   senders
      4   sending hosts/domains
      5   recipients
      4   recipient hosts/domains


Per-Hour Traffic Summary
    time          received  delivered   deferred    bounced     rejected
    --------------------------------------------------------------------
    0000-0100           0          0          0          0          0 
    0100-0200           0          0          0          0          0 
    0200-0300           0          0          0          0          0 
    0300-0400           1          1          0          2          0 
    0400-0500           0          0          0          0          0 
    0500-0600           0          0          0          0          0 
    0600-0700           0          0          0          0          0 
    0700-0800           0          0          0          0          0 
    0800-0900           0          0          0          0          0 
    0900-1000           0          0          0          0          0 
    1000-1100           0          0          0          0          0 
    1100-1200           0          0          0          0          0 
    1200-1300           2          6          0          2          0 
    1300-1400           0          0          0          0          0 
    1400-1500           6          6          0         12          0 
    1500-1600           0          0          0          0          0 
    1600-1700           0          0          0          0          0 
    1700-1800           0          0          0          0          0 
    1800-1900           0          0          0          0          0 
    1900-2000           0          0          0          0          0 
    2000-2100           5         10         14          0          0 
    2100-2200           4         17          0          0          0 
    2200-2300           8         16          0          0          0 
    2300-2400           1          3          0          0          0 

Host/Domain Summary: Message Delivery (top 50)
 sent cnt  bytes   defers   avg dly max dly host/domain
 -------- -------  -------  ------- ------- -----------
     31    32913        3     1.9 m   56.6 m  mail.korphome.ru
     23    73675       11     9.1 m    1.4 h  korphome.ru
      3     3368        0     1.3 s    2.5 s  bk.ru
      2    15591        0     2.0 s    2.4 s  me.com

Host/Domain Summary: Messages Received (top 50)
 msg cnt   bytes   host/domain
 -------- -------  -----------
     17     7921   mail.korphome.ru
      6    20959   me.com
      2     3677   gmail.com
      2     1491   korphome.ru

top 50 Senders by message count
-------------------------------
     17   zimbra@mail.korphome.ru
      6   e.elizarov@me.com
      2   korpmac@gmail.com
      2   eli.ei@korphome.ru

top 50 Recipients by message count
----------------------------------
     30   admin@mail.korphome.ru
     23   eli.ei@korphome.ru
      3   korp@bk.ru
      2   e.elizarov@me.com
      1   virus-quarantine.xmc3kb7do@mail.korphome.ru

top 50 Senders by message size
------------------------------
  20959   e.elizarov@me.com
   7921   zimbra@mail.korphome.ru
   3677   korpmac@gmail.com
   1491   eli.ei@korphome.ru

top 50 Recipients by message size
---------------------------------
  73675   eli.ei@korphome.ru
  30203   admin@mail.korphome.ru
  15591   e.elizarov@me.com
   3368   korp@bk.ru
   2710   virus-quarantine.xmc3kb7do@mail.korphome.ru

message deferral detail
-----------------------
  error (total: 1)
         1   7025: Connection refused
  lmtp (total: 13)
        13   7025: Connection refused

message bounce detail (by relay)
--------------------------------
  none (total: 16)
         9   Host not found
         7   mail.korphome.ru

message reject detail: none

message reject warning detail: none

message hold detail: none

message discard detail: none

smtp delivery failures: none

Warnings
--------
  proxymap (total: 2)
         1   dict_ldap_connect: Unable to bind to server ldap://mail.korphom...
         1   dict_ldap_lookup: Search error -5: Timed out 
  qmgr (total: 5)
         5   problem talking to service rewrite: Connection timed out
  trivial-rewrite (total: 9)
         5   write resolver reply: Broken pipe
         2   proxy:ldap:/opt/zimbra/conf/ldap-transport.cf lookup error for "*"
         1   proxy:ldap:/opt/zimbra/conf/ldap-vad.cf: table lookup problem
         1   virtual_alias_domains lookup failure

Fatal Errors: none

Panics: none

Master daemon messages
----------------------
      2   daemon started -- version 2.10-20121007, configuration /opt/zimbra/postfix-2.10-20121007.2z/conf
      2   terminating on signal 15

ну а так же очень милые уведомления о спаме и вирусах. В общем то ничего особенного, мелочь, но всё-равно приятно.
Что касается управления сервером из консоли - он производится под пользователем zimbra, полный список комманд можно найти в мане.

Чёрные и белые списки антиспама
Ящики заносятся в файл /opt/zimbra/conf/amavisd.conf.in в секии a hash-type lookup table. Разрешения на ящик определяются на основе очков, присвоенных ящику. Что бы ящик был в белом списке - кол-во очков должно быть отрицательным, а для добавления в чёрный список соответственно - положительным.

{ # a hash-type lookup table (associative array)
‘nobody@cert.org’ => -3.0,
‘my-email@my-domain.ru’ => -3.0,
‘not-my-email@not-my-domain.ru’ => 10.0,

На этом пожалуй всё. Советую читать внимательно документацию и wiki. А для себя я понял, что это крайне неплохая замена MS Exchange.

Добавить комментарий