LINUX.ORG.RU
решено ФорумAdmin

Postfix+Dovecot - проблема с авторизацией

 ,


0

1

Всем привет. Решил настроить почту (Postfix+Dovecot) на серваке с CentOS 6.4. Перерыл кучу конфигов и тем. Что имеется на данный момент - порты в фаерволе открыты и nmap их видит (локально и удаленно), телнетом и удаленно и локально могу подцепиться на 25, 110, 143 порт без проблем + с пользователем, который был заведен изначально могу залогиниться. Но вот дальше засада: клиент (Thunderbird, Bat) создает новый ящик с логином и паролем, для пользователя, который был создан на серве (создавался при помощи Virtualmin) и никакой ругни не происходит. При попытке создать сообщение с этого ящика, получаю сообщение в Thunderbird о том, что не удалось соединиться с SMTP-сервером, Bat также ругается, правда сообщение несколько иное, да и думаю не столь важно... /var/log/mail.log - чист как слеза, хотя дебаг с конфиге включен, а логе довкота только записи о старте/остановке и еще мелкая ругня на SSL. Конфиги для Postfix: main.cf

soft_bounce = no
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
default_privs = nobody
inet_interfaces = 10.185.8.48 (мой внутренний ИП, если его не указать - nmap удаленно пишет, что 25 порт закрыт)
inet_protocols = ipv4
unknown_local_recipient_reject_code = 550
relay_domains = $mydestination
#alias_maps = dbm:/etc/aliases
#alias_maps = hash:/etc/aliases
alias_maps = hash:/etc/aliases
#,hash:/home/sympa/etc/sympa_aliases
#alias_maps = hash:/etc/aliases, nis:mail.aliases
#alias_maps = netinfo:/aliases
#alias_database = dbm:/etc/aliases
#alias_database = dbm:/etc/mail/aliases
alias_database = hash:/etc/aliases
#alias_database = hash:/etc/aliases, hash:/opt/majordomo/aliases
recipient_delimiter = +
debug_peer_level = 2
debugger_command =
         PATH=/bin:/usr/bin:/usr/local/bin;
                  (truss -p $process_id 2>&1 | logger -p mail.info) & sleep 5
sendmail_path = /usr/sbin/sendmail.postfix
newaliases_path = /usr/bin/newaliases.postfix
mailq_path = /usr/bin/mailq.postfix
setgid_group = postdrop
html_directory = no
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/postfix-2.3.3/samples
mail_owner = postfix
setgid_group = postdrop
virtual_transport = dovecot
##
readme_directory = /usr/share/doc/postfix-2.3.3/README_FILES
smtpd_sasl_local_domain = 
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
broken_sasl_auth_clients = yes
smtpd_sasl_authenticated_header = yes
smtpd_recipient_restrictions = permit_sasl_authenticated
	permit_mynetworks
	reject_unauth_destination
	сheck_policy_service unix:/var/spool/postfix/postgrey/socket
smtpd_tls_auth_only = no
smtp_use_tls = yes
smtpd_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
tls_random_source = dev:/dev/urandom
home_mailbox = Maildir/
mailbox_command = /usr/bin/procmail-wrapper -o -a $DOMAIN -d $LOGNAME
virtual_alias_maps = hash:/etc/postfix/virtual
sender_bcc_maps = hash:/etc/postfix/bcc
myhostname = cosmicdot.com
message_size_limit = 30240000
## Extra sympa config, other config settings:-
# alias_maps, relay_domains, recipient_delimiter
# have also been adjusted
sympa_destination_recipient_limit = 1
sympabounce_destination_recipient_limit = 1
transport_maps = regexp:/home/sympa/etc/transport_regexp hash:/etc/postfix/transport
master.cf
#
# Postfix master process configuration file.  For details on the format
# of the file, see the master(5) manual page (command: "man 5 master").
#
# ==========================================================================
# service type  private unpriv  chroot  wakeup  maxproc command + args
#               (yes)   (yes)   (yes)   (never) (100)
# ==========================================================================
smtp      inet  n       -       n       -       -       smtpd -v
587       inet  n       -       n       -       -       smtpd -v
#submission inet n       -       n       -       -       smtpd
#  -o smtpd_enforce_tls=yes
#  -o smtpd_sasl_auth_enable=yes
#  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#smtps     inet  n       -       n       -       -       smtpd
#  -o smtpd_tls_wrappermode=yes
#  -o smtpd_sasl_auth_enable=yes
#  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#628      inet  n       -       n       -       -       qmqpd
pickup    fifo  n       -       n       60      1       pickup
cleanup   unix  n       -       n       -       0       cleanup
qmgr      fifo  n       -       n       300     1       qmgr
#qmgr     fifo  n       -       n       300     1       oqmgr
tlsmgr    unix  -       -       n       1000?   1       tlsmgr
rewrite   unix  -       -       n       -       -       trivial-rewrite
bounce    unix  -       -       n       -       0       bounce
defer     unix  -       -       n       -       0       bounce
trace     unix  -       -       n       -       0       bounce
verify    unix  -       -       n       -       1       verify
flush     unix  n       -       n       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
smtp      unix  -       -       n       -       -       smtp
# When relaying mail as backup MX, disable fallback_relay to avoid MX loops
relay     unix  -       -       n       -       -       smtp
	-o fallback_relay=
