Как настроить архивацию почты zimbra

Содержание
  1. Архивирование и восстановление почтового сервера Zimbra
  2. Перенос учетных записей почтовых ящиков
  3. Выгрузка учетных записей
  4. Загрузка учетных записей в Zimbra
  5. Перенос содержимого почтовых ящиков
  6. Экспорт содержимого почтовых ящиков
  7. Импорт содержимого почтовых ящиков
  8. Перенос базы данных Policyd
  9. Zimbra архивация старых сообщений
  10. Как настроить архивацию почты zimbra
  11. Резервное копирование всех почтовых ящиков.
  12. Резервное копирование указанного почтового ящика.
  13. Восстановление учетной записи и почтового ящика из резервной копии.
  14. Архивирование всех учетных записей всех доменов на сервере.
  15. Архивирование всех почтовых ящиков пользователей.
  16. Импорт (восстановление) почтовых ящиков.
  17. Перенос (архивация) данных Policyd
  18. Архивация почтовых сообщений и сохранение архива на свой компьютер в Zimbra Web
  19. Архивирование почты в Zimbra Collaboration Suite Open-Source Edition
  20. Архивирование исходящих электронных писем
  21. Архивирование входящих электронных писем

Архивирование и восстановление почтового сервера Zimbra

К сожалению, в бесплатной версии Zimbra Collaboration Suite не существует встроенного механизма бекапа. Приходится доделывать самому. Поскольку установка сервера не представляет особой сложности, главное, что нужно архивировать это учетные записи пользователей и содержимое почтовых ящиков.

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

Для создания учетной записи из командной сроки в Zimbra используется следующая команда:

$ zmprov ca парамерт1 «значение1» параметр2 «значение2» . параметрN «значениеN»

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

Перенос учетных записей почтовых ящиков

Выгрузка учетных записей

Создадим файл /root/tools/zmbackup_users.sh:

# mkdir /root/tools && chmod 660 /root/tools # mcedit /root/tools/zmbackup_users.sh

Теперь если выполнить команду:

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

Загрузка учетных записей в Zimbra

Дайте права на запуск файла zmrestore_users.sh пользователю root и запустите файл, результатом выполнения будет список id учетных записей:

Перенос содержимого почтовых ящиков

Кроме самих учетных записей нужно еще их содержимое. Для выгрузки содержимого почтового ящика в Zimbra используется утилита zmmailbox:

# /opt/zimbra/bin/zmmailbox -z -m user@example.com -t 0 getRestURL «//?fmt=tgz» > /tmp/user@example.com.tgz

Экспорт содержимого почтовых ящиков

Создадим файл zmbackup_mailboxes.sh:

В результате выполнения в папке /opt/zimbra/backup появятся архивы почтовых ящиков.

Импорт содержимого почтовых ящиков

Для того чтобы загрузить содержимое (письма, календари, задачи) в существующие учетные записи, используется команда:

# /opt/zimbra/bin/zmmailbox -z -m user@example.com postRestURL «//?fmt=tgz&resolve=reset» /tmp/user@example.com.tgz

Создайте файл zmrestore_mailboxes.sh:

Данный скрипт загрузит содержимое архивов из папки /opt/zimbra/backup, в соответствующие учетные записи почты.

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

Конечно, они переносят далеко не все параметры, если вам чего-то не хватает, добавьте нужные параметры в скрипт zmbackup_users.sh. Посмотреть название параметров можно как указано на рисунке в начале статьи.

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

# /opt/zimbra/bin/zmprov -l ga user@example.com

Перенос базы данных Policyd

Если вы активно используете плагин Policyd, будет жалко потерять его настройки, накопленную статистку и правила. Policyd хранит свои данные в базе sqlite3. Все что нужно это скопировать файл базы данных:

Источник

Zimbra архивация старых сообщений

Есть удаленно работающий почтовый сервер Zimbra 8.6.0_GA_1153 на 1000 пользователей и 4 Тб дискового пространства для почты. 90% этого пространства занято. ОС — Ubuntu. Необходимо: архивировать почту старше 1 года и удалить эти письма из почтовых ящиков.

Вот мой кривой костыль вариант на основе постов CentOS: Zimbra — переносим почтовые ящики с сервера на сервер и Zimbra: удаление случайных или ненужных писем Первым делом останавливаем наш старый почтовый сервер

zimbra # zmcontrol stop

При помощи команды из под пользователя zimbra # выгрузим список всех e-mail адресов в файл, zimbra # zmprov gqu mail | awk ‘‘ > /tmp/mailbox.txt

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

#!/bin/bash filename=’mailbox.txt’ filelines=`cat $filename` for line in $filelines ; do /opt/zimbra/bin/zmmailbox -z -m $line getRestURL «//?fmt=tgz» > /tmp/$line.tgz done

