Now I get this failure
com.zimbra.common.service.ServiceException: system failure: Unable to read logger stats
ExceptionId:qtp2054798982-120:https://HOST_IP:7071/service/admin/soap/GetLoggerStatsRequest:1411203289152:db400a75897ee98d
Code:service.FAILURE
at com.zimbra.common.service.ServiceException.FAILURE(ServiceException.java:260)
at com.zimbra.cs.service.admin.GetLoggerStats.execfetch(GetLoggerStats.java:454)
at com.zimbra.cs.service.admin.GetLoggerStats.fetchHostnames(GetLoggerStats.java:228)
at com.zimbra.cs.service.admin.GetLoggerStats.handle(GetLoggerStats.java:158)
at com.zimbra.soap.SoapEngine.dispatchRequest(SoapEngine.java:564)
at com.zimbra.soap.SoapEngine.dispatch(SoapEngine.java:427)
at com.zimbra.soap.SoapEngine.dispatch(SoapEngine.java:265)
at com.zimbra.soap.SoapServlet.doWork(SoapServlet.java:303)
at com.zimbra.soap.SoapServlet.doPost(SoapServlet.java:213)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:707)
at com.zimbra.cs.servlet.ZimbraServlet.service(ZimbraServlet.java:209)
at javax.servlet.http.HttpServlet.service(HttpServlet.java:790)
at org.eclipse.jetty.servlet.ServletHolder.handle(ServletHolder.java:738)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1651)
at com.zimbra.cs.servlet.RequestStringFilter.doFilter(RequestStringFilter.java:54)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1622)
at com.zimbra.cs.servlet.SetHeaderFilter.doFilter(SetHeaderFilter.java:59)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1622)
at org.eclipse.jetty.servlets.UserAgentFilter.doFilter(UserAgentFilter.java:83)
at org.eclipse.jetty.servlets.GzipFilter.doFilter(GzipFilter.java:351)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1622)
at com.zimbra.cs.servlet.ETagHeaderFilter.doFilter(ETagHeaderFilter.java:47)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1622)
at com.zimbra.cs.servlet.ContextPathBasedThreadPoolBalancerFilter.doFilter(ContextPathBasedThreadPoolBalancerFilter.java:124)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1622)
at com.zimbra.cs.servlet.ZimbraQoSFilter.doFilter(ZimbraQoSFilter.java:116)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1622)
at com.zimbra.cs.servlet.ZimbraInvalidLoginFilter.doFilter(ZimbraInvalidLoginFilter.java:117)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1622)
at org.eclipse.jetty.servlets.DoSFilter.doFilterChain(DoSFilter.java:457)
at org.eclipse.jetty.servlets.DoSFilter.doFilter(DoSFilter.java:326)
at org.eclipse.jetty.servlets.DoSFilter.doFilter(DoSFilter.java:299)
at org.eclipse.jetty.servlet.ServletHandler$CachedChain.doFilter(ServletHandler.java:1622)
at org.eclipse.jetty.servlet.ServletHandler.doHandle(ServletHandler.java:549)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:143)
at org.eclipse.jetty.security.SecurityHandler.handle(SecurityHandler.java:544)
at org.eclipse.jetty.server.session.SessionHandler.doHandle(SessionHandler.java:221)
at org.eclipse.jetty.server.handler.ContextHandler.doHandle(ContextHandler.java:1111)
at org.eclipse.jetty.servlet.ServletHandler.doScope(ServletHandler.java:478)
at org.eclipse.jetty.server.session.SessionHandler.doScope(SessionHandler.java:183)
at org.eclipse.jetty.server.handler.ContextHandler.doScope(ContextHandler.java:1045)
at org.eclipse.jetty.server.handler.ScopedHandler.handle(ScopedHandler.java:141)
at org.eclipse.jetty.server.handler.ContextHandlerCollection.handle(ContextHandlerCollection.java:199)
at org.eclipse.jetty.server.handler.HandlerCollection.handle(HandlerCollection.java:109)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
at org.eclipse.jetty.rewrite.handler.RewriteHandler.handle(RewriteHandler.java:309)
at org.eclipse.jetty.server.handler.DebugHandler.handle(DebugHandler.java:81)
at org.eclipse.jetty.server.handler.HandlerWrapper.handle(HandlerWrapper.java:97)
at org.eclipse.jetty.server.Server.handle(Server.java:462)
at org.eclipse.jetty.server.HttpChannel.handle(HttpChannel.java:279)
at org.eclipse.jetty.server.HttpConnection.onFillable(HttpConnection.java:232)
at org.eclipse.jetty.io.AbstractConnection$2.run(AbstractConnection.java:534)
at org.eclipse.jetty.util.thread.QueuedThreadPool.runJob(QueuedThreadPool.java:607)
at org.eclipse.jetty.util.thread.QueuedThreadPool$3.run(QueuedThreadPool.java:536)
at java.lang.Thread.run(Thread.java:745)
Caused by: java.net.ConnectException: Connection refused
at java.net.PlainSocketImpl.socketConnect(Native Method)
at java.net.AbstractPlainSocketImpl.doConnect(AbstractPlainSocketImpl.java:345)
at java.net.AbstractPlainSocketImpl.connectToAddress(AbstractPlainSocketImpl.java:206)
at java.net.AbstractPlainSocketImpl.connect(AbstractPlainSocketImpl.java:188)
at java.net.SocksSocketImpl.connect(SocksSocketImpl.java:392)
at java.net.Socket.connect(Socket.java:589)
at java.net.Socket.connect(Socket.java:538)
at java.net.Socket.<init>(Socket.java:434)
at java.net.Socket.<init>(Socket.java:244)
at com.zimbra.cs.service.admin.GetLoggerStats.execfetch(GetLoggerStats.java:395)
… 53 more
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:
# ./install.sh –-platform-override
Возможные сообщения в процессе инсталляции:
DNS ERROR resolving MX for mail.example.com
It is suggested that the domain name have an MX record configured in DNS
Change domain name? [Yes] yes
Create domain: [mail.example.com] example.com "УКАЗЫВАЕМ ТОЛЬКО ДОМЕН"
MX: mail.example.com (127.16.0.1)
Interface: 127.16.0.1
Interface: 127.0.0.1
Interface: ::1
или:
DNS ERROR - none of the MX records for example.com
resolve to this host
It is suggested that the MX record resolve to this host
Re-Enter domain name? [Yes] no "Ничего не меняем"
done.
Если вы не меняли порты при установке системы, то доступ к админке будет по адресу https://172.16.0.1:7071/zimbraAdmin/. Заходим под пользователем admin, пароль указали в момент установки.
Ошибки запуска сервера
Если установка закончилась неудачно:
*** Running as zimbra user: /opt/zimbra/libexec/zmldapinitsudo:
sorry, you must have a tty to run sudo
IO::Socket::INET: connect: Connection refused at /opt/zimbra/libexec/zmldapinit line 137.
Добавте в /etc/sudoers:
Defaults requiretty # После этого добавить
Defaults: %zimbra !requiretty # это
Defaults: zimbra !requiretty # и это
Если при попытке посмотреть почтовые очереди через web-интерфейс вы получаете ошибку:
Сообщение: system failure: exception during auth
{RemoteManager: mail.example.com->zimbra@mail.example.com:22}
Код ошибки: service.FAILURE Method: [unknown] Детали:soap:Receiver
Скорее всего, у вас недоступен сервер 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
- Настройка DKIM, SPF и DMARC в Zimbra Collaboration Suite
- Установка плагина Policyd с web-интерфейсом в Zimbra
- Архивирование и восстановление почтового сервера Zimbra
Aidan, 21/08/2013 — 17:57
Приветствую всех…
Собственно вопрос следующий, поставил Zimbra 8, с web админки настроил проверку подлинности через AD, (теперь юзеры которых я в ручную вводил для авторизации используют свой доменный пароль), настроил GAL (LDAP), а вот импортировать почтовые адреса пользователей с AD не могу пытаюсь выковырять их из каталога LDAP через «мастера миграции».
Прописываю адрес LDAP, DN привязку, пароль (в AD он создан и авторизацию проходит), в поисковой базе LDAP прописываю ( dc=server, dc=com)., в фильтрах LDAP (|( cn=%s*)( sn=%s*)( gn=%s*)( mail=%s*)) согласно офф мануалу и получаю следующее:
Сообщение: system failure: unable to search gal Код ошибки: service.FAILURE Method: [unknown] Детали:soap:Receiver
Я так понимаю косяк мой в фильтрах LDAP кроется, подскажите plz как поправить, чтобы адреса юзеров с AD в Zimbra импортировать.
Новые пользователи
Сейчас на сайте
Сейчас на сайте 0 пользователей и 1 гость.
Обновлено: 27.01.2023
Опубликовано: 16.02.2020
Используемые термины: Zimbra, Linux, SMTP, POP3, IMAP.
Почтовый сервер Zimbra устанавливается с помощью скрипта, который можно скачать с сайта разработчика. После установки мы получим полноценный почтовый сервер:
- SMTP-сервер для отправки писем.
- Чтение и работа с почтой по POP3/IMAP.
- Работа с почтой по веб-интерфейсу.
- Графическая панель управления почтовым сервером.
Прежде, чем начать, нам понадобится:
- Статический IP-адрес, который мы должны заказать у Интернет провайдера (не требуется, если мы арендуем сервер).
- Зарегистрированное доменое имя (заказывается у поставщика соответвтующих услуг, например, REG.RU).
В процессе мы также должны будем настроить:
- Записи в DNS для корректной отправки почты.
- Проброс портов (если наш сервер находится за NAT).
- Корректный сертификат для подключения к серверу без ошибок и предупреждений.
Принцип установки аналогичный для любого дистрибутива Linux. Важно, чтобы данный дистрибутив официально поддерживался Zimbra.
Какие выбрать дистрибутив для Linux и версию Zimbra
Подготовка сервера
Время
Безопасность
Hosts
Системная переменная для имени сервера
Установка Zimbra
Правильная настройка DNSCache
Базовая настройка zimbra
Как добавить домен
Как создать почтовый ящик
Описание записей, которые нужно создать в DNS
Проброс портов для запросов из Интернет
Настройка подписи DKIM
Тестовое письмо
Установка SSL-сертификата
Получение
Установка
Продление
Настройки почтового клиента
Защита от СПАМа
Дополнительные настройки
Работа с белым списком
Максимальный размер сообщений
Транспортные правила
Возможные ошибки
Выбор дистрибутива Linux и версии Zimbra
Список дистрибутивов Linux, которые поддерживаются разработчиком Zimbra, описан на официальном сайте страницах загрузки. В данной инструкции мы рассмотрим процесс установки для Ubuntu 18.04 и CentOS 7, однако, процесс настройки для других систем, во многом, аналогичен.
Zimbra имеет две основные версии — платную Network Edition и бесплатную Open Source Edition (OSE). К сожалению, последняя больше не поддерживается — для загрузки доступна только версия 8.8.12, которая больше не обновляется. Сравнение данных версий можно найти на официальном сайте. В центре загрузки Zimbra мы также можем выбрать и скачать дистрибутив для платной или бесплатной версий. В данной инструкции мы скачем и установим платную demo-версию и лицензируем ее временным ключом, дающим право использовать программный продукт в течение 60 дней. По прошествии данного периода, программный продукт необходимо купить или прекратить использовать.
Подготовка сервера
Независимо от выбранного дистрибутива Linux или редакции Zimbra выполняем следующие действия для подготовки сервера к корректной работы почтового сервера.
1. Настройка времени
Устанавливаем корректный часовой пояс:
timedatectl set-timezone Europe/Moscow
* в данном примере мы зададим московское время.
Теперь установим утилиту для синхронизации времени и запустим ее.
а) если используем систему на базе RPM (CentOS / Red Hat):
yum install chrony
systemctl enable chronyd —now
б) если используем систему на базе deb (Ubuntu):
apt-get install chrony
systemctl enable chrony —now
2. Безопасность
SELinux
Если на сервере используется SELinux (по умолчанию, на системах RPM), рекомендуется ее отключить. Для этого вводим 2 команды:
setenforce 0
sed -i ‘s/^SELINUX=.*/SELINUX=disabled/g’ /etc/selinux/config
* подробнее в статье Как отключить SELinux.
Брандмауэр
Для нормальной работы Zimbra нужно открыть много портов:
- 25 — основной порт для обмена почтой по протоколу SMTP.
- 80 — веб-интерфейс для чтения почты (http).
- 110 — POP3 для загрузки почты.
- 143 — IMAP для работы с почтовым ящиком с помощью клиента.
- 443 — SSL веб-интерфейс для чтения почты (https).
- 465 — безопасный SMTP для отправки почты с почтового клиента.
- 587 — SMTP для отправки почты с почтового клиента (submission).
- 993 — SSL IMAP для работы с почтовым ящиком с помощью клиента.
- 995 — SSL POP3 для загрузки почты.
- 5222 — для подключения к Zimbra по протоколу XMPP.
- 5223 — для защищенного подключения к Zimbra по протоколу XMPP.
- 7071 — для защищенного доступа к администраторской консоли.
- 8443 — SSL веб-интерфейс для чтения почты (https).
- 7143 — IMAP для работы с почтовым ящиком с помощью клиента.
- 7993 — SSL IMAP для работы с почтовым ящиком с помощью клиента.
- 7110 — POP3 для загрузки почты.
- 7995 — SSL POP3 для загрузки почты.
- 9071 — для защищенного подключения к администраторской консоли.
В зависимости от утилиты управления фаерволом, команды будут следующие.
а) Если используем firewalld (Red Hat, CentOS):
firewall-cmd —permanent —add-port={25,80,110,143,443,465,587,993,995,5222,5223,9071,7071,8443,7143,7993,7110,7995}/tcp
firewall-cmd —reload
б) Если используем iptables (Ubuntu):
Порты для веб:
iptables -I INPUT -p tcp —match multiport —dports 80,443 -j ACCEPT
Порты для почты:
iptables -I INPUT -p tcp —match multiport —dports 25,110,143,465,587,993,995 -j ACCEPT
Порты для Zimbra:
iptables -I INPUT -p tcp —match multiport —dports 5222,5223,9071,7071,8443,7143,7993,7110,7995 -j ACCEPT
Сохраняем правила:
netfilter-persistent save
* если команда вернет ошибку, то установим пакет: apt-get install iptables-persistent.
в) Если используем ufw (Ubuntu):
ufw allow 25,80,110,143,443,465,587,993,995,5222,5223,9071,7071,8443,7143,7993,7110,7995/tcp
3. DNS и имя сервера
Для корректной работы почтового сервера необходимо создать mx-записи для домена (подробнее о записях в DNS).
Но для установки Zimbra важнее, чтобы в локальном файле hosts была запись о нашем сервере, в противном случае, установка прервется с ошибкой. И так, задаем FQDN-имя для сервера:
hostnamectl set-hostname zimbra.dmosk.ru
Теперь открываем на редактирование файл:
vi /etc/hosts
… и добавляем:
192.168.1.15 zimbra.dmosk.ru zimbra
* где 192.168.1.15 — IP-адрес нашего сервера; zimbra — имя сервера; dmosk.ru — наш домен.
Не совсем очевидная проблема, но если в системе не будет пакета hostname, при попытке запустить установку зимбры, мы будем получать ошибку определения IP-адреса по имени. Устанавливаем пакет.
а) для CentOS (Red Hat):
yum install hostname
б) если Ubuntu (Debian):
apt-get install hostname
4. Системная переменная для имени сервера
Чтобы нам было удобнее вводить команды, где требуется указать имя сервера, создадим системную переменную:
myhostname=$(hostname)
Теперь мы можем в команде использовать переменную $myhostname.
Загрузка дистрибутива и установка Zimbra
Переходим по одной из ссылок выше для загрузки платной или бесплатной версии.
Если мы планируем установить платную версию, сначала кликаем по START FREE TRIAL:

