Форум русскоязычного сообщества Ubuntu


Получить помощь и пообщаться с другими пользователями Ubuntu можно
на irc канале #ubuntu-ru в сети Freenode
и в Jabber конференции ubuntu@conference.jabber.ru

Автор Тема: РЕШЕНО: Ubuntu 8.04 + Ebox + Postfix - не уходит почта на внешние адреса  (Прочитано 8245 раз)

0 Пользователей и 1 Гость просматривают эту тему.

Оффлайн igorpol3

  • Автор темы
  • Новичок
  • *
  • Сообщений: 20
    • Просмотр профиля
Всем доброго дня!
Народ, имеется такая проблема: установлен сервер ubuntu 8.04 во внутренней сети (адрес 192.168.0.22) и Ebox поверх него. Под Ebox настроена почтовый сервер и с локальным почтовым доменом mailserv.domain01. Почта извне  пересылается через другой локальный почтовый сервер, приходит нормально, но вот отправлять во внешнюю сеть не желает категорически. При попытке отправить сообщение вовне, получаю сообщение "Ошибка отправки почты. Почтовый сервер ответил: 5.7.1 <igorpol3@rambler.ru> Relay access denied": 

Прошу помощи.

Вот кусок из mail.log:

Jan 19 11:11:45 ubuntu-domain01 couriertcpd: Connection, ip=[::ffff:192.168.0.225]
Jan 19 11:11:45 ubuntu-domain01 couriertcpd: LOGIN, user=igorpol3@mailserv.domain01, ip=[::ffff:192.168.0.225], port=[35361]
Jan 19 11:11:45 ubuntu-domain01 couriertcpd: LOGOUT, user=igorpol3@mailserv.domain01, ip=[::ffff:192.168.0.225], port=[35361], top=0, retr=0, rcvd=12, sent=39, time=0
Jan 19 11:11:57 ubuntu-domain01 postfix/smtpd[27240]: connect from unknown[192.168.0.225]
Jan 19 11:11:58 ubuntu-domain01 postfix/smtpd[27240]: setting up TLS connection from unknown[192.168.0.225]
Jan 19 11:12:07 ubuntu-domain01 postfix/smtpd[27240]: Anonymous TLS connection established from unknown[192.168.0.225]: TLSv1 with cipher DHE-RSA-AES256-SHA (256/256 bits)
Jan 19 11:12:07 ubuntu-domain01 postfix/smtpd[27240]: NOQUEUE: reject: RCPT from unknown[192.168.0.225]: 554 5.7.1 <igorpol3@rambler.ru>: Relay access denied; from=<igorpol3@karavay.krasnoyarsk.ru> to=<igorpol3@rambler.ru> proto=ESMTP helo=<[192.168.0.225]>
Jan 19 11:12:11 ubuntu-domain01 postfix/smtpd[27240]: disconnect from unknown[192.168.0.225]

===
Это мой /etc/postfix/main.cf:
===

# Generated by eBox

# require helo
smtpd_delay_reject  = yes
smtpd_helo_required = yes


smtpd_banner = eBox ESMTP
biff = no

append_dot_mydomain = no

myhostname = ubuntu-domain01

alias_maps = hash:/etc/aliases
alias_database = hash:/etc/aliases
mydestination = localhost.localdomain, localhost
relayhost =
mynetworks = 127.0.0.0/8
message_size_limit = 3145728
mailbox_size_limit = 0
virtual_mailbox_limit = 0
recipient_delimiter = +
inet_interfaces = all

# Virtual Aliases
virtual_alias_maps = ldap:valiases
valiases_server_host = ldap://127.0.0.1
valiases_search_base = ou=mailalias, ou=postfix, dc=ebox
valiases_query_filter = (&(mail=%s)(objectClass=CourierMailAlias))
valiases_result_attribute = maildrop
valiases_bind = no

# Virtual Domains
virtual_transport = virtual
virtual_mailbox_base = /var/vmail/
virtual_mailbox_maps= ldap:ldapvirtualmap