Уверен, что удаление этих писем после архивирования можно выполнить простым способом. Именно в этом прошу подсказки. В настоящее время планирую решать это по информации из хабрахабра так:

Читайте также:  Настроить nginx для работы с символьной ссылкой

DOMAIN_NAME=«corp.org» # Тут домен EMAIL=/tmp/email.list # Это список всем ящиков MESID=/tmp/mesid.list # это ID писем для удаления DELTEXT=’вечеринка’ # Слово в теме письма или сама тема письма

IFS=$’\n’ # Переменная отвечающая за разделитель поля

before=«$(date +%s)» # Время запуска скрипта t=0 # Переменная, для подсчета удаленных писем

/opt/zimbra/bin/zmprov -l gaa $DOMAIN_NAME | sort > $EMAIL # Собираем список ящиков

# Ну и циклом их перебираем

for i in $(cat $EMAIL); do echo $i # Тут мы получаем список всех папок, отсеим папки которые расшаренные, так как они и так будут пройдены и исключаем папки, которые не почтовые — это Портфель, и Контакты и прочие, не mess

/opt/zimbra/bin/zmmailbox -z -m $i gaf | grep mess | cut -d»/» -f 2- | grep -v «@corp.org» > /tmp/messfolder.list # Теперь циклом проходим по списку и получаем название папки, затем всталяем в запрос и получаем id сообщения для удаления. И так проделываем с каждой папкой.

for p in $(cat /tmp/messfolder.list); do echo $p # Тут все просто: до первого grep мы выводим сообщения из ящика, grep фильтрует по дате, второй grep по теме, затем sed’ы убирают лишние пробелы и cut вырезает остаток и получаем чистый, фильтрованный номер сообщения. /opt/zimbra/bin/zmmailbox -z -m $i s -l 300 in:«\»$p»\» | grep `date -d ‘-5 day’ +%m/%d/%y` | grep «$DELTEXT» | sed -e «s/^\s\s*//» | sed -e «s/\s\s*/ /g» | cut -d» » -f2 > $MESID

# Выводим номер сообщения и считаем кол-во сообщений. cat $MESID count=`grep » $MESID -c` let t=$t+$count

