Добрый день. Помогите пожалуйста разобраться с проблемой.
OS Centos. Стоит связка Postfix+dovecot+sasl+mysql.
При старте сервисов в логах ошибок нет.[root@host conf.d]# telnet localhost pop3
Trying ::1...
Connected to localhost.
Escape character is '^]'.
+OK Dovecot ready.[root@host conf.d]# telnet localhost 25
Trying ::1...
Connected to localhost.
Escape character is '^]'.
220 *******.ru ESMTP Postfix
ehlo localhost
250-******.ru
250-PIPELINING
250-SIZE 30720000
250-VRFY
250-ETRN
250-STARTTLS
250-AUTH PLAIN
250-AUTH=PLAIN
250-ENHANCEDSTATUSCODES
250-8BITMIME
250 DSN
[root@host conf.d]# telnet localhost 110
Trying ::1...
Connected to localhost.
Escape character is '^]'.
+OK Dovecot ready.
user info@*******.ru
+OK
pass password
+OK Logged in.[root@host conf.d]# telnet localhost 110
Trying ::1...
Connected to localhost.
Escape character is '^]'.
+OK Dovecot ready.
user info@*****.ru
+OK
pass password
+OK Logged in.
list
+OK 0 messages:
.Почта через сервер отправляется, но не принимается. Вернее принимается, но в /var/mail, а не в виртуальную среду /home/vmail/domain/user.
[Postfix cfg]
[root@nejtr0n dovecot]# postconf -n
alias_database = hash:/etc/aliases
alias_maps = hash:/etc/aliases
broken_sasl_auth_clients = yes
command_directory = /usr/sbin
config_directory = /etc/postfix
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
debug_peer_level = 2
html_directory = no
inet_interfaces = all
inet_protocols = all
mail_owner = postfix
mailq_path = /usr/bin/mailq.postfix
manpage_directory = /usr/share/man
message_size_limit = 30720000
mydestination = $myhostname, localhost.$mydomain, localhost
mynetworks = 127.0.0.0/8
newaliases_path = /usr/bin/newaliases.postfix
proxy_read_maps = $local_recipient_maps $mydestination $virtual_alias_maps $virtual_alias_domains $virtual_mailbox_maps $virtual_mailbox_domains $relay_recipient_maps $relay_domains $canonical_maps $sender_canonical_maps $recipient_canonical_maps $relocated_maps $transport_maps $mynetworks $virtual_mailbox_limit_maps
queue_directory = /var/spool/postfix
readme_directory = /usr/share/doc/postfix-2.6.6/README_FILES
sample_directory = /usr/share/doc/postfix-2.6.6/samples
sendmail_path = /usr/sbin/sendmail.postfix
setgid_group = postdrop
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_authenticated_header = yes
smtpd_sasl_path = private/auth
smtpd_sasl_type = dovecot
smtpd_tls_cert_file = /etc/postfix/smtpd.cert
smtpd_tls_key_file = /etc/postfix/smtpd.key
smtpd_use_tls = yes
unknown_local_recipient_reject_code = 550
virtual_alias_domains =
virtual_alias_maps = proxy:mysql:/etc/postfix/mysql-virtual_forwardings.cf, mysql:/etc/postfix/mysql-virtual_email2email.cf
virtual_gid_maps = static:5000
virtual_mailbox_base = /home/vmail
virtual_mailbox_domains = mysql:/etc/postfix/mysql-virtual_domains.cf
virtual_mailbox_maps = mysql:/etc/postfix/mysql-virtual_mailboxes.cf
virtual_transport = dovecot
virtual_uid_maps = static:5000[Dovecot config]
[root@nejtr0n dovecot]# dovecot -n
# 2.0.9: /etc/dovecot/dovecot.conf
# OS: Linux 2.6.32-042stab076.8 x86_64 CentOS release 6.4 (Final) simfs
log_timestamp = "%Y-%m-%d %H:%M:%S "
mail_gid = vmail
mail_location = maildir:/home/vmail/%d/%n/Maildir
mail_uid = vmail
mbox_write_locks = fcntl
namespace {
inbox = yes
location =
prefix = INBOX.
separator = .
type = private
}
passdb {
driver = pam
}
passdb {
args = /etc/dovecot/dovecot-sql.conf
driver = sql
}
protocols = imap pop3
service auth {
unix_listener /var/spool/postfix/private/auth {
group = postfix
mode = 0660
user = postfix
}
unix_listener auth-userdb {
group = vmail
mode = 0600
user = vmail
}
user = root
}
service imap-login {
inet_listener imap {
port = 143
}
}
service pop3-login {
inet_listener pop3 {
port = 110
}
}
ssl_cert = </etc/pki/dovecot/certs/dovecot.pem
ssl_key = </etc/pki/dovecot/private/dovecot.pem
userdb {
driver = passwd
}
userdb {
args = uid=5000 gid=5000 home=/home/vmail/%d/%n
driver = static
}
protocol lda {
auth_socket_path = /var/run/dovecot/auth-master
log_path = /home/vmail/dovecot-deliver.log
mail_plugins = sieve
postmaster_address = nejtr0n@nejtr0n.ru
}Понимаю, что затупаю где то...Но третий день никак разобраться не могу. С теми же настройками под Debian все работает. При отправке сообщения в логах:
[root@nejtr0n conf.d]# mailx info@*****.ru
Subject: asdasda
EOT
Null message body; hope that's ok[root@nejtr0n conf.d]# tail /var/maillog
Aug 29 08:31:09 nejtr0n postfix/pickup[3367]: D4359CA3DDC: uid=0 from=<root>
Aug 29 08:31:09 nejtr0n postfix/cleanup[3493]: D4359CA3DDC: message-id=<20130829123109.D4359CA3DDC@nejtr0n.ru>
Aug 29 08:31:09 nejtr0n postfix/qmgr[3368]: D4359CA3DDC: from=<root@host.ru>, size=421, nrcpt=1 (queue active)
Aug 29 08:31:09 nejtr0n postfix/local[3499]: D4359CA3DDC: to=<root@host.ru>, orig_to=<info@host.ru>, relay=local, delay=0.2, delays=0.12/0.07/0/0.01, dsn=2.0.0, status=sent (delivered to mailbox)
Aug 29 08:31:09 nejtr0n postfix/qmgr[3368]: D4359CA3DDC: removed
You have new mail in /var/spool/mail/rootТо есть relay=local, а не dovecot.
Помогите пожалуйста разобраться!
> Добрый день. Помогите пожалуйста разобраться с проблемой.
> OS Centos. Стоит связка Postfix+dovecot+sasl+mysql.
> При старте сервисов в логах ошибок нет.
> То есть relay=local, а не dovecot.
> Помогите пожалуйста разобраться!я не супер спец но недавно как раз занимался таким же головником, лог довекота выложите включив предварительно дебагеры.
mail_debug = yes
auth_verbose = yes
auth_debug = yes
auth_debug_passwords = yes
>[оверквотинг удален]
>> OS Centos. Стоит связка Postfix+dovecot+sasl+mysql.
>> При старте сервисов в логах ошибок нет.
>> То есть relay=local, а не dovecot.
>> Помогите пожалуйста разобраться!
> я не супер спец но недавно как раз занимался таким же головником,
> лог довекота выложите включив предварительно дебагеры.
> mail_debug = yes
> auth_verbose = yes
> auth_debug = yes
> auth_debug_passwords = yesКак всегда - стоит только попросить о помощи, проблема сразу решается!=)
В общем проблема была в том, что домен был прописан в /etc/hosts, а не в mysql.
Соответственно и доставлял он через local, а не через dovecot.
/etc/postfix/main.cf
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
заменяем на
mydestination = localhost.$mydomain, localhost, $mydomain
А в таблицу добавляем свой домен. В итоге все заработало.
Спасибо за быстрый отклик)