Разберем как развернуть мощный и в тоже время бесплатный почтовый сервер Zimbra Collaboration 8.6. Zimbra может соперничать с Microsoft Exchange своим функционалом, в который входит необходимый набор инструментов для работы в корпоративной среде. Zimbra имеет удобный и понятный Web интерфейс, поддерживающий работу мобильных устройств, что не мало важно для сотрудников находящихся вне офиса.

Исходные данные для развертывания Zimbra:

  • Домен jakondo.ru (на этом доменном имени будет ходить почта)
  • Локальная сеть 10.5.5.0/24
  • Домен контроллер на базе Windows Server 2012R2 (AD DS, DNS) DC1, jakonda.local, 10.5.5.5 (Установленный по данной статье)
  • Установленная система Ubuntu 14.04 Trusty Tahr (10.5.5.10, Hostname — mail)
  • Настроить DNS на домен контроллере DC1, для работы почтового сервера Zimbra.
  • Выполнить предварительную настройку системы Ubuntu 14.04 Trusty Tahr перед установкой Zimbra.
  • Установить почтовый сервер Zimbra Collaboration 8.6.
  • Добавление почтового домена jakondo.ru в развернутый почтовый сервер.
  • Проверить работу почты.

Настройка DNS зоны на домен контроллере DC1

Zimbra зависит от правильно настроенного DNS сервера. Запускаем оснастку DNS Manager и в Forward Lookup Zones добавляем новую зону New Zone…

Указываем тип зоны — Primary zone, нажимаем Next.

Выбираем пункт To all DNS servers running on domain controller in this domain: jakonda.local. Нажимаем Next.

В поле Zone name — указываем как будет называться создаваемая зона. В моем случае это jakondo.ru. Нажимаем Next.

Отмечаем пункт Allow both nonsecure and secure dynamic updates. Нажимаем Next.

Нажимаем Finish.

В созданной зоне jakondo.ru добавляем необходимые для работы почтового сервера A-записи:

  • mail — 10.5.5.10 Create associated pointer (PTR) record
  • imap — 10.5.5.10 Create associated pointer (PTR) record
  • pop3 — 10.5.5.10 Create associated pointer (PTR) record
  • smtp — 10.5.5.10 Create associated pointer (PTR) record

Добавляем MX-запись:

  • в поле Host or child domain — указываем имя хоста почтового сервера (в моем случае mail).
  • в поле Fully qualied domain name (FQDN) of mail server — нажимаем Browse… и выбираем A-запись mail из зоны jakondo.ru (получится FQDN mail.jakondo.ru).
  • в поле Mail server priority — приоритет оставляю по-умолчанию 10.

В итоге должно получится вот так:

Предварительная настройка системы Ubuntu 14.04 Trusty Tahr

Перед тем как начать установку почтового сервера Zimbra на Ubuntu 14.04 Trusty Tahr, систему необходимо настроить и установить необходимые для установки зависимости.

Установка Zimbra 8.8 на Ubuntu 18.04

Рассмотрим процесс установки Zimbra Collaboration 8.8 на сервер с Ubuntu 18.04 LTS, процесс не сильно отличается от описанного в статье Установка Zimbra 8.8 на CentOS 7. Опять же, перед началом установки необходимо посетить страницу официального сайта со списком загрузок и определится найти подходящий инсталлятор к вашей версии ОС. На сегодня Zimbra 8.8 доступна для RHEL 6/7, Oracle Linux 6/7, Ubuntu 14.04/16.04 и 18.04 в beta версии, хотя как показывает практика, beta версии Zimbra не отличаются по стабильности от регулярных выпусков.

Первое что нужно настроить на сервере — корректный хостнейм и запись в файле /etc/hosts, для Zimbra — эта строка крайне важна, без неё инсталлятор не начнет свою работу.

Так же, рекомендуется настроить корректную временную зону, при помощи timedatectl ( timedatectl list-timezones — для просмотра списка, timedatectl set-timezone Europe/Kiev — для установки нужной зоны).