Проходим процедуру регистрации. На указанный адрес электронной почты мы получим файл с лицензией (на 60 дней). Переносим данный файл на сервер Zimbra, например, при помощи программы WinSCP.
Возвращаемся на страницу загрузки zimbra и копируем ссылку на дистрибутив:

Используя скопированную ссылку, загружаем дистрибутив Zimbra:
wget https://files.zimbra.com/downloads/8.8.15_GA/zcs-NETWORK-8.8.15_GA_3869.UBUNTU18_64.20190918004220.tgz
Распаковываем скачанный архив:
tar -xzvf zcs-*.tgz
Переходим в распакованный каталог:
cd zcs-*/
Запускаем установку почтового сервера:
./install.sh
На экране отобразится лицензионное соглашение — принимаем его:
Do you agree with the terms of the software license agreement? [N] Y
* в платной версии лицензионное соглашение нужно принять дважды.
Разрешаем использование репозитория от Zimbra:
Use Zimbra’s package repository [Y] Y
Устанавливаем необходимые модули (или все):
Install zimbra-ldap [Y] Y
Install zimbra-logger [Y] Y
Install zimbra-mta [Y] Y
Install zimbra-dnscache [Y] Y
Install zimbra-snmp [Y] Y
Install zimbra-store [Y] Y
Install zimbra-apache [Y] Y
Install zimbra-spell [Y] Y
Install zimbra-convertd [Y] Y
Install zimbra-memcached [Y] Y
Install zimbra-proxy [Y] Y
Install zimbra-archiving [N] Y
Install zimbra-drive [Y] Y
Install zimbra-imapd (BETA — for evaluation only) [N] N
Install zimbra-network-modules-ng [Y] Y
Install zimbra-talk [Y] Y
* в зависимости от ситуации, мы можем выбрать лишь несколько компонентов, например, для использования сервера в качестве агента передачи сообщений, мы можем оставить только zimbra-mta. Но в нашем примере мы будем настраивать Zimbra со всем компонентами.
Подтверждаем ранее введенные настройки:
The system will be modified. Continue? [N] Y
Начнется процесс установки и конфигурирования Zimbra. Ждем окончания процесса.
Если для нашего домена еще нет записи MX, мы увидим сообщение:
It is suggested that the domain name have an MX record configured in DNS
Установщик предложит поменять домен — отвечаем отрицательно:
Change domain name? [Yes] No
… установщик покажет меню с настройкой Zimbra:
Main menu
1) Common Configuration:
2) zimbra-ldap: Enabled
3) zimbra-logger: Enabled
4) zimbra-mta: Enabled
5) zimbra-dnscache: Enabled
6) zimbra-snmp: Enabled
7) zimbra-store: Enabled
+Create Admin User: yes
+Admin user to create: admin@zimbra.dmosk.ru
******* +Admin Password UNSET
+Anti-virus quarantine user: virus-quarantine.k3uvuwts2@zimbra.dmosk.ru
+Enable automated spam training: yes
+Spam training user: spam.lonovprz@zimbra.dmosk.ru
+Non-spam(Ham) training user: ham.xqt7qrca@zimbra.dmosk.ru
+SMTP host: zimbra.dmosk.ru
+Web server HTTP port: 8080
+Web server HTTPS port: 8443
+Web server mode: https
+IMAP server port: 7143
+IMAP server SSL port: 7993
+POP server port: 7110
+POP server SSL port: 7995
+Use spell check server: yes
+Spell server URL: http://zimbra.dmosk.ru:7780/aspell.php
+Enable version update checks: TRUE
+Enable version update notifications: TRUE
+Version update notification email: admin@zimbra.dmosk.ru
+Version update source email: admin@zimbra.dmosk.ru
+Install mailstore (service webapp): yes
+Install UI (zimbra,zimbraAdmin webapps): yes
******* +License filename: UNSET
8) zimbra-spell: Enabled
9) zimbra-convertd: Enabled
10) zimbra-proxy: Enabled
11) Default Class of Service Configuration:
12) Enable default backup schedule: yes
s) Save config to file
x) Expand menu
q) Quit
В данном случае мы можем поменять любую из настроек. Настройки, которые необходимо сделать для продолжения установки показаны звездочками — в данном примере необходимо задать пароль администратора (Admin Password) и указать путь до файла с лицензией (License filename). И так, кликаем 7:
Address unconfigured (**) items (? — help) 7
Переходим к установке пароля:
Select, or ‘r’ for previous menu [r] 4
… и задаем пароль.
Если мы устанавливаем платную версию, указываем путь до файла с лицензией:
Select, or ‘r’ for previous menu [r] 25
… и указываем путь до файла с лицензией, например:
Enter the name of the file that contains the license: /opt/zimbra/ZCSLicense.xml
Теперь выходим из меню:
Select, or ‘r’ for previous menu [r] r
Применяем настройки:
Select from menu, or press ‘a’ to apply config (? — help) a
Сохраняем конфигурационный файл:
Save configuration data to a file? [Yes] Y
Соглашаемся с путем сохранения файла:
Save config in file: [/opt/zimbra/config.20863]
Продолжаем конфигурирование:
The system will be modified — continue? [No] Y
Дожидаемся окончания установки, на запрос отправки уведомления можно ответить отказом:
Notify Zimbra of your installation? [Yes] n
В конечном итоге, нажимаем Enter:
Configuration complete — press return to exit
Сервер установлен. Однако, установщик меняет пароль пользователя root. Меняем его обратно:
passwd root
Zimbra DNSCache
Вместе с зимброй мы установили службу dnscache, которая позволяет увеличить производительность почтового сервера. Однако, принцип работы сети немного меняется, а именно, в файле /etc/resolv.conf появляется запись:
nameserver 127.0.0.1
… а разрешение DNS имени в IP-адреса перестает работать. Удаление или смена записи в файле resolv.conf ни к чему не приводит, так как, по прошествии некоторого времени, настройка принимает исходный вид.
Для корректной настройки службы dnscache необходимо сначала посмотреть Master DNS в настройках Zimbra:
su — zimbra -c «zmprov getServer ‘$myhostname’ | grep DNSMasterIP»
* где $myhostname — имя сервера, на котором установлена Zimbra (в данной конфигурации, zimbra.dmosk.ru).
В моем случае было:
zimbraDNSMasterIP: 127.0.0.53
Удалить данную запись:
su — zimbra -c «zmprov ms ‘$myhostname’ -zimbraDNSMasterIP 127.0.0.53»
И добавить свои рабочие серверы DNS, например:
su — zimbra -c «zmprov ms ‘$myhostname’ +zimbraDNSMasterIP 192.168.1.1»
su — zimbra -c «zmprov ms ‘$myhostname’ +zimbraDNSMasterIP 8.8.8.8»
su — zimbra -c «zmprov ms ‘$myhostname’ +zimbraDNSMasterIP 77.88.8.8»
* где 192.168.1.1 — DNS сервер в моей сети; 8.8.8.8 — DNS сервер от Google; 77.88.8.8 — DNS сервер от Яндекс.
Теперь DNS-запросы на сервере будут работать.
zimbraMtaLmtpHostLookup
Если наш сервер находится за NAT и разрешение IP происходит не во внутренний адрес, а внешний (можно проверить командой nslookup <имя сервера>), после настройки наш сервер не сможет принимать почту, а в логах мы можем увидеть ошибку delivery temporarily suspended: connect to 7025: Connection refused). Это происходит из-за попытки Zimbra передать письмо в очереди по внутреннему порту локальной почты 7025 (LMTP) на внешний адрес, который недоступен из NAT. Для решения проблемы можно использовать внутренний DNS с другими А-записями (split dns) или собственный поиск IP-адресов для lmtp, а не для DNS. Рассмотрим второй вариант — вводим две команды:
su — zimbra -c «zmprov ms $myhostname zimbraMtaLmtpHostLookup native»
su — zimbra -c «zmprov mcf zimbraMtaLmtpHostLookup native»
* где $myhostname — имя нашего почтового сервера.
После перезапускаем службы зимбры:
su — zimbra -c «zmmtactl restart»
Настройка zimbra после установки
Чтобы начать пользоваться сервером, внесем основные настройки. Для этого открываем браузер и вводим адрес https://<IP-адрес сервера>:7071 — должна открыться страница с ошибкой, разрешаем открытие страницы и мы увидим форму для входа в панель администрирования Zimbra. Вводим логин admin и пароль, который задавали при установке.
Добавление домена
Если мы не меняли рабочий домен в настройках во время установки сервера, то основной домен будет таким же, как имя сервера. Как правило, это не то, что нам нужно. И так, заходим в Настройка — Домены. В правой части окна кликаем по значку шестеренки и Создать:

