URL: https://www.opennet.me/cgi-bin/openforum/vsluhboard.cgi
Форум: vsluhforumID1
Нить номер: 64784
[ Назад ]

Исходное сообщение
"Exim 4.60 -> MySQL : mysqluser router: Беда ..."

Отправлено TrebleReel , 14-Мрт-06 16:32 
Вот такая беда: Скрещиваю exim 4.60 и MySQL4.1, еxim компилен ессно с поддержкой mysql, база есть и пашет. При запуске вылетает 006-03-14 16:30:52 Exim configuration error:
                                                                             mysqluser router:
                                                                             a transport is required for this router
Что делать? Как побороть ?

ps

www# /usr/sbin/exim -bV
Exim version 4.60 #1 built 14-Mar-2006 14:46:38
Copyright (c) University of Cambridge 2005
Probably Berkeley DB version 1.8x (native mode)
Support for: crypteq iconv() Perl OpenSSL move_frozen_messages Content_Scanning Old_Demime
Lookups: mysql
Authenticators: cram_md5 plaintext
Routers: accept dnslookup ipliteral manualroute queryprogram redirect
Transports: appendfile/maildir autoreply pipe smtp

primary_hostname = www.ru

# ,    

domainlist local_domains = ${lookup mysql{SELECT domain FROM domains WHERE domain='${domain}' AND (type='LOCAL' O
R type='VIRTUAL')}}

# ,      

domainlist relay_to_domains = ${lookup mysql{SELECT domain FROM domains WHERE domain='${domain}' AND type='RELAY'
}}

#    

hostlist   relay_from_hosts = 127.0.0.1
av_scanner = clamd:127.0.0.1 3310

#    

acl_smtp_rcpt = acl_check_rcpt
acl_smtp_data = acl_check_virus

qualify_domain = xxx.ru

auth_advertise_hosts = *

daemon_smtp_ports = 25 : 465
tls_on_connect_ports = 465
tls_advertise_hosts = *
tls_certificate = /etc/mail/ssl/mail.pem
tls_privatekey = /etc/mail/ssl/mail.pem

#    

log_selector = \
    +all_parents \
    +lost_incoming_connection \
    +received_sender \
    +received_recipients \
    +smtp_confirmation \
    +smtp_syntax_error \
    +smtp_protocol_error \
    -queue_run

allow_domain_literals = false

#        

never_users = root:daemon      

host_lookup = *
rfc1413_hosts = *
rfc1413_query_timeout = 0s
ignore_bounce_errors_after = 30m
timeout_frozen_after = 3d
freeze_tell = postmaster
auto_thaw = 1h
message_size_limit = 10M
smtp_accept_max = 50
smtp_accept_max_per_connection = 50
smtp_connect_backlog = 50
smtp_accept_max_per_host = 25
split_spool_directory = true
remote_max_parallel = 15

#   MySQL

hide mysql_servers = localhost/mail/exim/xxxxx
#  

begin acl
    acl_check_rcpt:
    deny    local_parts   = ^.*[@%!/|] : ^\\.
    accept  local_parts   = postmaster
            domains       = +local_domains

    require verify        = sender
  deny    message       = HELO/EHLO required by SMTP RFC
            condition     = ${if eq{$sender_helo_name}{}{yes}{no}}

    deny    message       = Go Away! You are spammer.
            condition     = ${if match{$sender_host_name}{bezeqint\\.net|net\\.il|dialup|dsl|pool|peer|dhcp}{yes}
{no}}

    deny    message       = host is listed in $dnslist_domain
            dnslists      = sbl.spamhaus.org : \
                            relays.ordb.org : \
                            opm.blitzed.org : \
                            proxies.blackholes.easynet.nl
    
    accept  domains       = +local_domains
            endpass
            message       = unknown user
            verify        = recipient
            
    accept  domains       = +relay_to_domains
            endpass
            message       = unrouteable address
            verify        = recipient
    
    accept  hosts         = +relay_from_hosts
    accept  authenticated = *
    deny    message       = relay not permitted