ldapvirtualmap_server_host = ldap://127.0.0.1
ldapvirtualmap_bind = no
ldapvirtualmap_search_base = ou=Users,dc=ebox
ldapvirtualmap_query_filter = (&(mail=%s)(!(quota=-1))(objectClass=CourierMailAccount))
ldapvirtualmap_result_attribute = mailbox

#virtual_mailbox_domains = $virtual_mailbox_maps hash:/etc/postfix/vmaildomains
virtual_mailbox_domains = ldap:vmaildomains
vmaildomains_server_host = ldap://127.0.0.1
vmaildomains_bind = no
vmaildomains_search_base = ou=vdomains, ou=postfix, dc=ebox
vmaildomains_query_filter = (domainComponent=%s)
vmaildomains_result_attribute = dc

virtual_minimum_uid = 100
virtual_uid_maps = static:121
virtual_gid_maps = static:134
mailbox_transport = virtual
virtual_mailbox_limit_inbox = yes
virtual_mailbox_limit_maps = ldap:ldapvquota

ldapvquota_server_host = ldap://127.0.0.1
ldapvquota_bind = no
ldapvquota_search_base = ou=Users,dc=ebox
ldapvquota_query_filter = (&(mail=%s)(objectClass=usereboxmail))
ldapvquota_result_attribute = userMaildirSize

virtual_mailbox_limit_override = yes
virtual_maildir_extended = yes
virtual_create_maildirsize = yes

## TLS/SSL
smtpd_use_tls = yes
smtpd_tls_note_starttls = yes
smtpd_tls_key_file = /etc/postfix/sasl/smtpd-key.pem
smtpd_tls_cert_file = /etc/postfix/sasl/smtpd.pem
smtpd_tls_loglevel = 1


Это /etc/postfix/master.cf:
# Generated by eBox
#
# 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       -       -       -       -       smtpd
  -o content_filter=spamfltr:dummy
 
spamfltr  unix  -       n       n       -       -       pipe
    user=spamd argv=/usr/bin/spamc -e /usr/sbin/sendmail -oi -f ${sender} ${recipient}

#submission inet n       -       -       -       -       smtpd
#  -o smtpd_enforce_tls=yes
#  -o smtpd_sasl_auth_enable=yes
#  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#smtps     inet  n       -       -       -       -       smtpd
#  -o smtpd_tls_wrappermode=yes
#  -o smtpd_sasl_auth_enable=yes
#  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
#628      inet  n       -       -       -       -       qmqpd
pickup    fifo  n       -       -       60      1       pickup
cleanup   unix  n       -       -       -       0       cleanup
qmgr      fifo  n       -       n       300     1       qmgr
#qmgr     fifo  n       -       -       300     1       oqmgr

tlsmgr    unix  -       -       -       1000?   1       tlsmgr
smtps     inet  n       -       -       -       -       smtpd
  -o smtpd_tls_wrappermode=yes
  -o smtpd_sasl_auth_enable=yes
  -o smtpd_client_restrictions=permit_sasl_authenticated,reject
rewrite   unix  -       -       -       -       -       trivial-rewrite
bounce    unix  -       -       -       -       0       bounce
defer     unix  -       -       -       -       0       bounce
trace     unix  -       -       -       -       0       bounce
verify    unix  -       -       -       -       1       verify
flush     unix  n       -       -       1000?   0       flush
proxymap  unix  -       -       n       -       -       proxymap
smtp      unix  -       -       -       -       -       smtp
# When relaying mail as backup MX, disable fallback_relay to avoid MX loops
relay     unix  -       -       -       -       -       smtp
   -o smtp_fallback_relay=
