Модуль местной доставки обрабатывает сообщения, предназначенные для пользователей вашего сервера. Он использует “менеджер папок” для сохранения сообщений в папках пользователя.

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

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

Модуль местной доставки может поддерживать прямую адресацию папок и детализированные адреса пользователя.

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

Настройка модуля местной доставки

Чтобы настроить параметры модуля местной доставки, используйте веб-интерфейс администратора. Откройте страницу “почта” в разделе “установки”, затем откройте страницу “LOCAL”.

Уровень журнала

Используйте эту настройку для указания, какую информацию модуль местной доставки должен сохранять в журнале работы сервера. Обычно используется уровень “основное” (отчёты о передаче сообщений) или уровень “проблемы” (передача сообщений и не фатальные ошибки). В случае, если в работе модуля местной доставки возникают проблемы, возможно, целесообразным будет увеличить детализацию до уровня “подробности” или “всё”: в этом случае в журнал работы сервера будет записываться более подробная информация о работе модуля. Когда проблема решена, верните настройку “уровень журнала” в её обычное значение, иначе системный журнал будет очень быстро увеличивать свой размер.
Записи, помещённые модулем местной доставки в журнал работы сервера, имеют пометку “LOCAL”.

 

Процессоры

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

 

Если хранилище переполнено

Если вы задаёте ненулевое значение для этой настройки, отвечающей за повторные попытки доставки сообщений, то модуль местной доставки будет проверять размер хранилища почты пользователя до того, как он попытается доставить этому пользователю сообщение. Если размер хранилища почты пользователя ограничен, и указанный процент от этого ограничения использован или будет использован после добавления нового сообщения, то модуль местной доставки откладывает доставку всех сообщений, направляемых этому пользователю. Периодически модуль повторяет попытки доставить почту этому пользователю. Доставка сообщений будет продолжена после удаления каких-нибудь сообщений из папок пользователя.
Этот параметр указывает, как долго входящие сообщения должны хранится в очереди модуля до того, как они будут отвергнуты с сообщением об ошибке account is full. Если значение «в течение» меньше, чем «пробовать раз в», то сообщения не сохраняются в очереди, когда хранилище пользователя переполнено и отвергаются немедленно.

 

Если услуга 'Mail' выключена

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

 

Задержать

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

 

Посылать предупреждения после

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

Ограничение потока входящих сообщений

Хотя CommuniGate Pro использует развитые встроенные технологии для предотвращения зацикливания почты, в некоторых случаях (обычно при взаимодействии с другими серверами) может образоваться почтовая петля. Чтобы минимизировать вред от такого зацикливания, модуль местной доставки подсчитывает все сообщения, получаемые пользователями. Если их число превысит указанный лимит, то очередь входящих сообщений для этого пользователя задерживается.

Обратите внимание: модуль считает число доставляемых пользователю сообщений, а не число сохраняемых сообщений: даже если входящее сообщение не сохраняется в папке “INBOX” пользователя из-за того, например, что оно было выкинуто правилами, это сообщение все равно учитывается.

Установки передачи почты пользователя задают и ограничения потока входящих сообщений для каждого пользователя.

Маршрутизация

Когда маршрутизатор передаёт адрес в модуль местной доставки, модуль проверяет имя домена: если имя домена заканчивается строкой .local, то модуль местной доставки принимает этот адрес, удаляет из имени домена суффикс .local и сохраняет сообщение у соответствующего пользователя главного гомена. Эта возможность используется для создания общедоменных пользователей.

Пример:

сообщение, отправленное на адрес
abcdef@nnnnn.local
будет принято модулем местной доставки и сохранено у пользователя nnnnn.

 

Иногда необходимо создать общедоменного пользователя не в главном домене сервера, а в каком-нибудь другом домене. Используйте суффикс ._domain для направления почты на пользователя в другом домене. Последний компонент «локальной части» адреса будет использоваться для указания имени домена пользователя:

Пример:

сообщение, направленное на адрес
abcdef%xyz@nnnnn._domain
будет принято модулем местной доставки и сохранено у пользователя xyz в домене nnnnn.

 