#       -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq     unix  n       -       n       -       -       showq
error     unix  -       -       n       -       -       error
discard   unix  -       -       n       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       n       -       -       lmtp
anvil     unix  -       -       n       -       1       anvil
scache	  unix	-	-	n	-	1	scache
#
# ====================================================================
# Interfaces to non-Postfix software. Be sure to examine the manual
# pages of the non-Postfix software to find out what options it wants.
#
# Many of the following services use the Postfix pipe(8) delivery
# agent.  See the pipe(8) man page for information about ${recipient}
# and other message envelope options.
# ====================================================================
#
# maildrop. See the Postfix MAILDROP_README file for details.
# Also specify in main.cf: maildrop_destination_recipient_limit=1
#
maildrop  unix  -       n       n       -       -       pipe
  flags=DRhu user=vmail argv=/usr/local/bin/maildrop -d ${recipient}
#
# The Cyrus deliver program has changed incompatibly, multiple times.
#
old-cyrus unix  -       n       n       -       -       pipe
  flags=R user=cyrus argv=/usr/lib/cyrus-imapd/deliver -e -m ${extension} ${user}
# Cyrus 2.1.5 (Amos Gouaux)
# Also specify in main.cf: cyrus_destination_recipient_limit=1
cyrus     unix  -       n       n       -       -       pipe
  user=cyrus argv=/usr/lib/cyrus-imapd/deliver -e -r ${sender} -m ${extension} ${user}
#
# See the Postfix UUCP_README file for configuration details.
#
uucp      unix  -       n       n       -       -       pipe
  flags=Fqhu user=uucp argv=uux -r -n -z -a$sender - $nexthop!rmail ($recipient)
#
# Other external delivery methods.
#
ifmail    unix  -       n       n       -       -       pipe
  flags=F user=ftn argv=/usr/lib/ifmail/ifmail -r $nexthop ($recipient)
bsmtp     unix  -       n       n       -       -       pipe
  flags=Fq. user=foo argv=/usr/local/sbin/bsmtp -f $sender $nexthop $recipient

### Added for sympa
sympa   unix    -       n       n       -       -       pipe
  flags=R user=sympa argv=/home/sympa/bin/queue ${recipient}
sympabounce     unix    -       n       n       -       -       pipe
  flags=R user=sympa argv=/home/sympa/bin/bouncequeue ${recipient}
dovecot unix     -       n       n       -       -       pipe
  flags=DRhu user=vmail:vmail argv=/usr/libexec/dovecot/deliver -d $(recipient)
Мож кто сталкивался с такой бедой? Как его побороть?

в конфигах полная хрень

inet_interfaces = all

доверенные узлы опишите

mynetworks = 127.0.0.0/8 192.168.1.0/24

sasl включен и не настроен

vxzvxz ★★★
()
Ответ на: комментарий от alex_nikonov

если по telnet есть соединение и можно отправить письмо, то почему

/var/log/mail.log - чист как слеза

vxzvxz ★★★
()
Ответ на: комментарий от vxzvxz

inet_interfaces = all - при таком параметре - nmap удаленно пишет, что 25 порт закрыт

sasl включен и не настроен - а можно ссыль для примера или мож у Вас есть кусок конфига?

alex_nikonov
() автор топика
Ответ на: комментарий от vxzvxz