for a in $(cat $MESID | grep ^- | sed s/-//g ) do /opt/zimbra/bin/zmmailbox -z -m $i deleteMessage $a done

for a in $(cat $MESID | sed /-/d) do /opt/zimbra/bin/zmmailbox -z -m $i deleteConversation $a done echo -n > $MESID RES=$? if [ «$RES» == «0» ]; then echo «[Ok]»; else echo «[Err]»; fi

echo «Найдено писем: »$t

after=«$(date +%s)» elapsed=«$(expr $after — $before)» hours=$(($elapsed / 3600)) elapsed=$(($elapsed — $hours * 3600)) minutes=$(($elapsed / 60)) seconds=$(($elapsed — $minutes * 60)) echo «Скрипт выполнялся: $hours часов $minutes минут $seconds секунд» echo «Всего удалено: »$t» писем»

Источник

Как настроить архивацию почты zimbra

Мы успешно установили и ввели в эксплуатацию почтовый сервер Zimbra вместо MS Exchange. Все хорошо работает и управляется. Но встает вопрос с резервным копированием почтовых ящиков и учетных записей сервера. В безплатной версии Zimbra Collaboration отсутствует встроенный механизм резервного копирования и восстановления. Он присутствует только в платной версии. Либо придется закупать дополнительный продукт, «заточенный» именно под эту версию почтового сервера. Ключевое слово — «покупать». Не все компании готовы к платным версиям (а зря), тем полее в свете темы «импортозамещения». Приходится обходится самописными скриптами. Но, к сожалению, они будут плохо работать на больших и очень больших системах в основном из-за длительного времени выполнения бэкапа и, в меньшей степени, из-за отсутствия GUI. В этой статье будут представлены несколько скриптов, позволяющих сделать полную резервную копию почтовых ящиков сервера и восстанавливать эти ящики и учетные записи из архива.

Резервное копирование всех почтовых ящиков.

  1. Создаем новый файл в удобном каталоге и делаем его исполняемым:

Резервное копирование указанного почтового ящика.

Создаем скрипт следующего содержания:

Описание работы скрипта:

  1. Необходимо задать M_Path_backup . Это переменная обозначает каталог, куда будет сохранен архив почтового ящика пользователя.
  2. Затем скрипт выдаст запрос на имя домена, в котором находится почтовый ящик пользователя.
  3. Затем выдается запрос на имя пользователя, для которого необходимо создать резервную копию. Имя необходимо вводить БЕЗ второй части почтового адреса.
  4. После ввода всех данных начинается процесс создания резервной копии почтового ящика пользователя. Бекап помещается в папку, заданную переменной M_Path_backup плюс имя домена плюс текущая дата и имеет название имя_пользователя@имя_домена
  5. Все действия заносятся в лог-файл, находящийся в той же папке.

Восстановление учетной записи и почтового ящика из резервной копии.

Иногда требуется восстановить почтовый ящик пользователя за конкретную дату. Ниже будет представлен скрипт, который позволяет восстановить почтовый ящик пользователя за определенную дату, если он присутствует в архиве. Так же реализован механизм проверки наличия учетной записи в почтовой системе. Если учетная запись отсутствует, но почтовый ящик для этого пользователя есть в архиве, то скрипт создаст учетную запись, а затем восстановит содержимое почтового ящика пользователя.

Читайте также:  Что делать с оберегом если он сломался

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

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

Далее идут проверки наличия архива для этого пользователя и наличия учетной записи. Если учетная запись уже отсутствует, то она создается и для нее восстанавливается почтовый ящик.

Соответственно скрипты самые пройстейшие. Не восстанавливается членство в группах рассылки, не отслеживается запрет на присутствие в GAL, не заполняются поля «Фамилия», «Имя» и т.д. После восстановления требуется корректировка всех свойств пользователя. Но на то оно и безплатное, что бы «жизнь медом не казалась».

Архивирование всех учетных записей всех доменов на сервере.

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

Для создания учетной записи из командной строки используется команда zmprov с соответствующими параметрами:

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

Для выгрузки всех учетных записей почтового сервера создаем скрипт backup_users.sh со следующим содержимым:

Если выполнить этот скрипт в формате:

то в каталоге /opt/zimbra/backup получим файл restore_users.sh, содержащий команды для восстановления учетных записей пользователей.

Для загрузки учетных записей пользователей Zimbra необходимо выполнить полученный скрипт. Результатом выполнения будет список id учетных записей пользователей:

ВАЖНО: перед выполнением скрипта требуется создать необходимые домены.

Архивирование всех почтовых ящиков пользователей.

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

В результате выполнения этого скрипта в папке /opt/zimbra/backup появятся архивы почтовых ящиков

Импорт (восстановление) почтовых ящиков.

Для того чтобы загрузить содержимое (письма, календари, задачи) в существующие учетные записи, используется команда:

Создаем файл restore_mboxes.sh с содержимым:

Скрипт загрузит содержимое архивов из папки /opt/zimbra/backup в соответствующие учетные записи электронной почты.

ВАЖНО: Необходимо убедиться, что лимиты всех почтовых ящиков позволяют загрузить все сообщения из архива.

Данные скрипты переносят не все параметры. Если каких-то параметров не хватает, то в скрипт backup_users.sh необходимо их добавить.

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

Перенос (архивация) данных Policyd

Плагин Policyd для обработки статистики и правил. Свои данные он хранит в базе sqlite3. Для архивации достаточно скопировать файл базы данных:

Источник

Архивация почтовых сообщений и сохранение архива на свой компьютер в Zimbra Web

Для создания архива сообщений, вам необходимо:

  1. Создать отдельную папку для архивных сообщения. Для этого нажмите правой кнопкой мыши на поле «Входяшие» и выберите пункт «Новая папка».

2. Укажите имя папки, задайте цвет (если необходимо) и нажмите на кнопку «ОК».

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

4. Из списка выберите папку для архивных сообщений.

5. После того, как вы переместили все сообщения в папку для архивации, перейдите в меню «Настройка → Импорт и экспорт».

6. В настройках «Экспорт» установите следующие значения:

Тип: Учетная запись

Источник: Выберите из списка созданную папку для архивации сообщений.

Дополнительные настройки:

Типы данных: Почта

Нажмите кнопку «Экспорт».

7. После того, как вы нажали кнопку «Экспорт», на странице (меню) загрузки должно появиться сообщение о скачивании файла «Архив-Сегодняшняя дата».

Дополнение:

Так же вы можете архивировать все ваши ежедневники, задачи, контакты, портфели. Для этого в дополнительных настройках пункта «Типы данных» установите нужное вам значение.

Если вам необходимо архивировать сообщения за конкретный период, то в настройках экспорта выберите «Источник» — Входящие (или другую папку), а в дополнительных настройках, в пункте «Дата», укажите период

Читайте также:  Если не работает приложение транспорт

Источник

Архивирование почты в Zimbra Collaboration Suite Open-Source Edition

Архивирование почты с возможностью её просмотра в будущем является важной функцией для крупного бизнеса. Она может использоваться для рассмотрения различных жалоб, проведении расследований и в ряде других ситуаций. Также эта функция бывает полезна для SaaS-провайдеров, чтобы защитить себя в том случае, если недобросовестный пользователь воспользуется их сервисом для совершения противоправных действий.

Специально для этих целей был создан плагин Zimbra Archiving and Discovery, который позволяет архивировать исходящие и входящие письма в каждом почтовом ящике и даже сохраненные в черновиках письма. Однако это решение не лишено минусов. Во-первых оно работает только с платной Zimbra Collaboration Suite Network Edition, а во-вторых оно работает только в рамках веб-клиента и при использовании десктопных или мобильных почтовых клиентов не будет ничего архивировать. В связи с этим мы расскажем вам о том, как реализовать архивирование входящей и исходящей почты в бесплатной ZImbra Collaboration Suite Open-Source Edition. которое, к тому же, будет архивировать письма, которые отправляются из любых почтовых клиентов.


Реализуется архивирование почты через встроенную функцию Postfix BCC. Работает она следующим образом: системный администратор задает для почтового ящика адрес архивной почты, вводить определенные настройки, после чего каждое входящее и исходящее письмо будет копироваться в архивную почту, в которой впоследствии можно будет отыскать нужное письмо. Рекомендуем создать для почтового архива отдельный домен. Это значительно упростит управление архивными почтовыми ящиками в будущем.

Архивирование исходящих электронных писем

Настроим архивирование исходящих писем. Для примера возьмём учетную запись manager@company.ru и сделаем для него архивный почтовый ящик manager@archive.company.ru. Для того, чтобы исходящие письма архивировались, необходимо внести ряд изменений в настройки Postfix. Для этого нужно открыть файл /opt/zimbra/postfix/conf/main.cf и в его конце добавить строку sender_bcc_maps = lmdb:/opt/zimbra/postfix/conf/sender_bcc. После этого надо создать файл /opt/zimbra/postfix/conf/sender_bcc и внести в него почтовые ящики, которые планируется архивировать, а также почтовые ящики, в которые будут пересылаться архивные письма. Имеется возможность архивировать несколько почтовых ящиков в один. Делается это следующим образом:

manager@company.ru manager@archive.company.ru
sales@company.ru manager@archive.company.ru
support@company.ru support@archive.company.ru

После того как все почтовые ящики будут добавлены остается лишь выполнить команду postmap /opt/zimbra/postfix/conf/sender_bcc и перезагрузить Postfix с помощью команды postfix reload. Как следует из нашего примера, после перезагрузки все исходящие письма учетных записей manager@company.ru и sales@company.ru будут попадать в один почтовый ящик manager@archive.company.ru, а исходящие письма учетной записи support@company.ru будут архивироваться в почтовом ящике support@archive.company.ru

Архивирование входящих электронных писем

Теперь настроим автоматическое архивирование входящих писем. Для этого можно воспользоваться все тем же Postfix BCC. Как и в случае с архивированием исходящих писем, нужно открыть файл /opt/zimbra/postfix/conf/main.cf и добавить в него строку recipient_bcc_maps = lmdb:/opt/zimbra/postfix/conf/recipient_bcc. После этого необходимо создать файл /opt/zimbra/postfix/conf/recipient_bcc и добавить в него нужные почтовые адреса в прежнем формате.

После добавления ящиков нужно выполнить команду postmap /opt/zimbra/postfix/conf/recipient_bcc и перезагрузить Postfix с помощью команды postfix reload. Теперь все входящие письма учетных записей manager@company.ru и sales@company.ru будут архивироваться в почтовом ящике manager@archive.company.ru, а входящие письма учетной записи support@company.ru будут копироваться в почтовый ящик support@archive.company.ru.


Пример настройки фильтра входящих сообщений

Особо отметим, что при каждом добавлении или удалении электронных адресов в списках /opt/zimbra/postfix/conf/sender_bcc и /opt/zimbra/postfix/conf/recipient_bcc необходимо повторно выполнять команду postmap с указанием измененного списка, а также перезагружать Postfix. Также рекомендуем воспользоваться почтовыми фильтрами Zimbra OSE на основе имени отправителя и получателя для того, чтобы входящие и исходящие сообщения в сортировалась по папкам и впоследствии вам было легче отыскать нужное письмо.


Пример настройки фильтра исходящих сообщений

Для поиска писем в созданных почтовых архивах впоследствии можно будет использовать встроенный поиск Zimbra OSE. Также следует учесть, что время хранения электронных писем в архиве значительно выше, чем в учетной записи, а это значит, что для них необходимо установить повышенную квоту, а также политику хранения с более высоким периодом. В том случае, если архивные почтовые ящики у вас хранятся на отдельном домене, сделать это будет гораздо проще.

Источник

Оцените статью