Когда маршрутизатор вызывает модуль местной доставки «при первом проходе», то модуль не обрабатывает никакие другие адреса.

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

Примеры:

сообщение, отправленное на адрес
abcdef
будет принято модулем местной доставки и сохранено у пользователя abcdef в главном домене.
 
Если subdomain.com — это один из доменов, обслуживаемых сервером, то сообщение, отправленное на адрес
xyz@subdomain.com
будет принято модулем местной доставкии сохранено у пользователя xyz в домене subdomain.com.

Чтобы обеспечить возможность маршрутизации только для домена, используемую модулем HTTP, модуль местной доставки принимает все адреса с локальной частью LoginPage и пустой доменной частью или с доменной частью, совпадающей с именем какого-либо домена или псевдонима домена.

Маршрутизация для неизвестных пользователей

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

Если выбрана опция «отвергнуть», то все сообщения, отправленные неизвестным пользователям отвергаются и отправителю возвращается сообщение об ошибке «unknown account».

Если выбрана опция «выкинуть», то все сообщения, отправленные неизвестным пользователям перенаправляются на адрес NULL и сервер выкидывает их, не генерируя сообщение об ошибке.

Если вы выбираете опцию «перенаправить к», то все сообщения, отправленные неизвестным пользователям, будут перенаправляться на указанный адрес. Этот адрес может быть именем существующего локального пользователя, или он может быть адресом электронной почты пользователя на другом сервере: неизвестный адрес пользователя заменяется на указанный адрес, и запускается повторная процедура обработки этого адреса в маршрутизаторе.

Указанный адрес для «перенаправления» может содержать символ звёздочка (*). В этом случае имя неизвестного локального пользователя подставляется вместо символа звёздочка.

Пример:

задан следующий адрес перенаправить к:
bad-*@monitoring.department.com
сообщение отправляется на
james@mycompany.com
где mycompany.com — это имя домена на вашем сервере, но пользователя james в нём нет.
Сообщение перенаправляется на:
bad-james@monitoring.department.com

Общедоменные пользователи

Маршрутизатор может направлять почту для всего домена (имени домена) на определённого локального пользователя при использовании суффикса домена .local (смотрите выше).

Этот метод полезен, если:

  • почта отправляется на почтовую систему клиента с коммутируемым доступом, которая не имеет постоянного IP-адреса и, следовательно, не может получать почту через SMTP;

  • в почтовом домене только несколько пользователей, забирающих почту по протоколу POP3, и вы не хотите создавать для их обслуживания полноценный домен CommuniGate Pro.

Пример:

Строка в маршрутизаторе:

client1.com = client1.local

Все сообщения, отправляемые в домен client1.com, направляются на локального пользователя client1 главного домена.

 

Общедоменные пользователи полезны, если клиентские системы получают сообщения с вашего сервера через функции CommuniGate Pro RPOP или им подобные, распределяя в дальнейшем полученные сообщение локальным образом. В качестве альтернативы, клиентская система может использовать обычную однопользовательскую почтовую программу для получения сообщений, в дальнейшем распределяя полученные сообщения вручную.

Если информация из локальной части адреса client1.com не используется для маршрутизации, то она выкидывается. Когда модуль местной доставки сохраняет сообщение у пользователя client1, он сохраняет локальную часть адреса в поле заголовка сообщения X-Real-To: (или в другом поле, заданном в настройках модуля местной доставки).

Пример:

Строка в маршрутизаторе:

client1.com = client1.local

Сообщение, отправленное на адрес:
abcdef@client1.com, xyz@client1.com
сохраняется у пользователя client1, и поле заголовка:
X-Real-To: abcdef, xyz
добавляется к сохранённому сообщению.

Обратите внимание:

<*@client1.com>= client1

Такая запись для псевдонима в маршрутизаторе также сохраняет все сообщения, отправленные в домен client1.com у пользователя client1, но при использовании такой записи информация о локальной части адреса (информация об имени пользователя) будет утеряна и поле X-Real-To: не будет создано. Клиентское программное обеспечение, получающее сообщения от общедоменного пользователя, будет полагаться на поля заголовка сообщения “кому” и “копия”. В этих полях не всегда содержится правильная информация; в частности, в них никогда не отражаются изменения в локальной части адреса, которые могли быть сделаны другими записями маршрутизации.

 