После переделки конфига - также... Thunderbird: Ошибка отправления сообщения. Сообщение не может быть отправлено, так как соединение с SMTP-сервером «mail.xxx.com» было утеряно в середине транзакции. Попробуйте снова или свяжитесь с администратором сети. И еще - telnet mail.xxx.com 25 стопорится на:

telnet mail.xxx.com 25
Trying 1.2.3.4...
Connected to mail.xxx.com.
Escape character is '^]'.

alex_nikonov
() автор топика
Ответ на: комментарий от vxzvxz

Но подключиться телнетом на 110 и 143 порт все еще можно... :)

alex_nikonov
() автор топика
Ответ на: комментарий от vxzvxz

telnet 127.0.0.1 25 Trying 127.0.0.1... Connected to 127.0.0.1. Escape character is '^]'. 220 ns1.cosmicdot.com ESMTP Sendmail 8.14.4/8.14.4; Sat, 12 Apr 2014 18:59:17 GMT ehlo mail.xxx.com 250-ns1.cosmicdot.com Hello localhost [127.0.0.1], pleased to meet you 250-ENHANCEDSTATUSCODES 250-PIPELINING 250-8BITMIME 250-SIZE 250-DSN 250-ETRN 250-AUTH GSSAPI DIGEST-MD5 CRAM-MD5 250-DELIVERBY 250 HELP

alex_nikonov
() автор топика
Ответ на: комментарий от alex_nikonov

А что у вас сендмаил на 25 порту делает

Sendmail 8.14.4/8.14.4

vxzvxz ★★★
()
Ответ на: комментарий от alex_nikonov

Команда которая меняет MTA по умолчанию:

alternatives --config mta 
Выберите Postfix. Ну и уберите с автозапуска sendmail:
chkconfig sendmail off

Мануалов в Интере полно, странно что у вас он не зовелся

AlfaStriker
()
Ответ на: комментарий от AlfaStriker

Согласен - мануалов уйма... Теперь ситуация вообще «ужасная» - сначала через телнет на локалхост проверял отправку - о чудо! все работало - с обоих ящиков, которые я завел для сайта, почта уходила по назначению, правда сразу попадала в «BulkMail» - но мне это сейчас не важно. После - сохранил настройки в резерв.... и началось... сначала «отвалился» телнет - подправил и снова начал коннектиться, а теперь коннект проходит, авторизация тоже, но после ввода:

MAIL FROM: root@cosmicdot.com
сообщения о том, что
250 2.1.0 root@cosmicdot.com... Sender ok
Я уже не получаю - ни локально, ни удаленно... Конфиг «перекрутил» до такого состояния:
soft_bounce = no
queue_directory = /var/spool/postfix
command_directory = /usr/sbin
daemon_directory = /usr/libexec/postfix
data_directory = /var/lib/postfix
mail_owner = postfix
#default_privs = nobody
myhostname = ns1.cosmicdot.com
mydomain = cosmicdot.com
myorigin = $mydomain
inet_interfaces = localhost
inet_protocols = ipv4
mydestination = $myhostname, localhost.$mydomain, localhost, $mydomain
unknown_local_recipient_reject_code = 550
alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
recipient_delimiter = +
smtpd_banner = $myhostname ESMTP $mail_name ($mail_version)
debug_peer_level = 2
debugger_command =
	PATH=/bin:/usr/bin:/usr/local/bin; export PATH; (echo cont;
	echo where) | gdb $daemon_directory/$process_name $process_id 2>&1
	>$config_directory/$process_name.$process_id.log & sleep 5
sendmail_path = /usr/sbin/sendmail.postfix
newaliases_path = /usr/bin/newaliases.postfix
mailq_path = /usr/bin/mailq.postfix
setgid_group = postdrop
html_directory = no
manpage_directory = /usr/share/man
sample_directory = /usr/share/doc/postfix-2.6.6/samples
readme_directory = /usr/share/doc/postfix-2.6.6/README_FILES
###
smtpd_sasl_type = dovecot
smtpd_sasl_auth_enable = yes
smtpd_sasl_path = private/auth
smtpd_sasl_security_options = noanonymous
smtpd_recipient_restrictions =  permit_mynetworks,  permit_sasl_authenticated, reject_unauth_destination
smtpd_tls_auth_only = no
smtp_use_tls = yes
smtpd_use_tls = yes
smtp_tls_note_starttls_offer = yes
smtpd_tls_key_file = /etc/postfix/ssl/smtpd.key
smtpd_tls_cert_file = /etc/postfix/ssl/smtpd.crt
smtpd_tls_CAfile = /etc/postfix/ssl/cacert.pem
smtpd_tls_loglevel = 1
smtpd_tls_received_header = yes
smtpd_tls_session_cache_timeout = 3600s
smtpd_helo_required = yes
tls_random_source = dev:/dev/urandom
home_mailbox = Maildir/
mailbox_command = /usr/bin/procmail-wrapper -o -a $DOMAIN -d $LOGNAME
virtual_alias_maps = hash:/etc/postfix/virtual
sender_bcc_maps = hash:/etc/postfix/bcc
message_size_limit = 30240000
transport_maps = hash:/etc/postfix/transport
Где ж я туплю?