acl_check_virus:

    deny   message        = Messege rejected: Virus $malware_name) Found. Your message was successfully trashed.
           malware        = *
    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 recipients FROM aliases WHERE local_part='${local_part}' AND domain='${domai
n}'}}
    
    userforward:
        driver = redirect
allow_fail
        allow_defer
        data = ${lookup mysql{SELECT recipients FROM userforward WHERE local_part='${local_part}' AND domain='${d
omain}'}}

    mysqluser:
        driver = accept
        condition = ${if eq{} {${lookup mysql{SELECT home FROM users WHERE id='${local_part}' AND mbox_host='${do
main}' AND active='Y'}}}{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(home, "/Maildir") FROM users WHERE id='${local_part}' AND mbox_host=
'${domain}'}}
    directory_mode = 770
    envelope_to_add
    group = mail
    maildir_format
    maildir_tag = ,S=$message_size
message_prefix = ""
    message_suffix = ""
    mode = 0600
    quota = ${lookup mysql{SELECT quota FROM users WHERE id='${local_part}' AND mbox_host='${domain}'}{${value}M}
}
    quota_size_regex = S=(\d+)$
    quota_warn_threshold = 95%
    return_path_add

address_pipe:
    driver = pipe
    return_output

address_file:
    driver = appendfile
    delivery_date_add
    envelope_to_add
    return_path_add

address_reply:
    driver = autoreply

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

begin rewrite
begin authenticators

#  - Plain

auth_plain:
    driver = plaintext
    public_name = PLAIN
    server_condition = ${lookup mysql{SELECT id FROM users WHERE id = '${quote_mysql:${local_part:$2}}' AND mbox_
host = '${quote_mysql:${domain:$2}}' AND passwd = '${quote_mysql:$3}' AND active = 'Y'}{yes}{no}}
    server_prompts = :
    server_set_id = $2

#  - Login

auth_login:
    driver = plaintext
    public_name = LOGIN
    server_condition = ${lookup mysql{SELECT id FROM users WHERE id = '${quote_mysql:${local_part:$1}}' AND mbox_
host = '${quote_mysql:${domain:$1}}' AND passwd = '${quote_mysql:$2}' AND active = 'Y'}{yes}{no}}
    server_prompts = Username:: : Password::
    server_set_id = $1

# - Cram-MD5

auth_cram_md5:
    driver = cram_md5
public_name = CRAM-MD5
    server_secret = ${lookup mysql{SELECT passwd FROM users WHERE id = '${quote_mysql:${local_part:$1}}' AND mbox
_host = '${quote_mysql:${domain:$1}}' AND active = 'Y'}{$value}fail}
   server_set_id = $1


Содержание

Сообщения в этом обсуждении
"Exim 4.60 -> MySQL : mysqluser router: Беда ..."
Отправлено TrebleReel , 14-Мрт-06 17:31 
ВОПРОС снимается, мой косяк

"Exim 4.60 -> MySQL : mysqluser router: Беда ..."
Отправлено FireWall , 24-Мрт-06 12:37 
>ВОПРОС снимается, мой косяк


а в чем косяк не подскажете? а то у меня такая же беда...


"Exim 4.60 -> MySQL : mysqluser router: Беда ..."
Отправлено TrebleReel , 26-Мрт-06 23:14 
косяк в том, что это из журнала Администратор, там опечатка, нету переноса строки в:

mysqluser:
        driver = accept
        condition = ${if eq{} {${lookup mysql{SELECT home FROM users WHERE id='${local_part}' AND mbox_host='${do
main}' AND active='Y'}}}{no}{yes}}transport = mysql_delivery

сделай:
mysqluser:
        driver = accept
        condition = ${if eq{} {${lookup mysql{SELECT home FROM users WHERE id='${local_part}' AND mbox_host='${do
main}' AND active='Y'}}}{no}{yes}}

transport = mysql_delivery