Модуль POP позволяет индивидуальным пользователям забирать почту от общедоменного пользователя, пряча все сообщения, в которых в поле заголовка X-Real-To не содержится указанного имени пользователя.

 

Обычно, общедоменные пользователи создаются в главном домене. Используйте суффикс .domain для создания общедоменного пользователя в других доменах.
Сообщения, направляемые на xxxx%accountname@domainname.domain будут сохраняться у пользователя accountname в домене domainname, с адресом xxx, добавленным в поле заголовка сообщения X-Real-To.
Например, пдминистратор домена в домене company.com может использовать следующие настройки:
   Почта для Неизвестных Перенаправить к *%Unknowns@company.com.domain
и сообщения, отправленные на неизвестных пользователей домена, будут сохраняться у пользователя Unknowns, а адреса, на которые они были отправлены, будут храниться в полях заголовков сообщений X-Real-To.

Автоматическая обработка почты

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

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

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

Сохранение почты в папках пользователя

После того, как правила пользователя были применены и, по результатам применения этих правил, сообщение не было выкинуто, сообщение сохраняется в папке “INBOX” пользователя.

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

Прямая адресами папок

Модуль местной доставки может доставлять сообщения в явно указанные папки, минуя папку INBOX. Если локальная часть адрес указана как box#name, то сообщение будет сохранено в папке box у пользователя name.

При использовании адресов такого типа правила уровня пользователя НЕ применяются.

Вы можете использовать прямую адресацию папок в таблице маршрутизатора:

;сохранять сообщения на sales@maindomain
; в папке sales у Пользователя public@maindomain
<sales> = sales#public
;
; сохранять сообщения на support@client.com
; в папке requests у Пользователя staff в Домене hq.client.com
<support@client.com> = "requests#staff"@hq.client.com

Обратите внимание: помните, что имена папок зависимы от регистра.

Обратите внимание: возможность прямой адресации папок может также использоваться в POP-модуле. При использовании приведённых выше записей в маршрутизаторе, при входе пользователя по имени sales, почтовая программа клиента, работающая по протоколу POP откроет папку sales у пользователя public (если пользователь указал правильный пароль для пользователя public).

Настройки маршрутизации

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

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

 

Всегда добавлять это поле

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

 

Прямая адресация папок

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

 

'Детализированные' адреса

Эта настройка управляет детализированными адресами. Детализированный адрес пользователя — это имя пользователя, за которым следует символ плюс (+) и некоторая строка.

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

Выключено

Модуль местной доставки не будет обрабатывать символ плюс в именах пользователей.

Включено

Модуль местной доставки проверяет наличие символа плюс в именах пользователей, удаляет первый символ плюс и следующие за ним символы из адреса, а затем снова пытается применить правила маршрутизации к получившемуся адресу. Пользователи могут использовать детализированные адреса пользователя (john+jokelists) для подписки на списки рассылки. Сообщения, отправленные на детализированные адреса, будут направляться на пользователей, и для автоматической обработки этих сообщений могут использоваться правила уровня пользователя (условие получатель) — например, для сохранения сообщений в какой-нибудь папке jokes, посвящённой этим сообщениям.

Прямо в папку

Модуль местной доставки проверит наличие символа плюс в именах пользователя и обработает строку после символа плюс как адрес для прямой адресации папок. Адрес john+jokelist будет обрабатываться как адрес jokelist#john, и сообщение будет направлено прямо в папку jokelist пользователя john, минуя правила уровня пользователя (если опция прямая адресация папок включена).

Отправка почты всем пользователям

Вы можете использовать установки домена, чтобы задействовать виртуальный объект All. Сообщения, посланные на адрес all@domainname, не сохраняются у тех пользователей, у которых опция принимает почту для «all» имеет значение “нет”.

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

Чтобы отправить сообщение всем пользователям во всех доменах сервера, может использоваться адрес alldomains@maindomain.