В этом мануале были рассмотрены только самые основные настройки. Для получения более подробной информации, изучите
.
Что такое файл конфигурации PMTA?
Это файл расположенный в папке etc/pmta/ на сервере с установленным pmta, который отвечает за правила отправки почты с того или иного домена/ip адреса.
Короче говоря, то как будет происходить рассылка на тот или иной почтовый сервис, будет зависеть именно от этого файла.
За конфигурацию вашего сервера отвечают два файла, config и virtualhost.txt
После каждого редактирования этих файлов, нужно обязательно перезапустить конфиг командой:
В файле config находится вся статическая информация, а в файле virtualhost.txt динамическая(ваши домены и ip адреса).
Но по сути это один и тот же файл.
Строка
# Секция 1
Эти строки отвечают за максимально допустимые значения входящих и исходящих потоков, при которых будет осуществляться отправка с сервера.
# Секция 3
В строке
В строке
Значение 0/24 означает, что любая последняя цифра будет разрешена.
Если вам нужно прописать несколько ip адресов, то вы можете просто копировать эту строчку и прописать внизу любой другой ip адрес.
Если вам нужно оставить панель открытой, но при этом скрыть вкладки command, license и configuration, то вы можете прописать эти строки друг за другом со значениями:
# Секция 4
В этой секции прописаны самые распространенные отчеты и коды ошибок возврата писем.
# Секция 5
Здесь вы можете задавать правила отправки почты для разных почтовых сервисов. Каждый макрос отвечает за отправку на конкретный почтовый сервис. Так же вы можете сами добавлять новые макросы к уже существующим.
Макрос # DEFAULT DOMAIN SETTINGS # отвечает за настройки для всех почтовых сервисов по умолчанию.
Все что находится межу тегами <domain></domain> является правилами отправки почты на тот или иной домен.
Давайте рассмотрим самые основные настройки в режиме normal.
Если вдруг ваши письма начнут возвращаться из-за спама, то рассылка автоматически перейдет в режим backoff
# Секция SMTP PATTERN SETTINGS
В этой секции прописаны коды ошибок при возникновении которых переводить рассылку в режим backoff.
# Секция 6: LOG AND SPOOL SETTINGS
Тег <acct-file /var/log/pmta/acct.csv></acct-file> отвечает за файл acct.csv, который будет создаваться каждый день. Это самый главный файл, в него будут записываться все данные о рассылке, доставленных и не доставленных письмах, получателях и т.д.
Другие, дополнительные файлы настраиваются аналогичным образом.
Стандарнтый файл конфигурации PMTA:
Что такое файл конфигурации PMTA?
Это файл расположенный в папке etc/pmta/ на сервере с установленным pmta, который отвечает за правила отправки почты с того или иного домена/ip адреса.
Короче говоря, то как будет происходить рассылка на тот или иной почтовый сервис, будет зависеть именно от этого файла.
За конфигурацию вашего сервера отвечают два файла, config и virtualhost.txt
После каждого редактирования этих файлов, нужно обязательно перезапустить конфиг командой:
pmta reload
В файле config находится вся статическая информация, а в файле virtualhost.txt динамическая(ваши домены и ip адреса).
Но по сути это один и тот же файл.
Строка
include /etc/pmta/virtualhost.txt
подключает virtualhost.# Секция 1
Потоки
#####################################################################################################################################
# Section 1: POTOKI
#####################################################################################################################################
total-max-smtp-in 1000
total-max-smtp-out 5000
#####################################################################################################################################
Эти строки отвечают за максимально допустимые значения входящих и исходящих потоков, при которых будет осуществляться отправка с сервера.
# Секция 3
Основные настройки
#####################################################################################################################################
# Section 3: MAIN SETTINGS / VIRTUAL-MTA-POOL
#####################################################################################################################################
smtp-listener 0/0:2525 # Port PMTA
http-mgmt-port 1050
http-access 127.0.0.1 monitor
http-access ::1 monitor
http-access 180.183.74.0/24 admin
run-as-root no
#####################################################################################################################################
В строке
smtp-listener
можно указать номер порта для соединения с pmta, по умолчанию 2525.http-mgmt-port
- отвечает за порт для подключения к панели веб-мониторинга.В строке
http-access
вы можете прописать свой ip адрес для доступа к панели веб-мониторинга.Значение 0/24 означает, что любая последняя цифра будет разрешена.
Если вам нужно прописать несколько ip адресов, то вы можете просто копировать эту строчку и прописать внизу любой другой ip адрес.
Если вам нужно оставить панель открытой, но при этом скрыть вкладки command, license и configuration, то вы можете прописать эти строки друг за другом со значениями:
http-access (ваш ip) admin
http-access 0/0 monitor
http-access ::1 monitor
# Секция 4
Настройка bounce
#####################################################################################################################################
# Section 4: BOUNCE SETTINGS
#####################################################################################################################################
<bounce-category-patterns>
/spam/ spam-related
/junk mail/ spam-related
/blacklist/ spam-related
/blocked/ spam-related
/\bU\.?C\.?E\.?\b/ spam-related
/\bAdv(ertisements?)?\b/ spam-related
/unsolicited/ spam-related
/\b(open)?RBL\b/ spam-related
/realtime blackhole/ spam-related
/http:\/\/basic.wirehub.nl\/blackholes.html/ spam-related
/\bvirus\b/ virus-related
/message +content/ content-related
/content +rejected/ content-related
/quota/ quota-issues
/limit exceeded/ quota-issues
/mailbox +(is +)?full/ quota-issues
/sender ((verify|verification) failed|could not be verified|address rejected|domain must exist)/ invalid-sender
/unable to verify sender/ invalid-sender
/requires valid sender domain/ invalid-sender
/bad sender's system address/ invalid-sender
/No MX for envelope sender domain/ invalid-sender
/^[45]\.4\.4/ routing-errors
/no mail hosts for domain/ invalid-sender
/Your domain has no(t)? DNS\/MX entries/ invalid-sender
/REQUESTED ACTION NOT TAKEN: DNS FAILURE/ invalid-sender
/Domain of sender address/ invalid-sender
/return MX does not exist/ invalid-sender
/Invalid sender domain/ invalid-sender
/Verification failed/ invalid-sender
/\bstorage\b/ quota-issues
/(user|mailbox|recipient|rcpt|local part|address|account|mail drop|ad(d?)ressee) (has|has been|is)? *(currently|temporarily +)?(disabled|expired|inactive|not activa
ted)/ inactive-mailbox
/(conta|usu.rio) inativ(a|o)/ inactive-mailbox
/Too many (bad|invalid|unknown|illegal|unavailable) (user|mailbox|recipient|rcpt|local part|address|account|mail drop|ad(d?)ressee)/ other
/(No such|bad|invalid|unknown|illegal|unavailable) (local +)?(user|mailbox|recipient|rcpt|local part|address|account|mail drop|ad(d?)ressee)/ bad-mailbox
/(user|mailbox|recipient|rcpt|local part|address|account|mail drop|ad(d?)ressee) +(\S+@\S+ +)?(not (a +)?valid|not known|not here|not found|does not exist|bad|inval
id|unknown|illegal|unavailable)/ bad-mailbox
/\S+@\S+ +(is +)?(not (a +)?valid|not known|not here|not found|does not exist|bad|invalid|unknown|illegal|unavailable)/ bad-mailbox
/no mailbox here by that name/ bad-mailbox
/my badrcptto list/ bad-mailbox
/not our customer/ bad-mailbox
/no longer (valid|available)/ bad-mailbox
/have a \S+ account/ bad-mailbox
/\brelay(ing)?/ relaying-issues
/domain (retired|bad|invalid|unknown|illegal|unavailable)/ bad-domain
/domain no longer in use/ bad-domain
/domain (\S+ +)?(is +)?obsolete/ bad-domain
/denied/ policy-related
/prohibit/ policy-related
/refused/ policy-related
/allowed/ policy-related
/banned/ policy-related
/policy/ policy-related
/suspicious activity/ policy-related
/bad sequence/ protocol-errors
/syntax error/ protocol-errors
/syntax error/ protocol-errors
/\broute\b/ routing-errors
/\bunroutable\b/ routing-errors
/\bunrouteable\b/ routing-errors
/Invalid 7bit DATA/ content-related
/^2.\d+.\d+;/ success
/^[45]\.1\.[1346];/ bad-mailbox
/^[45]\.1\.2/ bad-domain
/^[45]\.1\.[78];/ invalid-sender
/^[45]\.2\.0;/ bad-mailbox
/^[45]\.2\.1;/ inactive-mailbox
/^[45]\.2\.2;/ quota-issues
/^[45]\.3\.3;/ content-related
/^[45]\.3\.5;/ bad-configuration
/^[45]\.4\.1;/ no-answer-from-host
/^[45]\.4\.2;/ bad-connection
/^[45]\.4\.[36];/ routing-errors
/^[45]\.4\.7;/ message-expired
/^[45]\.5\.3;/ policy-related
/^[45]\.5\.\d+;/ protocol-errors
/^[45]\.6\.\d+;/ content-related
/^[45]\.7\.[012];/ policy-related
/^[45]\.7\.7;/ content-related
// other # catch-all
</bounce-category-patterns>
<pattern-list sender>
# rcpt-to /^.*@gmail.com$/ virtual-mta=vmta-pool-v6
# rcpt-to /^.*@yandex.ru$/ virtual-mta=vmta-pool-v6
</pattern-list>
#####################################################################################################################################
В этой секции прописаны самые распространенные отчеты и коды ошибок возврата писем.
# Секция 5
Настройка доменов
#####################################################################################################################################
# MAIL.RU #
#####################################################################################################################################
# domains that resolve to MAIL.RU
domain-macro mailru mail.ru,bk.ru,inbox.ru,list.ru,mail.ua,mail.kz
<domain $mailru>
use-starttls no
max-smtp-out 1 # default be nice on concurrent connections
max-msg-per-connection 1 # max 500 mails in one session
max-rcpt-per-message 1
max-errors-per-connection 10 # avoid 'too long without data command' error
reuse-ssl-session no
max-msg-rate 2/m
bounce-upon-no-mx yes # proper mail domains should have mx
assume-delivery-upon-data-termination-timeout yes # avoid duplicate deliveries
smtp-421-means-mx-unavailable yes
smtp-553-means-invalid-mailbox yes
bounce-upon-5xx-greeting true
connect-timeout 1m
smtp-greeting-timeout 5m
data-send-timeout 5m
retry-after 30m # typical greylisting period
bounce-after 3d # default 4d12h
smtp-pattern-list blocking-errors
backoff-max-msg-rate 1/h # send only regular tries during backoff (default unlimited)
backoff-retry-after 1h,3h,6h,12h # retry at least every 20m (default 1h)
backoff-to-normal-after-delivery yes # revert to normal asap (default no)
backoff-to-normal-after 1h # always revert to normal after 1h (default never)
dk-sign yes
dkim-sign yes
deliver-local-dsn no
</domain>
Здесь вы можете задавать правила отправки почты для разных почтовых сервисов. Каждый макрос отвечает за отправку на конкретный почтовый сервис. Так же вы можете сами добавлять новые макросы к уже существующим.
Макрос # DEFAULT DOMAIN SETTINGS # отвечает за настройки для всех почтовых сервисов по умолчанию.
#####################################################################################################################################
# DEFAULT DOMAIN SETTINGS #
#####################################################################################################################################
<domain *>
use-starttls no
max-smtp-out 1 # default be nice on concurrent connections
max-msg-per-connection 1 # max 500 mails in one session
max-rcpt-per-message 1
max-errors-per-connection 10 # avoid 'too long without data command' error
reuse-ssl-session no
max-msg-rate 25/m
bounce-upon-no-mx yes # proper mail domains should have mx
assume-delivery-upon-data-termination-timeout yes # avoid duplicate deliveries
smtp-421-means-mx-unavailable yes
smtp-553-means-invalid-mailbox yes
bounce-upon-5xx-greeting true
connect-timeout 1m
smtp-greeting-timeout 5m
data-send-timeout 5m
retry-after 30m # typical greylisting period
bounce-after 3d # default 4d12h
smtp-pattern-list blocking-errors
backoff-max-msg-rate 1/m # send only regular tries during backoff (default unlimited)
backoff-retry-after 10m,30m,1h,2h # retry at least every 20m (default 1h)
backoff-to-normal-after-delivery yes # revert to normal asap (default no)
backoff-to-normal-after 10m # always revert to normal after 1h (default never)
dk-sign yes
dkim-sign yes
deliver-local-dsn no
</domain>
Все что находится межу тегами <domain></domain> является правилами отправки почты на тот или иной домен.
Давайте рассмотрим самые основные настройки в режиме normal.
max-smtp-out
- количество исходящих потоков. Если выставить значение = 1, то при каждом соединении с сервером, отправка почты будет осуществляться через 1 поток.max-msg-per-connection
- количество писем за одно соединение. При значении = 1, от каждого ip будет открываться 1 соединение и отправляться 1 сообщение.max-msg-rate
- ограничение максимальной скорости рассылки в секунду/минуту/час.Настройки в режиме backoff
Если вдруг ваши письма начнут возвращаться из-за спама, то рассылка автоматически перейдет в режим backoff
backoff-max-msg-rate
- ограничивает количество исходящих сообщений, при значении 0/h останавливает рассылку полностью.backoff-retry-after
- параметр отвечает за то, когда в следующий раз будет осуществлена попытка отправки почты. Например, если через 10 минут письмо вернется из-за спама, то в следующий раз pmta попытается отправить письмо уже через 30 минут, 1 час, 2 часа и т.д.backoff-to-normal-after-delivery
- при значении yes, рассылка автоматически вернется в режим normal, если на этот раз письмо не было отклонено сервером.# Секция SMTP PATTERN SETTINGS
#####################################################################################################################################
# Section 5: SMTP PATTERN SETTINGS
#####################################################################################################################################
<smtp-pattern-list common-errors>
reply /generating high volumes of.* complaints from AOL/ mode=backoff
reply /Excessive unknown recipients - possible Open Relay/ mode=backoff
reply /^421 .* too many errors/ mode=backoff
reply /blocked.*spamhaus/ mode=backoff
reply /451 Rejected/ mode=backoff
</smtp-pattern-list>
<smtp-pattern-list blocking-errors>
#AOL Errors
reply /421 .* SERVICE NOT AVAILABLE/ mode=backoff
reply /generating high volumes of.* complaints from AOL/ mode=backoff
reply /554 .*aol.com/ mode=backoff
reply /421dynt1/ mode=backoff
reply /HVU:B1/ mode=backoff
reply /DNS:NR/ mode=backoff
reply /RLY:NW/ mode=backoff
reply /DYN:T1/ mode=backoff
reply /RLY:BD/ mode=backoff
reply /RLY:CH2/ mode=backoff
#
#Yahoo Errors
reply /421 .* Please try again later/ mode=backoff
reply /421 Message temporarily deferred/ mode=backoff
reply /VS3-IP5 Excessive unknown recipients/ mode=backoff
reply /VSS-IP Excessive unknown recipients/ mode=backoff
#
# The following 4 Yahoo errors may be very common
# Using them may result in high use of backoff mode
#
reply /\[GL01\] Message from/ mode=backoff
reply /\[TS01\] Messages from/ mode=backoff
reply /\[TS02\] Messages from/ mode=backoff
reply /\[TS03\] All messages from/ mode=backoff
#
#Hotmail Errors
reply /exceeded the rate limit/ mode=backoff
reply /exceeded the connection limit/ mode=backoff
reply /Mail rejected by Windows Live Hotmail for policy reasons/ mode=backoff
reply /mail.live.com\/mail\/troubleshooting.aspx/ mode=backoff
#
#Adelphia Errors
reply /421 Message Rejected/ mode=backoff
reply /Client host rejected/ mode=backoff
reply /blocked using UCEProtect/ mode=backoff
#
#Road Runner Errors
reply /Mail Refused/ mode=backoff
reply /421 Exceeded allowable connection time/ mode=backoff
reply /amIBlockedByRR/ mode=backoff
reply /block-lookup/ mode=backoff
reply /Too many concurrent connections from source IP/ mode=backoff
#
#General Errors
reply /too many/ mode=backoff
reply /Exceeded allowable connection time/ mode=backoff
reply /Connection rate limit exceeded/ mode=backoff
reply /refused your connection/ mode=backoff
reply /try again later/ mode=backoff
reply /try later/ mode=backoff
reply /550 RBL/ mode=backoff
reply /TDC internal RBL/ mode=backoff
reply /connection refused/ mode=backoff
reply /please see www.spamhaus.org/ mode=backoff
reply /Message Rejected/ mode=backoff
reply /refused by antispam/ mode=backoff
reply /Service not available/ mode=backoff
reply /currently blocked/ mode=backoff
reply /locally blacklisted/ mode=backoff
reply /not currently accepting mail from your ip/ mode=backoff
reply /421.*closing connection/ mode=backoff
reply /421.*Lost connection/ mode=backoff
reply /476 connections from your host are denied/ mode=backoff
reply /421 Connection cannot be established/ mode=backoff
reply /421 temporary envelope failure/ mode=backoff
reply /421 4.4.2 Timeout while waiting for command/ mode=backoff
reply /450 Requested action aborted/ mode=backoff
reply /550 Access denied/ mode=backoff
reply /exceeded the rate limit/ mode=backoff
reply /421rlynw/ mode=backoff
reply /permanently deferred/ mode=backoff
reply /\d+\.\d+\.\d+\.\d+ blocked/ mode=backoff
reply /www\.spamcop\.net\/bl\.shtml/ mode=backoff
reply /generating high volumes of.* complaints from AOL/ mode=backoff
reply /Excessive unknown recipients - possible Open Relay/ mode=backoff
reply /^421 .* too many errors/ mode=backoff
reply /blocked.*spamhaus/ mode=backoff
reply /451 Rejected/ mode=backoff
</smtp-pattern-list>
#####################################################################################################################################
# END Section 5: SMTP PATTERN SETTINGS
#####################################################################################################################################
В этой секции прописаны коды ошибок при возникновении которых переводить рассылку в режим backoff.
# Секция 6: LOG AND SPOOL SETTINGS
Логирование
#####################################################################################################################################
# Section 6: LOG AND SPOOL SETTINGS
#####################################################################################################################################
log-file /var/log/pmta/log # logrotate is used for rotation
# All logs
<acct-file /var/log/pmta/acct.csv>
move-interval 5m
max-size 25M
delete-after 7d
</acct-file>
# HardBounce logs
<acct-file /var/log/pmta/hardbounces.csv>
records r
records rb
record-fields r *
record-fields rb *
move-interval 5m
max-size 50M # MB
delete-after 7d
</acct-file>
# SoftBounce logs
<acct-file /var/log/pmta/softbounces.csv>
records t
record-fields t *
move-interval 5m
max-size 50M # MB
delete-after 7d
</acct-file>
# Delivery log
<acct-file /var/log/pmta/success.csv>
records d
record-fields d *
move-interval 5m
max-size 50M # MB
delete-after 7d
</acct-file>
#####################################################################################################################################
Тег <acct-file /var/log/pmta/acct.csv></acct-file> отвечает за файл acct.csv, который будет создаваться каждый день. Это самый главный файл, в него будут записываться все данные о рассылке, доставленных и не доставленных письмах, получателях и т.д.
move-interval
- отвечает за частоту обновления файла acct.csv. При значении 5m, файл будет обновляться каждые 5 минут.max-size
- максимальный размер файла.delete-after
- промежуток времени, через который файл будет удален.Другие, дополнительные файлы настраиваются аналогичным образом.
Стандарнтый файл конфигурации PMTA: