## Dovecot configuration file # Каталог, гда хранятся временные данные. base_dir = /var/run/dovecot/ # Протоколы, которые будут доступны для обслуживания клиентов. protocols = imap pop3 imaps pop3s # Список IP-адресов, на которых "слушать" запросы. Разделителем выступает # пробел. Если указать "*", то запросы будут ожидаться на всех обнаруженных # IPv4 интерфейсах. Чтобы слушать на всех IPv6 интерфейсах, необходимо # указать "[::]". Чтобы слушать на всех IPv4 и IPv6 интерфейсах, необходимо # установить значение в "*, [::]". # Если хотите задать специфический порт для определенного сервиса, необходимо # выполнять настройки в секции определенного протокола. Пример: # protocol imap { # listen = *:10143 # ssl_listen = *:10943 # .. # } # protocol pop3 { # listen = *:10100 # .. # } # protocol managesieve { # listen = *:12000 # .. # } listen = 91.221.84.10 # Отключить комманду LOGIN и другие LOGIN аутентификации за исключением, # когда используется SSL/TLS (совместимо с LOGINDISABLED). Если удаленный # IP совпадает с локальным IP (имеется ввиду соединение с этого же # компьютера), соедининие считается защищенным и эта plaintext аутентификация # разрешается. disable_plaintext_auth = no # Уничтожать все IMAP и POP3 процессы, когда останавливается родительский # Dovecot процесс. Если установить в "no", то можно реконфигурировать # Dovecot без принудительного закрытия открытых клиентских подключений (это # может быть проблемой, например если обновление связано с устранением # какой-то уязвимости). Учтите, что если родительский процесс остановлен, # то дочерние процессы не могут писать свои действия в логи. shutdown_clients = yes ## ## Ведение логов ## # Путь к лог-файлу для сообщений, вместо syslog. Можно использовать # /dev/stderr для ведения логов. log_path = /var/log/dovecot.log # Лог-файл для информационных и отладочных сообщений. По умолчанию # такой же, как log_path. #info_log_path = # Префикс для каждой записи в лог-файл. Коды предоставлены в формате # strftime(3). log_timestamp = "%b %d %H:%M:%S " # Средства (facility) syslog, используемый для ведения логов через syslog. # Обычно, если по каким-либо причинам не хочется использовать средства # (facility) "mail", можно использовать local0..local7. Также другие # стандартные средства (facility) поддерживаются. #syslog_facility = mail ## ## SSL настройки ## # IP-адрес или же имя хоста для прослушивания SSL-соединений. Помните, что # необходимо добаить также в сесию imaps и/или pop3s протоколов. По умолчанию # принимает такое же значение, как "listen", если не задано. ssl_listen = mail.ispalternativa.net.ua # SSL/TLS support: yes, no, required. # SSL/TLS поддержка: yes, no, required. (да, нет, необходима). ssl = yes # PEM кодированый X.509 SSL/TLS сертификат и секретный ключ. Они открываются # перед удалением привилегий root, поэтому сделайте файл ключа нечитабельным # для всех кроме root. Добавленный скрипт doc/mkcert.sh может использоваться # для легкой генерации самоподписного сертификата, только не забудьте # обновить домены в dovecot-openssl.cnf ssl_cert_file = /etc/ssl/certs/mail.pem ssl_key_file = /etc/ssl/certs/mail.pem # Если файл ключа защищен паролем, укажете его здесь. Как вариант, можно # запускать dovecot с параметром -p. #ssl_key_password = # Файл, содержащий доверенные центры сертификации. Используйте только вместо # использования ssl_verify_client_cert=yes. #ssl_ca_file = # Запрос клиента на отправку сертификата. Если хочешь использовать также # и эту опцию, необходимо установить также ssl_require_client_cert=yes в # секции авторизации. #ssl_verify_client_cert = no # Какое поле сертификата используется как username. commonName и # x500UniqueIdentifier используются как обычно. Необходимо также задать # параметр ssl_username_from_cert=yes. #ssl_cert_username_field = commonName # Как часто регенерировать файл с параметрами SSL. Генерация - довольно # интенсивно использует CPU. Значение в часах, 0 - отключает регенерацию. #ssl_parameters_regenerate = 168 # Набор символов, используемый SSL #ssl_cipher_list = ALL:!LOW:!SSLv2 # Отображать ошибки SSL на уровне протокола. #verbose_ssl = no ## ## Процес аутентификации ## # # Каталог, где аутентификационный процесс размещает UNIX сокеты, которые # необходимы для дальнейшего соединения. Сокеты создаются от имени root, # поэтому не нужно беспокоиться о разрешениях. Имейте ввиду, что все что # было в этом каталоге - удаляется, когда Dovecot запускается. login_dir = /var/run/dovecot/login # chroot-ить процесс авторизации в login_dir. login_chroot = yes # Имя пользователся, которое используется в процессе аутентификации. # Создайте полностью нового пользователя для этого. Этот юзер должен также # принадлежать групе, которая имеет доступ только к аутентификационному # процессу. login_user = dovecot # Задайте максимальный разммер процесса в мегабайтах. Если Вы не # используете login_process_per_connection, то необходимо увеличить # это значение. #login_process_size = 64 # Каждый процесс авторизации должен быть обработан своим процессом (yes), # или оди процесс может обрабатывать несколько соедининий (no). Yes - более # безопасно, осбобенно если используется SSL/TLS. No - работает быстрее, # поскольку нету необходимости плодить процессы на каждое соединение. login_process_per_connection = yes # Количество процессов авторизации, ожидающих новых соединений. login_processes_count = 3 # Максимальное количество создаваемых процессов авторизации. Количество # запущеных процессов обычно задается login_processes_count, но иногда # несколько пользователей запускают процесс авторизации одновременно, поэтому # может создаваться несколько большее количество процессов. Для предотвращения # fork-bombing проверка необходимости создания новых процессов выполняется раз # в секунду - если все используются, то их количество удваивается до предела, # указанного этим параметром. login_max_processes_count = 128 # Максимальное количество соединений, разрешенных в состоянии авторизации. # Эта опция используется только если login_process_per_connection=no. Когда # лимит достигнут, процесс уведомляет родительский, что он может создать # новый процесс авторизации. #login_max_connections = 256 # Приветственное сообщение для клиентов. login_greeting = Dovecot ready. # Список доверенных сетей, разделенных пробелом. Соединениям с этих IP-адресов # разрешено отвергать эти IP-адреса и порты (для авторизации и процесса # аутентификации). disable_plaintext_auth всегда игнорируется для этих сетей. # Обычно здесь задается IMAP-прокси сервер. #login_trusted_networks = # Список елементов для логирования, разделенный пробелом. Непустые элементы # будут обьеденены в строку через запятую. login_log_format_elements = user=<%u> method=%m rip=%r lip=%l %c # Формат лога авторизации. %$ содержит строку login_log_format_elements, %s # содержит данные, которые пишутся в лог. login_log_format = %$: %s ## ## Размещение ящиков и пространство имен ## # Размещение ящиков пользователей. Это похоже на старый параметр # default_mail_env. По умолчанию пустой, тогда Dovecot пытается найти ящики # автоматически. Не сработает, если пользователь еще не имеет почты, поэтому # необходимо указать Dovecot полное размещение. # # Если используется mbox, указать путь к INBOX файлу (например /var/mail/%u) # недостаточно. Необходимо будет указать Dovecot где другие яцики размещены. # Это называется "root mail directory", и это должен быть первый путь, # заданный в настройках mail_location. # # Несколько переменных, которые можно исаользовать. # # %u - имя пользователя # %n - пользовательская часть в user@domain, то же, что и %u если домен # не указан # %d - доменная часть в user@domain, пустая, если домен не указан # %h - домашний каталог # # Несколько примеров: # # mail_location = maildir:~/Maildir # mail_location = mbox:~/mail:INBOX=/var/mail/%u # mail_location = mbox:/var/mail/%d/%1n/%n:INDEX=/var/indexes/%d/%1n/%n # mail_location = maildir:/var/exim/%Ld/%Ln # Системные пользователь и група, которые используются для доступа к почте. # Если используется несколько, userdb может отвергать возвращенные поля # uid или gid. Можно использовать номера или имена. mail_uid = mailnull mail_gid = mail # Група, назначаемая временно для привилегированных операций. На данный # момент используется только с INBOX, когда также инициируется создание # или dotlock файлов. # Обычно задается как "mail", чтобы иметь доступ к /var/mail. mail_privileged_group = mail ## ## Почтовые процессы ## # Показывать больше отладочной информации (в ps). На данный момент # отображается имя пользователя и IP-адрес. Может пригодиться при # просмотре кто фактически использует IMAP процессы (например общие # почтовые ящики или если один uid используется несколькими аккаунтами. verbose_proctitle = yes # Разрешенный диапазон UID для пользователей, по умолчанию 500 и выше. # Это дает уверенность в том, что пользователи не залогинятся как # демоны либо другие системные пользователи. Имейте ввиду, что запрет # авторизации под root жестко определен в бинарниках и не сработает, # даже если first_valid_uid задать 0. first_valid_uid = 25 #last_valid_uid = 0 # Разрешенный диапазон GID для пользователей, по умолчанию не root # или wheel. Пользователям, имеющим неразрешенный GID как ID первичной # групы, вход запрещен. Если пользователь принадлежит к дополнительной # групе с неразрешенным GIDs, эта група не задается. first_valid_gid = 5 #last_valid_gid = 0 ## ## Специфические настройки IMAP ## protocol imap { # Размещение исполняемого файла авторизации. login_executable = /usr/local/libexec/dovecot/imap-login # Размещение исполняемого файла IMAP. Изменение разрешит выполнять # другие бинарники до запуска процесса imap. mail_executable = /usr/local/libexec/dovecot/imap # Поддержка динамически подгружаемых расширений. mail_plugins - список # расширений для загрузки, разделенный пробелами. mail_plugins = quota imap_quota #mail_plugin_dir = /usr/local/lib/dovecot/imap # Обработка клиентских ошибок: # delay-newmail: # Отравлять EXISTS/RECENT уведомления о новой почте только как ответ на NOOP # и CHECK комманды. Некоторые клиенты игнорируют их, например OSX Mail # (= 2.1.4) : %v.%u # Dovecot v0.99.x : %v.%u # tpop3d : %Mf # # Имейте ввиду, что Outlook 2003 имеет проблемы с форматом %v.%u, который # является для Dovecot форматом по умолчанию, и если настраивается новый # сервер, то было бы неплохо изменить этот параметр. pop3_uidl_format = %08Xu%08Xv # Поддержка динамически подгружаемых расширений. mail_plugins - список # расширений для загрузки, разделенный пробелами. mail_plugins = quota #mail_plugin_dir = /usr/local/lib/dovecot/pop3 # Обработка некоторых клиентских ошибок: # outlook-no-nuls: # Outlook и Outlook Express зависают, если сообщение содержит NUL # символы. Этот параметр заменяет их символами 0x80. # oe-ns-eoh: # Outlook Express и Netscape Mail прерываются, если повреждена линия # конца заголовка. Этот параметр отправляет ее, при повреждении. # Этот список разделяется пробелом. pop3_client_workarounds = outlook-no-nuls oe-ns-eoh } ## ## Специфические настройки LDA ## protocol lda { # Адрес используется для отправки отброшеных писем. postmaster_address = postmaster@ispalternativa.net.ua # Имя хоста, используемое в разных частях отправленного письма, например # в Message-Id. По умолчанию используемся системное имя хоста hostname = mail.ispalternativa.net.ua # Формат, используемый для логирования доставки почты. Доступные переменные: # %$ - Статус доставки сообщения (например "saved to INBOX") # %m - Message-ID # %s - Тема # %f - С какого адреса deliver_log_format = msgid=%m %f: %$ # Бинарник, используемый для отправки сообщений. sendmail_path = /usr/sbin/sendmail } ## ## Процесс авторизации ## # Логировать неуспешные попытки авторизации и причины ошибок. auth_verbose = yes # Более расширенная информация о авторизации для отладки. Отображает, # например, SQL-запросы. auth_debug = no # В случае, если пароли не совпадают. логировать пароль и пользовательскую # схему, что дает возможность отладки. Включая эту опцию также необходимо # включить auth_debug. auth_debug_passwords = no auth default { # Список разделенных пробелом механизмов авторизации: # plain login digest-md5 cram-md5 ntlm rpa apop anonymous gssapi otp skey # gss-spnego mechanisms = plain # База данных для проверки паролей пользователей (и ничего больше). Можно # использовать несколько баз паролей и пользователей. Это нужно, если # необходимо разрешить одновременно и системных пользователей (/etc/passwd) # и виртуальных пользователей без дублирования системных пользователей # в виртуальной базе данных. # SQL database passdb sql { # Путь к конфигурационному пути SQL. args = /usr/local/etc/dovecot-sql.conf } # Базад данных пользователей, определяющая, где расположена почта и где # какие UID и GID имеют доступ. Для single-UID используйте "static". # SQL database userdb sql { # Path for SQL configuration file. args = /usr/local/etc/dovecot-sql.conf } # Пользователь, от имени которого работает процесс. Этому пользователю # необходим доступ только к базе пользователей и паролей, ничего больше. # Только shadow и pam аутентификация требуют прав root-а, иначе можно # использовать любого, если это возможно. Имейте ввиду, что passwd # аутентификация с внутренним обращением BSD к теневым файлам, также # требует права root. Имейте ввиду, что пользователь НЕ используется # для доступа к почте. Этот пользователь задается только для доступа к # базам данным, как уже говорилось выше. user = mailnull } ## ## Настройки словаря сервера ## # Словарь может быть использован расширениями для сохранения списка # ключ=значение, таких как квота, срок действия и списки контроля # доступа. Словарь может быть использован напрямую, либо же через # сервер словарей. dict { #quota = mysql:/usr/local/etc/dovecot-dict-quota.conf #expire = db:/var/db/dovecot/expire.db } ## ## Настройка расширений ## plugin { # Тут можно задать некоторые определенные переменные для почтовых # процессов. Обычно это используется для параметров расширений. # Расширение %variable выпольнено для всех значений. # Quota plugin. quota = maildir } # Наконец-то осилил... Жаль что значительную часть текста не переводил, # а просто отправил в топку, в связи с неиспользованием в файле # конфигурации. Если у кого-то будет немного больше времени - просьба # перевести недостающие куски. # Перевод dovecot.conf 10.08.2011