Переезд с PostFix на Exim

EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
phobos
рядовой
Сообщения: 16
Зарегистрирован: 2009-04-04 10:49:23
Откуда: UA, Kyiv
Контактная информация:

Переезд с PostFix на Exim

Непрочитанное сообщение phobos » 2009-04-17 13:02:02

День Добрый Уважаемые Юнихеры!

Возникла такая проблема, перевожу МТА Сервер с Postfix на Exim,
Все хорошо, перенес СУБД Базы (MySQL), настроил Экзим по статье Лиса,
но возникла проблемка... Аудетификацию проводит поп3 и имап сервера,
А вот для отправки сообщения нунекак не хо... :(

и в логах немогу найти ошибок аудентификации или чего либо другого... :(

Хостинговая компания Host-Food.ru
Хостинг HostFood.ru
 

Услуги хостинговой компании Host-Food.ru

Хостинг HostFood.ru

Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2460 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Laa
ст. лейтенант
Сообщения: 1032
Зарегистрирован: 2008-02-21 18:25:33
Откуда: Украина, Россия

Re: Переезд с PostFix на Exim

Непрочитанное сообщение Laa » 2009-04-17 13:50:34

1. временно сделайте log_selector = all
2. попробуйте
3. посмотрите на настройки аутентификации и на логи.
4. если не удалось понять или нагуглить решение -- сюда пришлите лог с попыткой и нужный кусок конфига екзима.

удачи!
exim: помните, что выдавая deny, вы можете недоставить ваше же письмо, зарубив sender-verify удаленного MTA к вашему MTA!!!

Аватара пользователя
phobos
рядовой
Сообщения: 16
Зарегистрирован: 2009-04-04 10:49:23
Откуда: UA, Kyiv
Контактная информация:

Re: Переезд с PostFix на Exim

Непрочитанное сообщение phobos » 2009-04-21 11:29:50

Спасибо, посчтавил на сервере ...log = -all
вечером посмотрю... Ибо переношу с одного сервера на другой...
Дело еще в том... Что в постфиксе было 2-а домена... somedomain.com и somedomain1.com
на новом сервере, перенес базы и создал 3-й server.domain.com
с 3-го уходят и приходят... а с других 2-х точно не уходили, токо приходили... сегодня посмотрю в чем проблема и отпишусь...

На всяк случай конф Экзима:

Код: Выделить всё

primary_hostname = freia.rg2q.com
hide mysql_servers = localhost/mail/exim/SOME_PASSWD

domainlist local_domains = ${lookup mysql{SELECT domain FROM domain WHERE domain='${domain}' AND active='1'}}

domainlist relay_to_domains = ${lookup mysql{SELECT domain FROM domain WHERE domain='${domain}' AND active='1'}}

hostlist   relay_from_hosts = localhost:127.0.0.0/8

acl_smtp_rcpt = acl_check_rcpt
acl_smtp_data = acl_check_data

av_scanner = clamd:/var/run/clamav/clamd.sock
spamd_address = 127.0.0.1 783

qualify_domain = freia.rg2q.com
qualify_recipient = freia.rg2q.com

allow_domain_literals = false
exim_user = mailnull
exim_group = mailnull
never_users = root

rfc1413_query_timeout = 0s
ignore_bounce_errors_after = 45m
freeze_tell = admin@domain.com
#helo_accept_junk_hosts = 192.168.24.0/16

auto_thaw = 1h
smtp_banner = "$primary_hostname, ESMTP EXIM $version_number"
smtp_accept_max = 50
smtp_accept_max_per_connection = 25
smtp_connect_backlog = 30
smtp_accept_max_per_host = 20
split_spool_directory = true
remote_max_parallel = 15
return_size_limit = 70k
message_size_limit = 24M
helo_allow_chars = _
smtp_enforce_sync = false
log_selector = -all
#\
#    +all_parents \
#    +connection_reject \
#    +incoming_interface \
#    +lost_incoming_connection \
#    +received_sender \
#    +received_recipients \
#    +smtp_confirmation \
#    +smtp_syntax_error \
#    +smtp_protocol_error \
#    -queue_run

syslog_timestamp = no
#system_filter = /usr/local/etc/exim/copy_mail.conf

begin acl
acl_check_rcpt:
accept  hosts = :
deny    message       = "Недопустимые символы в адресе"
        domains       = +local_domains
        local_parts   = ^[.] : ^.*[@%!/|]

deny    message       = "Недопустимые символы в адресе"
          domains       = !+local_domains
                    local_parts   = ^[./|] : ^.*[@%!] : ^.*/\\.\\./

require verify        = sender
deny    message       = "HELO/EHLO обязано быть по SMTP RFC"
        condition     = ${if eq{$sender_helo_name}{}{yes}{no}}

accept  authenticated = *

deny    message       = "Не надо пихать свой IP в качестве HELO!"
        hosts         =  *:!+relay_from_hosts
        condition     = ${if eq{$sender_helo_name} {$sender_host_address}{true}{false}}

deny    condition     = ${if eq{$sender_helo_name} {$interface_address}{yes}{no}}
        hosts         = !127.0.0.1 : !localhost : *
        message       = "Это мой IP-адрес! Пшёл прочь!"

deny    condition     = ${if match{$sender_helo_name} {\N^\d+$\N}{yes}{no}}
        hosts         = !127.0.0.1:!localhost:*
        message       = "В HELO не могут быть тока цифры!"

deny    message       = "Не нравится мне Ваш хост..."
        condition     = ${if match{$sender_host_name}  {adsl|dialup|pool|peer|dhcp} {yes}{no}}

deny    message       = "host in blacklist - $dnslist_domain \n $dnslist_text"
        dnslists      = opm.blitzed.org : \
                        proxies.blackholes.easynet.nl : \
                        cbl.abuseat.org : \
                        bl.spamcop.net : \
                        bl.csma.biz : \
                        dynablock.njabl.org : \

warn
# ставим дефолтовую задержку в 20 секунд
set acl_m0 = 20s
#warn
# ставим задержку в 0 секунд своим хостам и
# дружественным сетям (соседняя контора :))
#hosts = +relay_from_hosts : 213.234.195.226/28
#       set acl_m0 = 0s
warn
# пишем в логи задержку (если оно вам надо)
logwrite = Delay $acl_m0 for $sender_host_name \
        [$sender_host_address] with HELO=$sender_helo_name. Mail \
        from $sender_address to $local_part@$domain.
delay = $acl_m0

accept  domains       = +local_domains
          endpass
        message       = "В этом домене нет такого пользователя"
        verify        = recipient

accept  domains       = +relay_to_domains
          endpass
        message       = "Моя сервера не знать маршрут на этот хост..."
        verify        = recipient

accept  hosts         = +relay_from_hosts
deny    message       = "Свободен. Это тебе не ОпенРелей."

acl_check_data:

deny malware = *
        message = "In e-mail found VIRUS - $malware_name"

accept

begin routers

dnslookup:
driver = dnslookup
domains = ! +local_domains
transport = remote_smtp
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
no_more

system_aliases:
        driver      = redirect
allow_fail
allow_defer
        data = ${lookup mysql{SELECT goto FROM alias WHERE \
                address='${quote_mysql:$local_part@$domain}' OR \
                address='${quote_mysql:@$domain}'}}

mysqluser:
        driver = accept
        condition = ${if eq{}{${lookup mysql{SELECT maildir FROM mailbox \
                    WHERE username='${quote_mysql:$local_part@$domain}'}}}{no}{yes}}
        transport = mysql_delivery

begin transports

remote_smtp:
        driver = smtp

mysql_delivery:
        driver = appendfile
        check_string = ""
create_directory
delivery_date_add
        directory = ${lookup mysql{SELECT CONCAT('/var/mail/exim/', maildir) FROM mailbox WHERE username='${local_part}@${domain}'}}
        directory_mode = 770
envelope_to_add
        group = mail
maildir_format
        maildir_tag = ,S=$message_size
        message_prefix = ""
        message_suffix = ""

        mode = 0600

address_file:
        driver = appendfile
delivery_date_add
envelope_to_add
return_path_add

address_pipe:
        driver = pipe
return_output

# Транспорт для автоответов
address_reply:
        driver = autoreply



# Начинаются повторы недоставленных писем.
begin retry

*                    *       F,2h,15m; G,16h,1h,1.5; F,4d,6h

begin rewrite

begin authenticators
auth_plain:
        driver = plaintext
        public_name = PLAIN
        server_condition = ${lookup mysql{SELECT username FROM mailbox WHERE username = '${quote_mysql:$1}' AND password = '${quote_mysql:$2}'}{yes}
{no}}
        server_prompts = :
        server_set_id = $2


auth_login:
        driver = plaintext
        public_name = LOGIN
        server_condition = ${lookup mysql{SELECT username FROM mailbox WHERE username = '${quote_mysql:$1}' AND password = '${quote_mysql:$2}'}{yes}
{no}}
        server_prompts = Username:: : Password::
        server_set_id = $1

auth_cram_md5:
        driver = cram_md5
        public_name = CRAM-MD5
        server_secret = ${lookup mysql{SELECT password FROM mailbox WHERE username = '${quote_mysql:$1}'}{$value}fail}
        server_set_id = $1

и Конф pop3 + IMAP

Код: Выделить всё

#IMAP

ADDRESS=0
PORT=143
AUTHSERVICE143=imap
MAXDAEMONS=40
MAXPERIP=4
PIDFILE=/var/run/imapd.pid
TCPDOPTS="-nodnslookup -noidentlookup"
LOGGEROPTS="-name=imapd"
DEFDOMAIN="@domain.com"
IMAP_CAPABILITY="IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE"
IMAP_KEYWORDS=1
IMAP_ACL=1
IMAP_CAPABILITY_ORIG="IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA \
                                       AUTH=CRAM-MD5 AUTH=CRAM-SHA1 AUTH=CRAM-SHA256 IDLE"
IMAP_PROXY=0
IMAP_PROXY_FOREIGN=0
IMAP_IDLE_TIMEOUT=60
IMAP_MAILBOX_SANITY_CHECK=1
IMAP_CAPABILITY_TLS="$IMAP_CAPABILITY AUTH=PLAIN"
IMAP_CAPABILITY_TLS_ORIG="$IMAP_CAPABILITY_ORIG AUTH=PLAIN"
IMAP_DISABLETHREADSORT=0
IMAP_CHECK_ALL_FOLDERS=0
IMAP_OBSOLETE_CLIENT=0
IMAP_UMASK=022
IMAP_ULIMITD=65536
IMAP_USELOCKS=1
IMAP_ENHANCEDIDLE=0
IMAP_TRASHFOLDERNAME=Trash
IMAP_EMPTYTRASH=Trash:7
IMAP_MOVE_EXPUNGE_TO_TRASH=0
IMAPDSTART=YES
MAILDIRPATH=Maildir


#POP3
PIDFILE=/var/run/pop3d.pid
MAXDAEMONS=40
MAXPERIP=4
POP3AUTH="PLAIN LOGIN CRAM-MD5"
POP3AUTH_ORIG="PLAIN LOGIN CRAM-MD5"
POP3AUTH_TLS="PLAIN LOGIN CRAM-MD5"
POP3AUTH_TLS_ORIG="PLAIN LOGIN CRAM-MD5"
POP3_PROXY=0
PORT=110
ADDRESS=0
TCPDOPTS="-nodnslookup -noidentlookup"
LOGGEROPTS="-name=courier-imap"
POP3DSTART=YES
MAILDIRPATH=Maildir

Аватара пользователя
Laa
ст. лейтенант
Сообщения: 1032
Зарегистрирован: 2008-02-21 18:25:33
Откуда: Украина, Россия

Re: Переезд с PostFix на Exim

Непрочитанное сообщение Laa » 2009-04-21 15:32:38

log_selector = +all, а не -all, вам для понимания того где проблема лучше увидеть больше логов, чем вообще быть без логов! :fool:

domainlist local_domains и relay_to_domains если нет особой необходимости держать в БД лучше прописать вручную в конфиге, так как при 100 одновременных коннектов каждый лишний запрос к БД будет грузить сервер. Оно надо???

Остальное не смотрел... лень... :oops: :oops:
exim: помните, что выдавая deny, вы можете недоставить ваше же письмо, зарубив sender-verify удаленного MTA к вашему MTA!!!

Аватара пользователя
phobos
рядовой
Сообщения: 16
Зарегистрирован: 2009-04-04 10:49:23
Откуда: UA, Kyiv
Контактная информация:

Re: Переезд с PostFix на Exim

Непрочитанное сообщение phobos » 2009-05-02 19:25:46

Код: Выделить всё

May  2 19:18:50 niagara authdaemond: Authenticated: sysusername=<null>, sysuserid=26, sysgroupid=26, homedir=/var/mail/exim/domain.com.ua/admin@domain.com.ua/, address=admin@domain.com.ua, fullname=Alex,
 maildir=/var/mail/exim/domain.com.ua/admin@domain.com.ua/, quota=307200000, options=<null>
May  2 19:18:50 niagara authdaemond: Authenticated: clearpasswd=1234567890, passwd=<null>
May  2 19:18:50 niagara imapd: LOGIN, user=admin@domain.com.ua, ip=[127.0.0.1], port=[56309], protocol=IMAP
May  2 19:18:51 niagara exim[1073]: lowest numbered MX record points to local host: venbest.com.ua (while verifying <admin@domain.com.ua> from host (niagara.rg2q.com) [127.0.0.1])
May  2 19:18:51 niagara exim[1073]: H=(niagara.rg2q.com) [127.0.0.1] sender verify defer for <admin@domain.com.ua>: lowest numbered MX record points to local host
May  2 19:18:51 niagara exim[1073]: H=(niagara.rg2q.com) [127.0.0.1] sender verify defer for <admin@domain.com.ua>: lowest numbered MX record points to local host
May  2 19:18:51 niagara exim[1073]: H=(niagara.rg2q.com) [127.0.0.1] F=<admin@domain.com.ua> temporarily rejected RCPT <phobos@root.ua>: Could not complete sender verify
May  2 19:18:51 niagara exim[1073]: H=(niagara.rg2q.com) [127.0.0.1] F=<admin@domain.com.ua> temporarily rejected RCPT <phobos@root.ua>: Could not complete sender verify
May  2 19:18:51 niagara imapd: LOGOUT, user=admin@domain.com.ua, ip=[127.0.0.1], headers=0, body=0, rcvd=10, sent=83, time=1
и что значит: lowest numbered MX record points to local host

понять не могу :(

Аватара пользователя
phobos
рядовой
Сообщения: 16
Зарегистрирован: 2009-04-04 10:49:23
Откуда: UA, Kyiv
Контактная информация:

Re: Переезд с PostFix на Exim

Непрочитанное сообщение phobos » 2009-05-02 20:03:00

Прошу удолить тема, по своей глупости покушал каши...
Не включил Активность нужного домена...

Всем спасибо за помощь...