alex_nikonov
() автор топика
Ответ на: комментарий от AlfaStriker

Я бы с радостью - но /var/log/maillog - чист и не заполняется... Даже при условии, что сносил и устанавливал софт (привычка от Windows-пользования :) ). Даже пытался «ковырять» rsyslog - результата 0... Я просто в панике!!!

alex_nikonov
() автор топика
Ответ на: комментарий от alex_nikonov

Странно у вас работает все), а тоже виндовс админ, но у меня заработало. В postfix чтобы работало логирование, добавляют строчки в main.cf:

debug_peer_level = 2
debug_peer_list = 127.0.0.1
debugger_command = 
    PATH=/bin:/usr/bin:/usr/local/bin:/usr/X11R6/bin
    xxgdb $daemon_directory/$process_name $process_id & sleep 5

В Dovecot надо включить (dovecot.conf):

auth_debug = yes
И там иногда указывают в какой файл будут сыпатся логи:
log_path = /var/log/dovecot.log 

AlfaStriker
()
Ответ на: комментарий от AlfaStriker

часть содержимого лог-файла:

Apr 14 19:40:04 master: Warning: Killed with signal 15 (by pid=8035 uid=0 code=kill)
Apr 14 19:40:05 master: Info: Dovecot v2.0.9 starting up (core dumps disabled)
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x10, ret=1: before/accept initialization [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2001, ret=1: before/accept initialization [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2002, ret=-1: SSLv2/v3 read client hello A [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2001, ret=1: SSLv3 read client hello A [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2001, ret=1: SSLv3 write server hello A [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2001, ret=1: SSLv3 write certificate A [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2001, ret=1: SSLv3 write key exchange A [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2001, ret=1: SSLv3 write server done A [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2001, ret=1: SSLv3 flush data [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2002, ret=-1: SSLv3 read client certificate A [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2002, ret=-1: SSLv3 read client certificate A [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2001, ret=1: SSLv3 read client key exchange A [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2001, ret=1: SSLv3 read finished A [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2001, ret=1: SSLv3 write session ticket A [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2001, ret=1: SSLv3 write change cipher spec A [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2001, ret=1: SSLv3 write finished A [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2001, ret=1: SSLv3 flush data [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x20, ret=1: SSL negotiation finished successfully [46.201.63.178]
Apr 14 19:40:59 pop3-login: Warning: SSL: where=0x2002, ret=1: SSL negotiation finished successfully [46.201.63.178]
Apr 14 19:41:00 pop3-login: Info: Login: user=<test.whymen>, method=PLAIN, rip=46.201.63.178, lip=10.185.8.48, mpid=8110, TLS
Apr 14 19:41:00 pop3(test.whymen): Debug: Effective uid=604, gid=502, home=/mnt/v2/whymen/homes/test
Apr 14 19:41:00 pop3(test.whymen): Debug: maildir: root exists (/mnt/v2/whymen/homes/test/Maildir)
Apr 14 19:41:00 pop3(test.whymen): Debug: maildir++: root=/mnt/v2/whymen/homes/test/Maildir, index=, control=, inbox=/mnt/v2/whymen/homes/test/Maildir
Apr 14 19:41:00 pop3(test.whymen): Info: Disconnected: Logged out top=0/0, retr=0/0, del=0/0, size=0
Maillog - все еще чист.... даже после всех попыток что-то подкрутить...

alex_nikonov
() автор топика
Ответ на: комментарий от AlfaStriker

Спасибо огромное! Не скажу, что предложенные конфиги мне подошли. НО по-крайней мере - натолкнули на мысль... Справился - РАБОТАЕТ!!!

alex_nikonov
() автор топика
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.