Перейти к содержанию

Отложенное удаление (плагин Dovecot)

Внимание

Это руководство все еще находится в разработке, возможны ошибки! Используйте эту функцию с осторожностью!

Информация

Эта функция совместима с версиями animails, начиная с 2024-11. Теоретически старые версии также могут ее использовать, но из-за внутренних изменений реализация сложнее, поэтому здесь она будет указана как неподдерживаемая.

Введение

Dovecot уже довольно давно поддерживает функцию под названием Lazy Expunge, которая позволяет администраторам серверов временно сохранять удаленные электронные письма из учетной записи пользователя даже после того, как они были удалены.

animails также имеет аналогичную функцию, но она не является легкодоступной для пользователей (см. Восстановление случайно удаленных данных (Почта)) и служит скорее резервным методом для администраторов.

С опцией Dovecot пользователи могут просматривать и восстанавливать письма, помеченные как удаленные, до того, как они будут автоматически окончательно стерты сервером Dovecot.

Настройка

  1. Отредактируйте файл extra.conf в папке конфигурации Dovecot (обычно находится в MAILCOW_ROOT/data/conf/dovecot), добавив следующее содержимое:

    plugin {
        # Копировать все удаленные письма в почтовый ящик .EXPUNGED
        lazy_expunge = .EXPUNGED
    
        # Исключить помеченные как удаленные письма из квоты
        quota_rule = .EXPUNGED:ignore
    }
    
    # Определение пространства имен inbox
    namespace inbox {
        mailbox .EXPUNGED {
            # Определите, как долго письма будут оставаться в этой папке перед удалением. Время определяется согласно: https://doc.dovecot.org/2.3/settings/types/#time
            autoexpunge = 7days
            # Определите максимальное количество писем, которое может храниться в папке EXPUNGED до ее очистки
            autoexpunge_max_mails = 100000
        }
    }
    

  2. Перезапустите контейнер Dovecot:

    docker compose restart dovecot-animails
    
    docker-compose restart dovecot-animails
    
  3. Как только корзина будет очищена, должна появиться новая папка с именем .EXPUNGED. Эта папка будет содержать электронные письма, которые, согласно правилам, определенным на шаге 1, будут автоматически удалены с сервера по истечении определенного периода.