#       -o smtp_helo_timeout=5 -o smtp_connect_timeout=5
showq     unix  n       -       -       -       -       showq
error     unix  -       -       -       -       -       error
retry     unix  -       -       -       -       -       error
discard   unix  -       -       -       -       -       discard
local     unix  -       n       n       -       -       local
virtual   unix  -       n       n       -       -       virtual
lmtp      unix  -       -       -       -       -       lmtp
anvil     unix  -       -       -       -       1       anvil
scache     unix   -   -   -   -   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/bin/maildrop -d ${recipient}
#
# 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=bsmtp argv=/usr/lib/bsmtp/bsmtp -t$nexthop -f$sender $recipient
scalemail-backend unix   -   n   n   -   2   pipe
  flags=R user=scalemail argv=/usr/lib/scalemail/bin/scalemail-store ${nexthop} ${user} ${extension}
mailman   unix  -       n       n       -       -       pipe
  flags=FR user=list argv=/usr/lib/mailman/bin/postfix-to-mailman.py
  ${nexthop} ${user}

===
« Последнее редактирование: 19 Январь 2009, 10:33:52 от igorpol3 »

Оффлайн uid0

  • Активист
  • *
  • Сообщений: 371
    • Просмотр профиля
    • hitetra.ru
Почта извне  пересылается через другой локальный почтовый сервер
Как я понимаю почта должна и уходить через него ? Или с компа, с которого вы предоставили конфиг ?
Be root, be different...

Оффлайн igorpol3

  • Автор темы
  • Новичок
  • *
  • Сообщений: 20
    • Просмотр профиля
Почта извне  пересылается через другой локальный почтовый сервер
Как я понимаю почта должна и уходить через него ? Или с компа, с которого вы предоставили конфиг ?

Нет, почта должна уходить именно с нового почтового сервера. Т.е. с того, откуда конфиг. Пересылка входящей почты с другого сервера -- временное решение, на время отладки нового сервера.

Оффлайн uid0

  • Активист
  • *
  • Сообщений: 371
    • Просмотр профиля
    • hitetra.ru
Можно взглянуть на конфиги рабочего сервера ? Вообще ошибка Relay access denied... По моему myhostname = ubuntu-domain01 должен быть указан домен, на который у Вас приходит почта !
Be root, be different...

Оффлайн igorpol3

  • Автор темы
  • Новичок
  • *
  • Сообщений: 20
    • Просмотр профиля
Можно взглянуть на конфиги рабочего сервера ? Вообще ошибка Relay access denied... По моему myhostname = ubuntu-domain01 должен быть указан домен, на который у Вас приходит почта !

На старом сервере параметр "myhostname" вообще закомментарен. И вообще -- брать за основу старую конфигурацию не могу. Во-первых, тот сервер поднят под старой Федорой, еще на ядре 2.4. Во-вторых, настроен вручную. Здесь же настройка идет через Ebox с использованием LDAP.

Оффлайн chain

  • Старожил
  • *
  • Сообщений: 1263
    • Просмотр профиля
посмотри внимательно на что ругается
на клиента из подсети 192.168.0...
а чтобы система не стала open relay, и спамеры не смогли использовать ее для пересылки почты, сервера разрешают доступ тем сетям, которые явно указаны
у тебя явно указана
mynetworks = 127.0.0.0/8
Цитировать
The mynetworks parameter lists all networks that this machine somehow trusts. This information can be used by the  anti-UCE features to recognize trusted SMTP clients that are allowed to relay mail through Postfix.

You can specify the list of trusted networks in the main.cf file, or you can let Postfix deduce the list for you.
попробуй еще одну подсеть в доверенные добавить
mynetworks = 192.168.0.0/24, 127.0.0.0/8
-вечный чайник-

Оффлайн igorpol3

  • Автор темы
  • Новичок
  • *
  • Сообщений: 20
    • Просмотр профиля
Отлично, благодарю! После добавления своей подсети в список разрешенных все заработало. Дело, как обычно, в невнимательности :)

Закрываю тему...

Оффлайн Lion-Simba

  • Старожил
  • *
  • Сообщений: 1126
    • Просмотр профиля