Задаем название для нового домена:

… и кликаем Далее.
В следующем окне выбираем сервер:

… можно нажать Готово.
Теперь поменяем домен по умолчанию. Переходим в Настройка — Глобальные настройки. Меняем значение для поля «Домен по умолчанию»:

… и нажимаем Сохранить.
Создание почтового ящика
Переходим с главного меню панели администрирования в Управление — Учетные записи. Справа кликаем по шестеренке — Создать:

Задаем имя учетной записи, а также фамилию пользователя:

Задаем пароль пользователя и, по желанию, ставим галочку Требуется сменить пароль:

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

Нажимаем Готово.
Настройка DNS
Для корректной работы почты необходимо настроить DNS для нашего домена.
1. Запись MX.
Позволяет определить почтовый сервер для домена. Подробнее о том, что это и как ее правильно прописать в статье Что такое MX-запись.
2. Запись A.
Для нашего сервера, который определен как MX запись нужна запись А, которая указывает на его IP-адрес. В моем примере это сервер zimbra.dmosk.ru, который из сети Интернет должен разрешаться во внешний IP-адрес.
3. PTR.
Данная запись представляет из себя обратное разрешение IP-адреса в домен. С ее помощью подтверждается легитимность отправителя. Подробнее в статье Что такое PTR-запись.
4. SPF.
Это запись TXT, которая определяет список серверов для домена, с которых разрешена отправка почты. Подробнее — Что такое SPF.
5. DKIM.
Подтверждение владельца домена. Письмо отправляется с зашифрованным заголовком и расшифровать его можно с помощью последовательности, хранящейся в TXT-записи на DNS. Соответственно, если владелец домена разместил такую последовательность, то он и является его владельцем. Подробнее — Что такое DKIM. Также в данной инструкции ниже мы разберем настройку DKIM на Zimbra.
6. DMARC.
Определяет для домена политику проверки писем. Подробнее — Что такое DMARC.
Проброс портов
Если наш сервер находится во внутренней сети, необходимо настроить проброс портов. В двух словах, это настройка на сетевом устройстве, которое смотрит в Интернет, которая позволит запросы на определенный порт передать на наш почтовый сервер.
Пример настройки для Mikrotik приведен в инструкции Перенаправление запросов (проброс портов) на Mikrotik.
Настройка DKIM
Отдельно рассмотрим процесс настройки подписи DKIM на почтовом сервере Zimbra. Формирование ключей выполняется для каждого из доменов из командной строки. Подключаемся к серверу по SSH и вводим команду:
su — zimbra -c «/opt/zimbra/libexec/zmdkimkeyutil -a -d dmosk.ru»
* данная команда создаст последовательности ключей для домена dmosk.ru.
Мы должны получить ответ на подобие:
Public signature to enter into DNS:
5D8C3E02-4EFA-11EA-872A-D9A5B4628C49._domainkey IN TXT ( «v=DKIM1; k=rsa; «
«p=MIIBIjANBgkqhkiG9w0BAQEFAAOCAQ8AMIIBCgKCAQEA5iLy58AJ1fdB15BZgh/VtGfZsi+TrDyvqqZaL5pJ+MQaQrpqHW8AF5kyxW2QzAMjyKzySMZX0PoHUuV93Yxf2t52IFihvb7ivqmRwlqFV3gU7j8zqbAGWHfZo4Ydw0kUmU6pm+Z85aWt4k7rQ7vWXludQGf8yIaSMMmodxze9E5VUOtUA18dIEEPcbwSgOO6YhQLuC78T4FiF5»
«8epQnsX0voSfg9tMW+r+P1b5fTy5Guyqh1plWYseKxPzHKHbc4Lokcgo1AZzKG5Mvo5OCXsKUE1fSoc366AFSoUnWr23P7oUbf+NjXzPMS8ESGA9TfpDA6eRJT4QEpi72AdIy4rQIDAQAB» ) ; —— DKIM key 5D8C3E02-4EFA-11EA-872A-D9A5B4628C49 for dmosk.ru
В данном ответе нас интересуют записи 5D8C3E02-4EFA-11EA-872A-D9A5B4628C49._domainkey — это имя для TXT в домене dmosk.ru; «v=DKIM1; k=rsa; » «p=M…AB» — содержимое записи.
В настройках домена необходимо добавить данную запись, после чего подождать, минут 15. После выполняем проверку:
opendkim-testkey -d dmosk.ru -s 5D8C3E02-4EFA-11EA-872A-D9A5B4628C49 -x /opt/zimbra/conf/opendkim.conf
* где dmosk.ru — наш домен; 5D8C3E02-4EFA-11EA-872A-D9A5B4628C49 — селектор, который мы видели в записи 5D8C3E02-4EFA-11EA-872A-D9A5B4628C49._domainkey.
* если при вводе команды мы получим ошибку «Command ‘opendkim-testkey’ not found», необходимо установить opendkim-tools командой apt-get install opendkim-tools (deb) или yum install opendkim-tools (RPM).
Для просмотра имеющихся записей DKIM можно воспользоваться командой:
su — zimbra -c «/opt/zimbra/libexec/zmdkimkeyutil -q -d dmosk.ru»
Отправка тестового письма
Открываем браузер и переходим по ссылке https://<IP-адрес сервера>:8443/ — откроется веб-клиент для чтения и отправки почты. В качестве логина используем созданный email и его пароль.
Теперь заходим на сайт https://www.mail-tester.com/ и копируем email-адрес для отправки тестового сообщения:

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