Переходим непосредственно к скачиванию и установке, со страницы Zimbra Collaboration Downloads скопируйте ссылку на .tgz архив версии инсталлятора под вашу ОС, скачайте его на сервер, распакуйте и перейдите в директорию с установщиком.

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

После завершения установки — необходимо открыть порты в файрволе.

Установка завершена, заходим в админ панель по адресу https://домен_или_ip:7071/

По умолчанию, админ-панель и фронт интерфейс доступны только по https с само-подписанным сертификатом, если очень нужно включить доступ по http — необходимо выполнить следующую команду (обязательно из окружения пользователя zimbra, вообще все действия с конфигурацией Zimbra необходимо выполнять из под этого пользователя).

  • https — доступ только по https
  • http — доступ только по http
  • both — смешанный режим, работает http и https

2 comments on “ Установка Zimbra 8.8 на Ubuntu 18.04 ”

Статья не может считаться полной без освещения важных моментов Zimbra 8.8.12 beta на Ubuntu 18.04:
1) после обновления работающего сервера в панели web-администрирования будет на один сервер больше;
2) ошибки stats-io и файл статистики на несколько часов съедающий всё дисковое пространство;
3) нулевая каждодневная статистика сервера;
4) невозможность обновления из репозитария через apt;
и другие мелкие.
Без рассмотрения способов борьбы со всеми болячками бета-версии, статья имеет ценность ниже нулевой.

Установка и настройка Zimbra 8.8.8

Старая зимбра распухла до невероятных размеров и в связи с этим было принято решение поднять новый в виртуальной инфраструктуре VMware .

Накатывать зимбру буду на Ubuntu server 16.04. Настройку оси оставляю на ваше усмотрение да и мануалов в сети полно. Итак, погнали.

Немного вводных: почтовик стоит за микротом, у которого 2 IP: внешний 5.xxx.xxx.xxx и внутренний 192.168.0.217. На микроте проброшены порты 80, 25, 110, 143, 443, 465, 587, 993, 995, 3443, 5222, 5223, 7143, 7993, 7025 и настроен Hairpin NAT.
Далее SSH к серваку и погнали. Все действия будем выполнять от рута.

1. Настройка Zimbra 8.8.8

в файле прописываем

Где ens160 имя сетевого интерфейса, которое можно получить по команде:

Настраиваем hosts (вместо ***** вписываем свой домен, зону при необходимости замените, у меня ru):

Настраиваем DNSMASQ и приводим к виду:

Перед установкой Zimbra необходимо выполнить два простых теста на правильность настройки записей MX и A DNS. Правильные запросы и ответы должны выглядеть так:

Проверьте правильность ответов и если тесты некорректны, то начинать устанавливать зимбру не стоит, разбирайтесь с правильностью настройки, но настройка DNS выходит за рамки этой статьи.

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

переходим в каталог

и запускаем установку

Очень важный момент. Вам нужно выбрать «Да», чтобы изменить домен и выбрать вместо hostname.domain.com свой собственный домен ********.ru

Я ставлю все кроме dnscache и IMAPD (все еще в бете), а zimbra-drive мне не нужен.
Набираем «Yes» для модификации системы.
Меняем пароль администратора, нажав цифру 6, а затем 4 в подменю и вводим новый пароль для пользователя admin.
Затем нажимаем «r» и «a» для применения изменений.
Наливаем себе чашечку кофе и ждём окончания установки.
Configuration complete — press return to exit

Жмём Enter и ребутаем:

2. Настраиваем DKIM

Извлекаем данные для txt-записи на провайдере

Публичный ключ нужно добавить как TXT-запись в домен и здесь тоже есть свои моменты. Начиная с ZCS 8.7.x зимбра генерирует 2048-битный ключ. Прописать его полностью не всегда получается вследствие ограничений в 255 символов в каждой TXT записи. На самом деле достаточно перенести часть ключа на новую строку клавишей Enter и все будет ОК.

TXT-запись прописываем в следующем виде:

Обновите DNS, и проверьте результат выполнения команды:

Если ключ извлекается то следующую команду дабы убедиться, что открытый ключ соответствует закрытому:

По настройке SPF и DMARC полно мануалов в сети, поэтому останавливаться на этом не буду.

3. Настраиваем Let`s Encrypt

при запросе домена вводим

Если все будет хорошо с проверкой, то сертификат (сертификат + открытый ключ + цепочка) будет выпущен в формате «/etc/letsencrypt/live/address/».
Далее в терминале:

В конец файла chain.pem добавляем промежуточный корневой сертификат Let`s Encrypt (представлен ниже):

Далее в терминале:

4. Перевыпуск сертификата Let`s Encrypt

Добавляем в конец файла

Сохраняем, закрываем и обратно в командную строку

Убеждаемся, что все запущено, радуемся ))

5. Перенос учетных записей

На старом сервере зимбры:

создаем список пользователей в файл users.txt

После выполнения получаем скрипт restore_pass.sh, в котором содержатся команды смены пароля пользователям на новом сервере.

На новом сервере:

Средства и миграция -> Перенос учетной записи. Кликаем на шестеренку в правом верхнем углу и запускаем мастер. Тип почтового сервера «Zimbra Collaboration Suite». Импортировать только учетки или вместе с почтой выбираем по необходимости. Далее. Выбираем «Импортировать из другого каталога Zimbra LDAP». Далее. На следующей снимаем галку с пункта «Требовать смены пароля при первом входе в систему». Далее. URL LDAP — Указываем IP старого сервера.

Пароль привязки мы можем получить со старого сервера командой:

Поисковая база dc=ru. Остальные настройки по вкусу.

Тащим на новый сервер restore_pass.sh, полученный ранее. Кладем куда-нибудь. При необходимости даем права на него. Далее:

Дожидаемся окончания. Теперь у нас на новом сервере созданы учетки (и содержимое почтовых ящиков если выбрали при миграции) и у всех пользователей старые пароли.

Установка почтового сервера Zimbra Collaboration Suite

Zimbra Collaboration Suite (ZCS) — программный продукт для автоматизации совместной деятельности рабочих групп, созданный компанией Zimbra. Среди продуктов для работы с электронной почтой Zimbra вполне может соперничать с Microsoft Exchange[3], а по своим возможностям сравнивается с Google Docs и Google Apps. (c) Wikipedia

Настраивать сервер будет для зоны example.com, параметры сервера аналогичны тем, что были в статье Установка и настройка DNS-сервера BIND на CentOS в chroot-окружении.

# host -t MX example.com example.com mail is handled by 10 mail.example.com. # mcedit /etc/hosts 127.0.0.1 localhost localhost.localdomain localhost4 localhost4.localdomain4 #::1 localhost localhost.localdomain localhost6 localhost6.localdomain6 172.16.0.1 mail.example.com example.com # hostname mail.example.com

Установка системы Zimbra Collaboration Suite

Установим дополнительно обеспечение:

# yum install wget perl perl-core ntpl nmap sudo libidn gmp libaio libstdc++ unzip sysstat sqlite

# yum remove NetworkManager firewalld

Отключаем Sendmail и Postfix:

# chkconfig sendmail off && chkconfig postfix off # service postfix stop && service sendmail stop

Скачиваем, распаковываем и запускаем установку:

# cd /tmp && wget https://files.zimbra.com/downloads/8.7.1_GA/zcs-8.7.1_GA_1670.RHEL7_64.20161025045328.tgz # tar -xvf ./zcs-8.7.1_GA_1670.RHEL7_64.20161025045328.tgz # cd ./zcs-8.7.1_GA_1670.RHEL7_64.20161025045328.tgz # ./install.sh

Если ваша система официально не поддерживается, запустите установку с ключом –-platform-override:

Возможные сообщения в процессе инсталляции:

Если вы не меняли порты при установке системы, то доступ к админке будет по адресу https://172.16.0.1:7071/zimbraAdmin/. Заходим под пользователем admin, пароль указали в момент установки.

Ошибки запуска сервера

Если установка закончилась неудачно:

Добавте в /etc/sudoers:

Если при попытке посмотреть почтовые очереди через web-интерфейс вы получаете ошибку:

Скорее всего, у вас недоступен сервер sshd по которому zimbra получает информацию об очередях. Если вы сменили стандартный 22-порт на, к примеру, 222, то нужно сообщить об это zimbra

# su — zimbra $ zmprov mcf zimbraRemoteManagementPort 222 $ zmmtactl reload

Не может приконектиться к ldap:

*** Running as zimbra user: /opt/zimbra/libexec/zmldapinit Name or service not known at /opt/zimbra/libexec/zmldapinit line 138.

Было когда на сервере nslookup example.com отдавало внешний адрес:

# nslookup mail.example.com Server: 172.16.0.1 Address: 172.16.0.1#53 Name: mail.example.com Address: 62.220.58.71

а не внутренний 172.16.0.1, и zimbra пыталась приконектиться не к локальному, а к внешнему IP который был недоступен правилами iptables.

Порты необходимые для работы Zimbra

Обязательно убедитесь, что открыли нужные порты в firewall. Например, для внутренней сети:

# iptables -A INPUT -s 192.168.0.0/24 -p tcp -m multiport —dport 25,389,444,465,587,993,995,7025,7071,7073,7080 -j ACCEPT

Подготовка и установка Zimbra

Zimbra – достаточно известный программный продукт от VMWare, который является универсальным средством для корпоративных клиентов в виде электронной почты, инструмента совместной работы, календаря и много другого. Даже в своей бесплатной версии Zimbra предоставляет пользователям все, что необходимо для удобной корпоративной работы

Но, несмотря на все удобства пользования этой замечательной программой, с ее установкой достаточно часто у рядовых пользователей возникают проблемы. Предлагаем рассмотреть процесс установки Open Source версии данного ПО под Ubuntu 12.04.

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

Имя почтового хоста — mаil.intеrface31.ru . Его А-запись указывает внешний интерфейс рабочего маршрутизатора. Сам же сервер почты располагается в рамках локальной сети под адресом 10.0.0.25. Устанавливая систему, необходимо учесть два важных фактора:

Все сообщения и само ПО хранятся в /оpt. Лучшим решением будет выделить под эту директорию отдельный диск.

В имени сервера почты должно содержаться полное FQDN-имя хоста. В данном случае имя будет выглядеть так: mаil.interfаcе31.ru .

По завершении установки потребуется обновить систему, после чего можно приступать к подготовительным мероприятиям. Для нормальной работы Zimbra требуется, чтобы на сервере DNS, который мы используем, содержались А и MX записи хоста. Если сервер электронной почты находится за NAT в рамках локальной сети, потребуется настройка схемы Split DNS (DNS с двойным горизонтом). Произвести данную настройку можно прямиком на DNS-сервере компании, а лучше и проще установить DNS-заглушку на хост с Zimbra. В ней будут содержаться все необходимые записи, а обслуживаться она будет только почтовый сервер.

Для того чтобы провернуть это необходимо сперва установить dnsmasq:

арt-get instаll dnsmаsq

После потребуется редактировать его конфиг, располагающийся в /etc/dnsmasq.conf, следующим образом:

В первой строке указывается вышестоящий сервер DNS – в данном случае нам необходимо указать один из публичных либо используемый в рамках нашей сети DNS.

Теперь корректируем еtс/hоsts:

127.0.0.1 lосаlhost.lосаldomain lосаlhost

10.0.0.25 mаil.intеrface31.ru mаil

После внесения соответствующих изменений приступаем к настройке сервера для использования локального DNS. При этом необходимо помнить о том, что resolv.conf в Ubuntu версии 12.04 генерируется в автоматическом режиме, а потому для того чтобы указать нужные DNS-сервера мы будем использовать файл interfaces, располагающийся в etc/network/. В данном случае его содержимое должно иметь следующий вид:

ifаcе eth0 inеt stаtic

Теперь нужно сохранить конфигурацию и перезагрузить сервер. Еще не лишним будет проверить, все ли настроено правильно. Для этого воспользуемся следующей командой:

Если все настроено как надо, при введении команды в качестве записи MX мы получим имя сервера, вместе с тем запись А будет указывать на локальный адрес.

Здесь мы устанавливаем требуемые зависимости следующего вида:

аpt-gеt instаll libgmp3c2

аpt-gеt instаll libpеrl5.14

аpt-gеt instаll sysstаt

аpt-gеt instаll sqlitе3

Качаем дистрибутив с сайта разработчика в архиве, после чего размещаем его (архив) на сервере. Для удобства поместим его в домашнюю папку. Далее перейдем в эту папку, где нужно распаковать его. Поскольку здесь содержатся достаточно длинные имена удобнее использовать Tab для автодополнения и вводить первые три буквы:

tаr xzvf zcs-8.0.1_GА_5438.UВUNТU12_64.20121105164409.tgz

Перейдя в распакованную папку, запускаем установочный скрипт:

После того, как произведены все необходимые настройки и зависимости, вам будет предложено перейти к установке. При отсутствии необходимого пакета скрипт сообщит вам об этом.

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

В последующем основном меню указываем пароль админа – жмем 3, затем 4, после чего указываем новый пароль. Далее жмем R, для подтверждения изменений — A и сохраняем конфигурацию. Для подтверждения жмем «Enter».

По окончании установочного процесса выполняем пару команд, чтобы убедиться в готовности необходимых служб:

В случае если та или иная служба отсутствует в списке запущенных, пробуем осуществить ее запуск следующей командой:

После того, как вы убедитесь, что все работает, как надо можно считать, что основная часть установочного пути пройдена. Далее можно произвести тонкую настройку из более удобного меню.

Установка и настройка Zimbra Open Source v.7.1 + CentOS 5.5 x64 на Hyper-V Server 2008 R2

Всем доброго времени суток.
В последнее время стало модно рассказывать о том, как я провел лето, собрал во дворе свой первый космический шатл, отдохнул в другой галактике или просто взял и перевел работу компании на новый почтовый сервер. =]
Пишу как есть, на звезду героя не претендую, единственный смысл, зачем я это делаю — а чтобы не забыть. Ну и чтобы в последующем не терять время, а обратиться к уже существующему материалу. Может позже напишу некий FAQ по наболевшим вопросам и о том, как их решить.
PS: если кого заинтересует могу запилить картинки и прочее; критика и комментарии так же приветствуются!
Поехали. Стена текста:

Имеем:
— Hyper-V Server 2008 R2
— AD 2003 (и соответствующий внутренний DNS для него)
— внешний ip-адрес и реальное зарегистрированное доменное имя
— соответствующим образом настроенный шлюз во внутренней сети (проброска портов)
Задачи:
— Поднять на HyperV почтовый сервер Zimbra Open Source Edition последней версии (на данный момент 7).
— Настроить авторизацию пользователей в AD 2003
— Настроить общую адресную книгу на поиск в AD 2003
— Настроить защиту от спама
— Настроить резервное копирование Zimbra и всех ящиков пользователей

Почему я делаю именно виртуальный сервер, а не физический? Да потому что так проще тестировать, бекапить, обслуживать и восстанавливать сервер.
Делаем все по шагам.

Установка Гостевой Операционной Системы (CentOS 5.5 х64).

Так как в линуксах я не силен, то в качестве гостевой операционной системы для HyperV я выбрал CentOS. Она является достаточно популярной и стабильной, к тому же на одном из прошлых мест моей работы она во всю использовалась аутсортинговыми компаниями.
Создание самой виртуальной машины в Hyper-V я опущу, отмечу лишь, что нужно выбрать устаревший сетевой адаптер в свойствах виртуальной машины, так как предлагаемый по умолчанию без установленных служб Linux Integration Services системой виден не будет. Как установить эти самые службы я опишу позже =)
И да, в процессе установки я не стеснялся делать снэпшоты виртуальной машины, для того чтобы всегда была возможность откатиться на один шаг назад, если что-то не заработает как надо.
Установка довольно простая и широко описана в интернетах. Я использовал данную статью как руководство. http://www.howtoforge.com/zimbra-collaboration-suite-open-source-edition-on-centos Все команды выполняем от пользователя root.
При установке CentOS 5.5 х64 выбираем следующие компоненты:
— Applications (Editors,),
— Development (Development Libraries, Development Tools, Legacy Software Development),
— Base System (Base, Legacy Software Support).

Настройка CentOS 5.5 x64 (SplitDNS)

После перезагрузки и первого запуска нам предложат сделать первоначальную настройку:

— в меню отключаем и
— настраиваем параметры сети
Ставим статический внутренний ip, маску, шлюз, внутренний DNS – сервер.
Имя будущего почтового сервера возьмем:
mail.yourdomain.com

Для корректной работы отключаем службы , и .

Перед дальнейшей установкой делаем на всякий случай апдейт системы:

Перезагружаемся.
Доставим некоторые пакеты необходимые для работы:

Первые три пакета необязательны, они должны идти вместе с системой.

Так как мы планируем использовать внутри корпоративной сети за , то необходимо правильно поднять и настроить , для того чтобы наш сервер внутри сети резолвился по внутреннему ip, а снаружи по внешнему. В статье выше с описана установка , но пути конфигурационных файлов отличаются, поэтому я нашел оф.мануал http://wiki.zimbra.com/wiki/Split_DNS и действовал уже по нему.
В статье рассматриваются два варианта создания :
a)используя .
b)используя .
Я выбрал первый вариант.

Устанавливаем (DNS-сервер):

Настраиваем файл-конфиг, используя любой понравившийся вам редактор.
Например, vim. Как с ним работать описано здесь http://ru.wikibooks.org/wiki/Vim.
Итак, начнем:

Под имеется ввиду ip-адрес внутреннего DNS-сервера или сервера пересылки.
Под подразумевается имя домена(зона) за которую будет отвечать Bind. Другими словами купленный нами домен. =)
Под – файл самой зоны.

Понятно, что — внутренний IP нашего будущего почтового сервера, а – MX запись для него в домене. (Точки в конце имён обязательны.)
Мой конфиг немного отличается, так как я добавил туда еще два внешних DNS:

Где — адрес внешнего DNS.
Теперь настроим почтовый сервер на использование основного DNS адреса.

Запускаем сервис Bind он же и прописываем его в автозагрузку:

Проверяем, что все работает как надо:

Наш сервер готов к тому чтобы стать почтовым. =)

Установка Zimbra Collaboration 7 Open Source Edition

Скачаем сам дистрибутив и распакуем его:

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

После успешной проверки соглашаемся с лицензионным соглашением:

Далее выбираем пакеты zimbra, которые хотим установить, последние два нам не нужны:

Получаем предупреждение о несоответствии платформы, на которую производится установка. На все остальные вопросы отвечаем утвердительно:

Меняем доменное имя на то, которое нам надо:

Теперь мы попадаем в главное меню и производим первичную настройку. Насколько я понял это меню нельзя вызвать после установки, поэтому если нужно произвести какие-то серьезные изменения в работе почтового сервера (поменять порты, настроить mta, проверку обновлений и т.д.), то лучше всего сделать их сейчас.

Есть так же расширенное меню — Expand menu. В принципе то же самое, но со всеми подменюшками:

Установку закончить нельзя до тех пор пока не задан пароль админской учётки. Выбираем пункт 3 (zimbra-store) и далее пункт 4 (Admin Password):

Выходим в предыдущее меню, нажав клавишу «R», и нажимаем клавишу «A» чтобы применить конфигурацию.

Предложение оповестить разработчика об успешной установке Zimbra или нет, принимайте сами.

Сервер успешно установлен, должны стартовать службы zimbra.

Настройка Zimbra Collaboration 7 Open Source Edition.

Теперь мы можем открыть в браузере web-интерфейс сервера, который расположен по адресу http://mail.yourdomain.com . Вводим учетные данные админа и попадаем в свой почтовый ящик.
Для удобства дальнейшей работы изменим интерфейс с английского на русский, открыв вкладку «Preference», далее «General», меняем «Language» на «русский», жмем «Save»+ «Yes». Перезаходим.

Далее откроем консоль администратора Zimbra, тыркнув по менюшке «Консоль управления»(Admin Console) в правом верхнем углу или наберем в адресной строке браузера https://mail.yourdomain.com:7071/zimbraAdmin/ и введем логин/пароль администратора.

Теперь об особенностях.
Глобальные настройки имеют приоритет над настройками сервера. Это означает, что если мне вдруг будет нужно для агента передачи сообщений прекратить «использовать только проверку TLS», то в настройках сервера я не смогу изменить этот параметр пока не отключу/разблокирую его в «глобальных настройках».
Класс обслуживания – является некой «политикой» применяемой к определенному домену, коих может быть несколько. Настроек в «политике» достаточно много. При создании нового домена к нему можно прикрутить определенный класс обслуживания.
В качестве дополнений в zimbra выступают zimlet’ы, не нужно путать их с расширениями администратора. Первые применяются и ориентированы на пользователей, вторые только на консоль администратора и возможности zimbra сервера.

1. Настройка авторизации через AD.

Для авторизации пользователей Zimbra позволяет использовать не только свой собственный LDAP, но так же и другие внешние источники, например AD. Настройка ее достаточно простая http://wiki.zimbra.com/wiki/LDAP_Authentication и может быть осуществлена как через консоль, так и через веб-интерфейс:
— открываем закладку «домены» — «yourdomain.com» — «настроить проверку подлинности», жмем «далее»
— выбираем «механизм проверки подлинности» — внешний «Active Directory», «имя домена» и сервер с указанием порта, жмем «далее»
— указываем имя пользователя и пароль, жмем «тест», после успешного прохождения жмем «далее» и «готово»
Самих пользователей добавить в Zimbra можно при помощи мастера переноса учетных записей из веб-интерфейса, или ручками, или при помощи скрипта описанного здесь — http://www.ossportal.ru/technologies/zimbra/blogs/152
Что удобно: при блокировании или удалении пользователя из AD, учетка в Zimbra автоматом блочится.

2. Настройка общей адресной книги на поиск в AD.

В учетках Active Directory должно быть заполнено поле «Эл.почта», именно по нему будет производиться поиск.
Так же как и с авторизацией можно воспользоваться и консолью и веб-интерфейсом:
— открываем закладку «домены» — «yourdomain.com» — «настроить GAL»
— выбираем «Режим GAL» — «внешний»; «Большинство результатов поиска по GAL» — 100; «имя учетной записи синхронизации GAL» – учетка в AD от которой, будет производиться поиск; «интервал опроса внешнего GAL» — например, 30 минут; указываем тип сервера, его имя или ip-адрес, и порт. Так же выставляем правильную поисковую базу:
DC=youdomain,DC=com
Жмем «далее»
— ставим галочку для привязки к внешнему серверу в поле заносим: DC=youdomain,DC=com (если есть) и вводим два раза пароль на учетку указанную ранее. Жмем «далее»
— для того чтобы не заворачиваться с фильтрацией ставим галочку «использовать настройки поиска по GAL для синхронизации GAL», жмем «далее»
— в следующем окне мы увидим краткую сводку параметров GAL и должны протестировать его работу. Убедимся, что поиск адресов в AD работает и завершаем работу мастера.

В версии 7.1.1, которую я устанавливал на тот момент, была проблема с фильтром поиска учетных записей в AD. Бага описана вот здесь: https://bugzilla.zimbra.com/show_bug.cgi?id=11562
Весь затык был в том, что по умолчанию фильтр для AD в Zimbra настроен на работу и поиск почты по атрибуту mailNickname (который используется, например в Exchange) и по замыслу разработчиков запрашивался при миграции пользователей из Exchange в Zimbra. Но в AD2003 по умолчанию для этих целей используется атрибут mail.(посмотреть можно через оснастку AD — свойства — редактор атрибутов). Соответственно необходимо было изменить злосчастный фильтр.
Все команды выполняем из-под пользователя zimbra:
— zmprov gcf zimbraGalLdapFilterDef >> /tmp/someconfigfile
— Меняем значение mailNickname внутри файла на mail
— Для того чтобы внести изменения нужно выполнить команду zmprov mcf для каждой строчки внутри получившегося файла. Поэтому добавим в начало каждой строки файла mcf
— Теперь подсовываем его обратно используя zmprov воспользовавшись веб-интерфейсом(«глобальные настройки»-«агент передачи данных»-«проверки через DNS»-«актуальные черные списки») или консолью:

Чтобы добавить все возможные ограничения воспользуемся командой:

Для того чтобы просмотреть имеющиеся ограничения:

Система RBL-списков не идеальна, и иногда отбрасывает нужные письма, если адресата по ошибке занесли в черный список. Чтобы этого избежать сделаем исключение в конфигурации Postfix’а, так как он осуществляет проверку сообщений до проверки по спискам RBL и принимает решение о доставке.
Создадим сперва файл postfix_rbl_override:

На основе этого файла построим карту для postfix:

Под строкой reject_unauth_destination добавим check_client_access hash:/opt/zimbra/conf/postfix_rbl_override
Запись будет выглядеть примерно так:

Делаем рестарт mta:

Не забываем делать бэкап созданных нами файлов на случай обновления Zimbra и делать рестарт mta каждый раз, когда нам нужно будет внести изменения.

Основным конфигурационным файлом Postfix’а по прежнему остается main.cf расположенному по пути /opt/zimbra/postfix/conf/main.cf Для меня важными параметрами в нем были mynetworks (доверенные сети) и smtpd_recipient_restrictions (ограничения для получателей).
Если вдруг ваш почтовый сервер стал основой мишенью для спаммеров, то сервер будет испытывать нагрузку в виде большого количества одновременных запросов на подключение. В большинстве случаев эти соединения будет отброшены из-за не существующих конечных ящиков получателей на сервере. Но эти подключения жрут ресурсы сервера. Чтобы этого избежать добавим пару строчек в main.cf:
smtpd_soft_error_limit = 2
smtpd_hard_error_limit = 3
Сделать это можно следующими командами:

Выйдем из-под пользователя zimbra и зайдем обратно под пользователем root. Перезапустим postfix выполнив от рута:

Для того чтобы не принимать письма с определенными вложениями можно отредактировать файл /opt/zimbra/conf/postfix_header_checks.
Пример:

Где в скобках перечислены расширения файлов.
Но так же легко можно воспользоваться веб-интерфейсом администратора: «глобальные настройки» — «вложения» — «новое расширение» — «добавить» — «добавить выбранное»

Для отбрасывания писем, которые валятся на не существующие адреса отвечает строчка в файле /opt/zimbra/conf/zmmta.cf:

Вместо no ставим yes. Обновления Zimbra могут его перезаписать, поэтому не забываем делать резервную копию.
С такой настройкой сервер не будет производить проверку на спам и вирусы, прежде чем отклонить письмо, содержащее неправильный адрес + можно настроить postfix так чтобы выдавать ответ 450, явно говоря о том, что такого адреса не существует. В дополнение к этому, когда команда RCPT_TO отправляет письмо на неверный адрес, Zimbra ждет 5 секунд, прежде чем принять следующую команду, тем самым замедляя работу спамера.

Дальше обратимся к файлу настроек ограничений в Postfix’е /opt/zimbra/conf/postfix_recipient_restrictions.cf:

Отбрасывает письмо, если указанный адресат не имеет корректной A или MX записи, если Postfix не является окончательным местом доставки адреса получателя (. ), или конечный домен имеет запись MX с нулевой длинной хоста.

Отвергает запрос, когда в RCPT_TO указан адрес, на который идет «отлуп» или когда адрес получателя не является достижимым.
Указанные выше записи должны находиться под первой строчкой, та самая, которая reject_non_fqdn_recipient
Делаем рестарт Zimbra,чтобы все заработало:

ЗЫ: Как описано в статье есть и недостаток такого подхода, который заключается в том, что спамеры могут вычислить реально используемые адреса путем массовых рассылок, но как именно мне не совсем понятно. =

Источник: softaltair.ru

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