попробуй еще одну подсеть в доверенные добавить
mynetworks = 192.168.0.0/24, 127.0.0.0/8
Именно. Либо нужно пользователей аутентифицировать при попытке что-то передать по smtp.

Сейчас, когда у вас подсеть в списке доверенных, с неё могут слать что угодно кто угодно и куда угодно. И при этом подписаться любым E-Mail'ом. Так что нужно быть внимательным к заражению компьютеров локальной сети вирусами.
Оказываю индивидуальную платную техподдержку широкого профиля. Обращаться в ЛС или Jabber.

Оффлайн igorpol3

  • Автор темы
  • Новичок
  • *
  • Сообщений: 20
    • Просмотр профиля
попробуй еще одну подсеть в доверенные добавить
mynetworks = 192.168.0.0/24, 127.0.0.0/8
Именно. Либо нужно пользователей аутентифицировать при попытке что-то передать по smtp.

Сейчас, когда у вас подсеть в списке доверенных, с неё могут слать что угодно кто угодно и куда угодно. И при этом подписаться любым E-Mail'ом. Так что нужно быть внимательным к заражению компьютеров локальной сети вирусами.


С этим, думаю, проблем не будет. Уже полгода, как работает лицензионный Касперский Бизнес Спэйс, все серверы и машины в офисе защищены. Аутентификацию на отправку по smtp включу обязательно. Не помешает :)

Оффлайн chain

  • Старожил
  • *
  • Сообщений: 1263
    • Просмотр профиля
Сейчас, когда у вас подсеть в списке доверенных, с неё могут слать что угодно кто угодно и куда угодно. И при этом подписаться любым E-Mail'ом. Так что нужно быть внимательным к заражению компьютеров локальной сети вирусами.
подсеть локальная и кто угодно сообщения слать не будет, разве что нехорошие программы) если ее закрыть, то и пользователи отправлять почту не смогут)
А вот openrelay штука опасная. Когда то в нашем холдинге основной почтовый сервер крутился в другой компании и оттуда же администрировался. Но поскольку частенько письма застревали в очереди, причем админ не мог сообразить почему они там висят (я Lotus не админил, может там действительно все настолько плохо, но скорее всего не у лотуса, а у бывшего админа), мы решили завести свой собственный сервер. Меня пару дней не было и за это время мой напарник умудрился раз пять установить и снести Exchange. Зачем сносил? а у него через час-полтора после установки, сервер начинал тупить и переставал отвечать на запросы, потом мой напарник удачно подсуетил себе командировку на кипр, а мне пришлось все это разгребать.
Первое, что я обнаружил - это огромная очередь, действительно огромная, причем все отправители не опознаны как локальные. Как выяснилось exchange по умолчанию ставился как open relay, и практически мгновенно стал использоваться спамерами по назначению. Мало того, что вешался сервер, мы сразу попали  на ordb.org и потеряли возможность отправлять рабочую почту. И наконец пару дней очень чесались кулаки, хорошо напарник только через неделю вернулся, когда я успокоился)
Поэтому сразу после установки настоятельно рекомендую проверять сервер откуда-нибудь извне на открытость, telnet по 25 порту, лучше перебдеть)
-вечный чайник-

Оффлайн Lion-Simba

  • Старожил
  • *
  • Сообщений: 1126
    • Просмотр профиля
Сейчас, когда у вас подсеть в списке доверенных, с неё могут слать что угодно кто угодно и куда угодно. И при этом подписаться любым E-Mail'ом. Так что нужно быть внимательным к заражению компьютеров локальной сети вирусами.
подсеть локальная и кто угодно сообщения слать не будет, разве что нехорошие программы) если ее закрыть, то и пользователи отправлять почту не смогут)
Смогут, если сделать аутентификацию для SMTP:
smtpd_recipient_restrictions = permit_mynetworks, permit_sasl_authenticated, reject_unauth_destination
Для этого правда дополнительные средства нужны. У меня используется dovecot.