Если наше письмо не получило 10 баллов, анализируем проблемы и исправляем их.
Установка SSL-сертификата
При заходе на веб-интерфейс мы будем получать ошибку, так как по умолчанию, создается самоподписный сертификат. Рассмотрим процесс установки бесплатного сертификата от Let;s Encrypt.
Получение сертификата
Создаем каталог:
mkdir /opt/letsencrypt
Загружаем в него утилиту letsencrypt-auto:
wget https://raw.githubusercontent.com/certbot/certbot/7f0fa18c570942238a7de73ed99945c3710408b4/letsencrypt-auto-source/letsencrypt-auto -O /opt/letsencrypt/letsencrypt-auto
Разрешаем ее запускать на выполнение:
chmod +x /opt/letsencrypt/letsencrypt-auto
После чего:
/opt/letsencrypt/letsencrypt-auto certonly —standalone
Будет установлено несколько пакетов, после необходимо ввести адрес почты, принять лицензионное соглашение и, в принципе, можно подписаться на рассылки от Let’s Encrypt:
Enter email address (used for urgent renewal and security notices) (Enter ‘c’ to
cancel): admin@dmosk.ru
— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —
Please read the Terms of Service at
https://letsencrypt.org/documents/LE-SA-v1.2-November-15-2017.pdf. You must
agree in order to register with the ACME server at
https://acme-v02.api.letsencrypt.org/directory
— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —
(A)gree/(C)ancel: A
— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —
Would you be willing to share your email address with the Electronic Frontier
Foundation, a founding partner of the Let’s Encrypt project and the non-profit
organization that develops Certbot? We’d like to send you email about our work
encrypting the web, EFF news, campaigns, and ways to support digital freedom.
— — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — — —
(Y)es/(N)o: Y
После утилита предложит ввести адрес, для которого необходимо получить сертификат — вводим адрес нашего сервера, например:
Please enter in your domain name(s) (comma and/or space separated) (Enter ‘c’
to cancel): zimbra.dmosk.ru
Мы должны получить что-то на подобие:
…
— Congratulations! Your certificate and chain have been saved at:
/etc/letsencrypt/live/zimbra.dmosk.ru/fullchain.pem
Your key file has been saved at:
…
Сертификат получен и все его файлы находятся в каталоге /etc/letsencrypt/live/zimbra.dmosk.ru/.
Установка сертификата
Процесс установки сертификата для зимбры, несколько, отличается от многих других сервисов — он требует дополнительных телодвижений.
И так, сначала скопируем полученные сертификаты в каталог зимбры — в моем случае, команды такие:
cp /etc/letsencrypt/live/zimbra.dmosk.ru/* /opt/zimbra/ssl/zimbra/commercial/
* где zimbra.dmosk.ru — домен, для которого мы получали сертификат.
Меняем владельца для скопированных файлов:
chown zimbra /opt/zimbra/ssl/zimbra/commercial/*
Теперь нюанс — zimbra не примет цепочку сертификатов, если в ней не будет корневых от Let’s Encrypt. Получить их можно по ссылкам:
1. https://letsencrypt.org/certs/isrgrootx1.pem.txt.
2. https://letsencrypt.org/certs/letsencryptauthorityx3.pem.txt.
Полученную последовательность добавляем к файлу chain.pem:
vi /opt/zimbra/ssl/zimbra/commercial/chain.pem
——BEGIN CERTIFICATE——
<первую последовательность оставляем>
——END CERTIFICATE——
——BEGIN CERTIFICATE——
<вторую последовательность удаляем>
——END CERTIFICATE——
——BEGIN CERTIFICATE——
MIIFazCCA1OgAwIBAgIRAIIQz7DSQONZRGPgu2OCiwAwDQYJKoZIhvcNAQELBQAw
TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMTUwNjA0MTEwNDM4
WhcNMzUwNjA0MTEwNDM4WjBPMQswCQYDVQQGEwJVUzEpMCcGA1UEChMgSW50ZXJu
ZXQgU2VjdXJpdHkgUmVzZWFyY2ggR3JvdXAxFTATBgNVBAMTDElTUkcgUm9vdCBY
MTCCAiIwDQYJKoZIhvcNAQEBBQADggIPADCCAgoCggIBAK3oJHP0FDfzm54rVygc
h77ct984kIxuPOZXoHj3dcKi/vVqbvYATyjb3miGbESTtrFj/RQSa78f0uoxmyF+
0TM8ukj13Xnfs7j/EvEhmkvBioZxaUpmZmyPfjxwv60pIgbz5MDmgK7iS4+3mX6U
A5/TR5d8mUgjU+g4rk8Kb4Mu0UlXjIB0ttov0DiNewNwIRt18jA8+o+u3dpjq+sW
T8KOEUt+zwvo/7V3LvSye0rgTBIlDHCNAymg4VMk7BPZ7hm/ELNKjD+Jo2FR3qyH
B5T0Y3HsLuJvW5iB4YlcNHlsdu87kGJ55tukmi8mxdAQ4Q7e2RCOFvu396j3x+UC
B5iPNgiV5+I3lg02dZ77DnKxHZu8A/lJBdiB3QW0KtZB6awBdpUKD9jf1b0SHzUv
KBds0pjBqAlkd25HN7rOrFleaJ1/ctaJxQZBKT5ZPt0m9STJEadao0xAH0ahmbWn
OlFuhjuefXKnEgV4We0+UXgVCwOPjdAvBbI+e0ocS3MFEvzG6uBQE3xDk3SzynTn
jh8BCNAw1FtxNrQHusEwMFxIt4I7mKZ9YIqioymCzLq9gwQbooMDQaHWBfEbwrbw
qHyGO0aoSCqI3Haadr8faqU9GY/rOPNk3sgrDQoo//fb4hVC1CLQJ13hef4Y53CI
rU7m2Ys6xt0nUW7/vGT1M0NPAgMBAAGjQjBAMA4GA1UdDwEB/wQEAwIBBjAPBgNV
HRMBAf8EBTADAQH/MB0GA1UdDgQWBBR5tFnme7bl5AFzgAiIyBpY9umbbjANBgkq
hkiG9w0BAQsFAAOCAgEAVR9YqbyyqFDQDLHYGmkgJykIrGF1XIpu+ILlaS/V9lZL
ubhzEFnTIZd+50xx+7LSYK05qAvqFyFWhfFQDlnrzuBZ6brJFe+GnY+EgPbk6ZGQ
3BebYhtF8GaV0nxvwuo77x/Py9auJ/GpsMiu/X1+mvoiBOv/2X/qkSsisRcOj/KK
NFtY2PwByVS5uCbMiogziUwthDyC3+6WVwW6LLv3xLfHTjuCvjHIInNzktHCgKQ5
ORAzI4JMPJ+GslWYHb4phowim57iaztXOoJwTdwJx4nLCgdNbOhdjsnvzqvHu7Ur
TkXWStAmzOVyyghqpZXjFaH3pO3JLF+l+/+sKAIuvtd7u+Nxe5AW0wdeRlN8NwdC
jNPElpzVmbUq4JUagEiuTDkHzsxHpFKVK7q4+63SM1N95R1NbdWhscdCb+ZAJzVc
oyi3B43njTOQ5yOf+1CceWxG1bQVs5ZufpsMljq4Ui0/1lvh+wjChP4kqKOJ2qxq
4RgqsahDYVvTH9w7jXbyLeiNdd8XM2w9U/t7y0Ff/9yi0GE44Za4rF2LN9d11TPA
mRGunUHBcnWEvgJBQl9nJEiU0Zsnvgc/ubhPgXRR4Xq37Z0j4r7g1SgEEzwxA57d
emyPxgcYxn/eR44/KJ4EBs+lVDR3veyJm+kXQ99b21/+jh5Xos1AnX5iItreGCc=
——END CERTIFICATE——
——BEGIN CERTIFICATE——
MIIFjTCCA3WgAwIBAgIRANOxciY0IzLc9AUoUSrsnGowDQYJKoZIhvcNAQELBQAw
TzELMAkGA1UEBhMCVVMxKTAnBgNVBAoTIEludGVybmV0IFNlY3VyaXR5IFJlc2Vh
cmNoIEdyb3VwMRUwEwYDVQQDEwxJU1JHIFJvb3QgWDEwHhcNMTYxMDA2MTU0MzU1
WhcNMjExMDA2MTU0MzU1WjBKMQswCQYDVQQGEwJVUzEWMBQGA1UEChMNTGV0J3Mg
RW5jcnlwdDEjMCEGA1UEAxMaTGV0J3MgRW5jcnlwdCBBdXRob3JpdHkgWDMwggEi
MA0GCSqGSIb3DQEBAQUAA4IBDwAwggEKAoIBAQCc0wzwWuUuR7dyXTeDs2hjMOrX
NSYZJeG9vjXxcJIvt7hLQQWrqZ41CFjssSrEaIcLo+N15Obzp2JxunmBYB/XkZqf
89B4Z3HIaQ6Vkc/+5pnpYDxIzH7KTXcSJJ1HG1rrueweNwAcnKx7pwXqzkrrvUHl
Npi5y/1tPJZo3yMqQpAMhnRnyH+lmrhSYRQTP2XpgofL2/oOVvaGifOFP5eGr7Dc
Gu9rDZUWfcQroGWymQQ2dYBrrErzG5BJeC+ilk8qICUpBMZ0wNAxzY8xOJUWuqgz
uEPxsR/DMH+ieTETPS02+OP88jNquTkxxa/EjQ0dZBYzqvqEKbbUC8DYfcOTAgMB
AAGjggFnMIIBYzAOBgNVHQ8BAf8EBAMCAYYwEgYDVR0TAQH/BAgwBgEB/wIBADBU
BgNVHSAETTBLMAgGBmeBDAECATA/BgsrBgEEAYLfEwEBATAwMC4GCCsGAQUFBwIB
FiJodHRwOi8vY3BzLnJvb3QteDEubGV0c2VuY3J5cHQub3JnMB0GA1UdDgQWBBSo
SmpjBH3duubRObemRWXv86jsoTAzBgNVHR8ELDAqMCigJqAkhiJodHRwOi8vY3Js
LnJvb3QteDEubGV0c2VuY3J5cHQub3JnMHIGCCsGAQUFBwEBBGYwZDAwBggrBgEF
BQcwAYYkaHR0cDovL29jc3Aucm9vdC14MS5sZXRzZW5jcnlwdC5vcmcvMDAGCCsG
AQUFBzAChiRodHRwOi8vY2VydC5yb290LXgxLmxldHNlbmNyeXB0Lm9yZy8wHwYD
VR0jBBgwFoAUebRZ5nu25eQBc4AIiMgaWPbpm24wDQYJKoZIhvcNAQELBQADggIB
ABnPdSA0LTqmRf/Q1eaM2jLonG4bQdEnqOJQ8nCqxOeTRrToEKtwT++36gTSlBGx
A/5dut82jJQ2jxN8RI8L9QFXrWi4xXnA2EqA10yjHiR6H9cj6MFiOnb5In1eWsRM
UM2v3e9tNsCAgBukPHAg1lQh07rvFKm/Bz9BCjaxorALINUfZ9DD64j2igLIxle2
DPxW8dI/F2loHMjXZjqG8RkqZUdoxtID5+90FgsGIfkMpqgRS05f4zPbCEHqCXl1
eO5HyELTgcVlLXXQDgAWnRzut1hFJeczY1tjQQno6f6s+nMydLN26WuU4s3UYvOu
OsUxRlJu7TSRHqDC3lSE5XggVkzdaPkuKGQbGpny+01/47hfXXNB7HntWNZ6N2Vw
p7G6OfY+YQrZwIaQmhrIqJZuigsrbe3W+gdn5ykE9+Ky0VgVUsfxo52mwFYs1JKY
2PGDuWx8M6DlS6qQkvHaRUo0FMd8TsSlbF0/v965qGFKhSDeQoMpYnwcmQilRh/0
ayLThlHLN81gSkJjVrPI0Y8xCVPB4twb1PFUd2fPM3sA1tJ83sZ5v8vgFv2yofKR
PB0t6JzUA81mSqM3kxl5e+IZwhYAyO0OTg3/fs8HqGTNKd9BqoUwSRBzp06JMg5b
rUCGwbCUDI0mxadJ3Bz4WxR6fyNpBK2yAinWEsikxqEt
——END CERTIFICATE——
* где мы добавили к файлу две последовательности.
Теперь зайдем в систему под пользователем zimbra:
su — zimbra
… и перейдем в каталог:
$ cd /opt/zimbra/ssl/zimbra/commercial
Проверяем, правильно ли сформированы сертификаты для Zimbra:
$ zmcertmgr verifycrt comm privkey.pem cert.pem chain.pem
Мы должны получить ответ:
** Verifying ‘cert.pem’ against ‘privkey.key’
Certificate ‘cert.pem’ and private key ‘privkey.key’ match.
** Verifying ‘cert.pem’ against ‘chain.pem’
Valid certificate chain: cert.pem: OK
Переименовываем закрытый ключ:
$ mv privkey.pem commercial.key
Можно устанавливать сертификаты:
$ zmcertmgr deploycrt comm cert.pem chain.pem
Чтобы настройка применилась, перезапускаем zimbra:
$ zmcontrol restart
Можно выйти из окружения пользователя zimbra:
$ exit
Продление сертификата
Обновление сертификата не потребует больших усилий. Для начала, обновляем сертификат Let’s Encrypt:
/opt/letsencrypt/letsencrypt-auto renew
Скопируем обновленные сертификаты в каталог зимбры:
cp /etc/letsencrypt/live/zimbra.dmosk.ru/* /opt/zimbra/ssl/zimbra/commercial/
* где zimbra.dmosk.ru — домен, для которого мы получали сертификат.
Меняем владельца для файлов:
chown zimbra /opt/zimbra/ssl/zimbra/commercial/*
Переходим в каталог с сертификатами:
cd /opt/zimbra/ssl/zimbra/commercial
Загружаем корневые сертификаты Let’s Encrypt:
wget https://letsencrypt.org/certs/isrgrootx1.pem.txt
wget https://letsencrypt.org/certs/letsencryptauthorityx3.pem.txt
Создаем файл с полной цепочкой сертификатов:
echo «——BEGIN CERTIFICATE——» > new_chain.pem
openssl x509 -in chain.pem -outform der | base64 -w 64 >> new_chain.pem
echo «——END CERTIFICATE——» >> new_chain.pem
mv new_chain.pem chain.pem
cat isrgrootx1.pem.txt >> chain.pem
cat letsencryptauthorityx3.pem.txt >> chain.pem
Проверяем корректность сертификатов:
su — zimbra -c «zmcertmgr verifycrt comm /opt/zimbra/ssl/zimbra/commercial/privkey.pem /opt/zimbra/ssl/zimbra/commercial/cert.pem /opt/zimbra/ssl/zimbra/commercial/chain.pem»
Переименовываем закрытый ключ:
mv privkey.pem commercial.key
Можно устанавливать сертификаты:
su — zimbra -c «zmcertmgr deploycrt comm /opt/zimbra/ssl/zimbra/commercial/cert.pem /opt/zimbra/ssl/zimbra/commercial/chain.pem»
Чтобы настройка применилась, перезапускаем zimbra:
su — zimbra -c «zmcontrol restart»
Готово.
Настройка почтового клиента
Приведем пример настройки почтового клиента. Подключимся к нашему серверу по IMAP и отправим почту по SMTP. В качестве почтового клиента я буду использовать Mozilla Thunderbird — принцип настройки других клиентов аналогичен.
Для настройки используем следующие параметры:
| Настройка | IMAP | POP3 | SMTP |
|---|---|---|---|
| Адрес сервера | IP-адрес сервера или его имя | ||
| Порт | 143 | 110 | 587 |
| SSL | STARTTLS | ||
| Имя пользователя | Почтовый адрес, к которому выполняем подключение | ||
| Пароль | Пароль для почтового ящика |
Пример настройки:

Защита от СПАМа
1. Обновление правил в SpamAssassin
Для улучшения защиты от СПАМ-сообщений мы включим автоматическое обновление правил для SpamAssassin. Для этого вводим:
su — zimbra -c «zmlocalconfig -e antispam_enable_rule_updates=true»
su — zimbra -c «zmlocalconfig -e antispam_enable_restarts=true»
После перезапустим соответствующие службы:
su — zimbra -c «zmamavisdctl restart»
su — zimbra -c «zmmtactl restart»
2. Черные списки
Чтобы усилить защиту, разрешим проверку отправителя в черных списках:
su — zimbra -c ‘zmprov mcf zimbraMtaRestriction «reject_rbl_client zen.spamhaus.org»‘
* в данном примере мы подключаем rbl-список от zen.spamhaus.org.
3. Настройка mynetworks
После установки Zimbra в опции postfix mynetworks может оказаться подсеть, в которой находится наш сервер. На практике, это приводит к возможности отправки сообщений без пароля, что в свою очередь, позволяет любому вирусу в нашей сети делать нелегальную рассылку.
Задаем для mynetworks только адрес локальной петли и адрес сервера:
su — zimbra -c ‘zmprov ms zimbra.dmosk.ru zimbraMtaMyNetworks «127.0.0.0/8 192.168.1.15/32″‘
* где 192.168.1.15 — IP-адрес нашего почтового сервера.
Перезапускаем postfix:
su — zimbra -c ‘postfix reload’
Проверить текущую настройку можно командой:
su — zimbra -c ‘postconf mynetworks’
Дополнительные настройки
Добавление отправителей в белый список
Может возникнуть ситуация, при которой нам нужно изменить назначение СПАМ-балов для некоторых отправителей. Для этого открываем файл:
vi /opt/zimbra/conf/amavisd.conf.in
Находим строку:
{ # a hash-type lookup table (associative array)
…
}
… и внутри фигурных скобок {} добавим нужный нам домен или конкретного отправителя:
…
‘dmosk.ru’ => -10.0,
‘sender@dmosk2.ru’ => -10.0,
}
* таким образом мы сказали, что для писем с домена dmosk.ru и отправителя sender@dmosk2.ru отнимать 10 баллов за СПАМ. Такие письма начнут приходить без блокировки (при условии, что не будет отправлен явный СПАМ, который наберет очень много баллов).
После настройки перезапускаем amavis:
su — zimbra -c «zmamavisdctl stop && zmamavisdctl start»
Размер отправляемого сообщения
Задать максимальный размер сообщений можно командой:
su — zimbra -c ‘zmprov modifyConfig zimbraMtaMaxMessageSize 31457280’
* в данном примере мы задаем максимальный размер сообщения 30 мб.
После перезапускаем postfix:
su — zimbra -c «postfix reload»
Транспортные правила
Предположим, что нам нужно перенаправлять письма на определенный домен через другой почтовый релей. В Postfix это делается с помощью правил transport_maps.
Смотрим текущие настройки postfix_transport_maps:
su — zimbra -c ‘zmlocalconfig | grep -i postfix_transport_maps’
В моем случае ответ был:
postfix_transport_maps = hash:/opt/zimbra/conf/transport_maps proxy:ldap:/opt/zimbra/conf/ldap-transport.cf
Нам интересен файл /opt/zimbra/conf/transport_maps — в нем хранятся правила пересылки. Откроем его на редактирование:
vi /opt/zimbra/conf/transport_maps
Добавим нужное нам правило, например:
dmosk3.local smtp:[10.10.10.10]:25
* в данном примере мы указываем zimbra пересылать все письма на домен dmosk3.local через почтовый MTA 10.10.10.10.
Применяем настройки:
su — zimbra -c «zmmtactl reload»
Возможные проблемы
Рассмотрим некоторые проблемы, с которыми мы можем столкнуться при работе с Zimbra.
Служба zmconfigd не стартует
В консоли управления почтовым сервером мы можем увидеть ошибку запуска службы zmconfigd. При попытке запустить ее:
$ zmconfigdctl start
… мы получаем ошибку:
Starting zmconfigd…failed
Решение:
Устанавливаем пакет с nc-командами.
а) если на систему RPM (Red Hat / CentOS):
yum -y install nmap-ncat
б) если на систему deb (Debian / Ubuntu):
apt-get install netcat-openbsd
После пробуем запустить сервис (от пользователя zimbra):
$ zmconfigdctl start
Ошибка при просмотре очередей в веб-консоли
При переходе на страницу просмотра очередей система отображает ошибку:
system failure: exception occurred searching mail queue
Код ошибки: service.FAILURE Method: [unknown] Детали:soap:Receiver
Решение:
Есть два варианта решения проблемы.
1. Если для подключения к нашему серверу по SSH используется нестандартный порт (не 22), необходимо ввести команду:
su — zimbra -c «zmprov mcf zimbraRemoteManagementPort 2222»
* где 2222 — порт SSH, который используется для нашего сервера.
2. Переходим в каталог:
cd /opt/zimbra/data/tmp
Находим каталог <цифры>-active и удаляем его.
Файл zmstat.out большого размера
Файл /opt/zimbra/zmstat/zmstat.out становится очень большим. Если открыть его, то мы увидим много строк:
Use of uninitialized value $line in pattern match (m//) at /opt/zimbra/libexec/zmstat-io line 76.
Причина:
Ошибка в скрипте /opt/zimbra/libexec/zmstat-io.
Решение:
Открываем скрипт, в котором есть ошибка:
vi /opt/zimbra/libexec/zmstat-io
Переходим на неправильную строку — 1 (в нашем примере, 75). Мы должны увидеть:
while ($line !~ /^avg-cpu/ && $line !~ /^Device:/) {
Меняем на:
while ($line !~ /^avg-cpu/ && $line !~ /^Device/) {
* то есть, убираем : после Device.
Перезапускаем службы Zimbra:
su — zimbra -c «zmcontrol restart»
Очень нужна помощь поставил сервер zimbra 8.8.8 OSE почта работает все ок, пришлось не много повозится с spf1 dkim и dcom чтобы в СПАМ не улетать
Но не могу разобраться Монитор сервера не работает Сообщение: system failure: zimbraLogHostname is not configured Код ошибки: service.FAILURE Method: [unknown] Детали:soap:Receiver
Кто подскажет как исправить буду очень признателен
Пытался сам по статье https://wiki.zimbra.com/wiki/Configuring-Logger-Host не помогло:(
А проблема в чем? Что ваши письма попадают в спам? Тогда вам логи не сильно помогут. Или нужно что-то иное?
Нет, проблема только в журнале статистики
Не могу собирать логи с сервера, нет диаграмм, сколько писем отправлено и т.п. что во вкладке Монитор из данной вкладке только работают почтовые очереди
А еще на сетевом интерфейса какая-то странная активность все время, хотя на сервере пока не кто не работает, это нормально?
Нет, проблема только в журнале статистики
Попробуйте:
zmprov ms $(zmhostname) zimbraLogHostname $(zmhostname)
А еще на сетевом интерфейса какая-то странная активность все время, хотя на сервере пока не кто не работает, это нормально?
Какая именно? Что за трафик, откуда, куда?
zimbra@mail:~$ zmprov ms $(zmhostname) zimbraLogHostname $(zmhostname)
[] INFO: I/O exception (java.net.ConnectException) caught when processing request: Connection refused (Connection refused)
[] INFO: Retrying request
ERROR: zclient.IO_ERROR (invoke Connection refused (Connection refused), server: localhost) (cause: java.net.ConnectException Connection refused (Connection refused))
я это тоже находил и пытался сделать в ошибку валится:(
по сети пытается иногда подключится по ssh к IP, но номер не записал
у меня 2 сетевые карты одна с внешним IP другая с внутренним, на внутреннем только IP и маска обо интерфейса satic
вот лезит по этим адресам бывает проскакивают еще, проблема в том что он порт провайдера блочит и понять не могу пока в чем причина:(
https://cloud.mail.ru/public/3ELv/WpLuKiuaw
буду очень признателен если скажите куда копать или меня уже ломанули?
дистриб с официального сайта скачивал zcs-8.8.8_GA_2009.UBUNTU16_64.20180322150747.tgz
я это тоже находил и пытался сделать в ошибку валится:(
От имени какого пользователя выполняли команду?
вот лезит по этим адресам бывает проскакивают еще, проблема в том что он порт провайдера блочит и понять не могу пока в чем причина:(
Кто лезет по этим адресам? Сам сервер? Смотрите какие службы запущены, какие порты открыты и т.д. и т.п. И вообще, выставлять сервера голым интерфейсом в интернет — не самая лучшая идея. Уберите его за брандмауэр и пробросьте нужные порты.
От имени какого пользователя выполняли команду?
от пользователя перехожу в интерфейс zimbra sudo su — zimbra и запускаю zmprov ms $(zmhostname) zimbraLogHostname $(zmhostname)Кто лезет по этим адресам? Сам сервер? Смотрите какие службы запущены, какие порты открыты и т.д. и т.п. И вообще, выставлять сервера голым интерфейсом в интернет — не самая лучшая идея. Уберите его за брандмауэр и пробросьте нужные порты.
этот memckahed и java причем систему нагружают не плохо, не всегда загружены но всплески идут
как раз убираю это в тесте подняли посмотреть систему т.к. не определились еще с почтовиком, но бесплатность подкупает:)
этот memckahed и java причем систему нагружают не плохо, не всегда загружены но всплески идут
как раз убираю это в тесте подняли посмотреть систему т.к. не определились еще с почтовиком, но бесплатность подкупает:)
Ну тем более «на посмотреть» незнакомый продукт наружу не выставляют, в комментариях на сайте был недавно случай, когда открытый наружу memcached генерировал паразитный трафик.
А по ошибкам, есть ощущение что вы неправильно настроили сервер. Выполните
zmcontrol status
не могу разобраться на nic ru прописал mx для домена использую их DNS сервера
перекинул сетку за nat прокинул 53 порты для DNS что не делаю он не видит запись DNS для домен k-capital.su все отвечает mail.k-capital.su
что не так не понимаю, плиз хелпь:)
все я разобрался спасибо большое:)
и с журналом тоже все ок теперь вроде как:)
Андрей, не подскажите по какой-то причине не ходит почта на mail.ru
host emx.mail.ru[94.100.180.180] said: 550 Unroutable
sender address (in reply to MAIL FROM command)
Unroutable sender address (in reply to MAIL FROM command)
Немаршрутизируемый адрес отправителя, что у вас в заголовках отправляемой почты, случайно не плоское имя или какой-нибудь mail.local?
с этим тоже разобрался есть вопрос по DKIM и записи его на nix.ru
в поля name я указываю свой selector.мой_домен. TXT далее ключ(из него убираю все кавычки) TTL 3600 все правильно понял?
и еще есть вопрос по шрифтам и смайликам их как-то можно добавить а то выбор скудный совсем:(
с этим тоже разобрался есть вопрос по DKIM и записи его на nix.ru
в поля name я указываю свой selector.мой_домен. TXT далее ключ(из него убираю все кавычки) TTL 3600 все правильно понял?
В общем и целом да, подробнее здесь: https://wiki.zimbra.com/wiki/Configuring_for_DKIM_Signing
Я еще помню, была там какая-то заморочка с ключами, по моему с длинной поля, но решилась довольно просто.
и еще есть вопрос по шрифтам и смайликам их как-то можно добавить а то выбор скудный совсем:(
А вот этим бы я как раз не злоупотреблял, как будет выглядеть письмо у того, кто не имеет вашего шрифта вы подумали?
А вот этим бы я как раз не злоупотреблял, как будет выглядеть письмо у того, кто не имеет вашего шрифта вы подумали?
мне не нужны какие-то уникальные обычные стандартные шрифты просто их в zimbra штук 10, а как и куда их засунуть найти не могу:(
Включите формат HTML в параметрах и получите возможность использовать шрифты. Хотя на наш взгляд ничего лучше классического текстового письма еще не придумали. Кого вы собрались удивлять шрифтами и зачем?
Да это я все включил сразу:) но там всего 12 шрифтов в том же самом Outlook или значительно больше, вот у меня вопрос можно ли их как-то подгрузить
И еще по какой-то причине у меня подвисает 1 сообщение (раз в сутки) от root@домен:25 connection refused только от root все остальное ходит, не подскажите куда копать?
Да это я все включил сразу:) но там всего 12 шрифтов в том же самом Outlook или значительно больше, вот у меня вопрос можно ли их как-то подгрузить
Может быть и можно, никогда не задавался этим вопросом и никто никогда особо на этот счет не парился. Посмотрите на официальном форуме, может кто и делал.
И еще по какой-то причине у меня подвисает 1 сообщение (раз в сутки) от root@домен:25 connection refused только от root все остальное ходит, не подскажите куда копать?
Копать надо логи, это первое правило для любого случая. Есть неплохая утилита https://wiki.zimbra.com/wiki/CLI_zmmsgtrace которая позволяет эффективно находить в логах нужную информацию.
- Записки IT специалиста — Форум
-
►
Клиентские операционные системы -
►
Linux -
►
ZIMBRA служба журнала