Поэтому сразу после установки настоятельно рекомендую проверять сервер откуда-нибудь извне на открытость, telnet по 25 порту, лучше перебдеть)
Если извне полностью закрыть 25 порт, то сервер не сможет принимать входящую почту (mail'серверы тоже шлют письма по smtp на 25 порт, без всякой авторизации).
Важно лишь проследить за правильной конфигурацией smtpd_recipient_restrictions. В ней должно быть четко прописано, какую почту доставлять. В примере выше у меня написано:
permit_mynetworks = "разрешить передачу писем на любой адрес из моей сети" (mynetworks у меня задан 127.0.0.0/8, то есть без паролей доверяю только себе);
permit_sasl_authenticated = "разрешить передачу писем на любой адрес тем, кто аутентифицировался" (аутентификация через dovecot по логину/паролю);
reject_unauth_destination = "запретить всё остальное, кроме писем, предназначенных для почтовых ящиков моего сервера" (этот пункт юзают внешние почтовые сервера, которые шлют мне почту).
Оказываю индивидуальную платную техподдержку широкого профиля. Обращаться в ЛС или Jabber.

Оффлайн chain

  • Старожил
  • *
  • Сообщений: 1263
    • Просмотр профиля
я не то чтобы спорю) просто кто-то кого-то не понимает
даже не глядя в маны, просто переводя - permit_mynetworks - это как раз те нетворкс, в которые входит его подсеть 192.168..) он по smtp  почту посылает с другой машины из локалки.

а авторизация позволяет отсеивать пользователей, как раз из разрешенных сетей, от самого сервера и всей остальной локальной подсетки.
в принципе, она по большому счету нужна для почтовых провайдеров, которые разрешают пользователям отсылать почту по smtp с любых IP
просто надо внимательней посмотреть, что в его логах написано

теперь про телнет)) никто 25 порт зарывать не предлагает)  25 порт принимает и отправляет почту, но если по нему телнетом можно послать что-нибудь извне, значит это стопроцентный openrelay, так они, кстати блэклистами и проверяются.
telnet mail.host.ru 25
EHLO
MAIL FROM:test@my.mail
RCPT TO:test1@another.mail
это команды, без ответов почтовика, главный ответ, который нас интересует должен быть после этого:
Relay access denied
какой у нас диалог завязался, хотя проблему уже решили)
-вечный чайник-

Оффлайн Lion-Simba

  • Старожил
  • *
  • Сообщений: 1126
    • Просмотр профиля
даже не глядя в маны, просто переводя - permit_mynetworks - это как раз те нетворкс, в которые входит его подсеть 192.168..) он по smtp  почту посылает с другой машины из локалки.

а авторизация позволяет отсеивать пользователей, как раз из разрешенных сетей, от самого сервера и всей остальной локальной подсетки.
ИМХО все же permit_mynetworks разрешает принимать почту из "своих сетей" БЕЗ авторизации. Если хост, который хочет отправить письмо, находится внутри "своих сетей", то у него даже и авторизацию спрашивать не будут. Так обычно делает apache, cron и другие сервисы, которые шлют диагностические сообщения из localhost'а.

Про телнет - да, теперь правда :) Просто устранили возможные разночтения.
Оказываю индивидуальную платную техподдержку широкого профиля. Обращаться в ЛС или Jabber.

Оффлайн sava131

  • Новичок
  • *
  • Сообщений: 4
    • Просмотр профиля
Здрасте! У меня такой вопрос, может ли eBox заберать почту на внешнем почтовом ящике (например ***@rambler.ru и рассылать её локальным пользователям? У меня так виндовый MDaemon делает.

Оффлайн AnrDaemon

  • Заслуженный пользователь
  • Старожил
  • *
  • Сообщений: 26314
    • Просмотр профиля
Хотите получить помощь? Потрудитесь представить запрошенную информацию в полном объёме.

Прежде чем [Отправить], нажми [Просмотр] и прочти собственное сообщение. Сам-то понял, что написал?…

 

Страница сгенерирована за 0.065 секунд. Запросов: 22.