Вопросы по начальной настройке Exim 4.66 (Часть 2)

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

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Аватара пользователя
wwaaoo
мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Вопросы по начальной настройке Exim 4.66 (Часть 2)

Непрочитанное сообщение wwaaoo » 2007-04-17 11:54:13

Проблема такая:
Установил почтовый сервер по примеру из статьи http://www.lissyara.su/?id=1181 и при подключении к серверу с помощью программы Thunderbird выдает следующую ошибку:

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

no chdir Maildir, 
а в логах пишет вот так:

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

p3d: chdir Maildir: No such file or directory.
Пожалуйста, подскажите что делать (только если можно подробнее, а то я типа ламерок еще).

Хостинговая компания 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/
Выделенные сервера, Россия, Москва, от 2520 рублей (8 CPU, 8Gb RAM, 2x500Gb HDD, RAID 3ware 9750):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/

Аватара пользователя
Alex Keda
стреляли...
Сообщения: 35025
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Непрочитанное сообщение Alex Keda » 2007-04-17 13:00:15

письмо юзеру отправтьь чтоб директорию создал
Убей их всех! Бог потом рассортирует...

Аватара пользователя
wwaaoo
мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение wwaaoo » 2007-04-17 14:33:50

Отправлял письмо Юзеру с gmail.com но письмо возврашается и пишет:

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

This is an automatically generated Delivery Status Notification

Delivery to the following recipient failed permanently:

    arthur@mydomain.ru

Technical details of permanent failure:
PERM_FAILURE: SMTP Error (state 9): 550 relay not permitted
:(

А может эту директорию самому создать надо?

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2007-04-17 14:43:27

550 relay not permitted
Говорит, что твой сервак не нашёл пользователя или домена (или они не установлены) и счёл своим долгом отказать. Смотри конфиг exim.

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

# Проверка получателя в наших доменах (Тут должно приниматься письмо в твоём случае)
  accept  domains       = +local_domains
          endpass
          verify        = recipient

# Остальных прибиваем (Это тебе было написано)
  deny    message       = relay not permitted
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Гость
проходил мимо

Непрочитанное сообщение Гость » 2007-04-17 17:39:22

dikens3 писал(а):
550 relay not permitted
Говорит, что твой сервак не нашёл пользователя или домена (или они не установлены) и счёл своим долгом отказать. Смотри конфиг exim.

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

# Проверка получателя в наших доменах (Тут должно приниматься письмо в твоём случае)
  accept  domains       = +local_domains
          endpass
          verify        = recipient

# Остальных прибиваем (Это тебе было написано)
  deny    message       = relay not permitted
А сейчас письма отправляю но они уже не возвращаются, а в логах теперь записи такие:

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

Apr 17 18:21:59 mail exim[797]: exim 4.66 daemon started: pid=797, -q30m, listening for SMTP on port 25 (IPv4)
Apr 17 18:23:14 mail exim[902]: unknown named domain list "+relay_domains"
Apr 17 18:23:14 mail exim[902]: unknown named domain list "+relay_domains"
Apr 17 18:23:17 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:23:23 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:25:00 mail exim[920]: unknown named domain list "+relay_domains"
Apr 17 18:25:00 mail exim[920]: unknown named domain list "+relay_domains"
Apr 17 18:25:43 mail exim[932]: unknown named domain list "+relay_domains"
Apr 17 18:25:43 mail exim[932]: unknown named domain list "+relay_domains"
Apr 17 18:25:55 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:25:59 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:26:27 mail exim[941]: unknown named domain list "+relay_domains"
Apr 17 18:26:27 mail exim[941]: unknown named domain list "+relay_domains"
Apr 17 18:27:31 mail exim[942]: unknown named domain list "+relay_domains"
Apr 17 18:27:31 mail exim[942]: unknown named domain list "+relay_domains"
Apr 17 18:29:34 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:29:44 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:31:48 mail exim[966]: unknown named domain list "+relay_domains"
Apr 17 18:31:48 mail exim[966]: unknown named domain list "+relay_domains" 

Аватара пользователя
wwaaoo
мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение wwaaoo » 2007-04-17 17:41:13

dikens3 писал(а):
550 relay not permitted
Говорит, что твой сервак не нашёл пользователя или домена (или они не установлены) и счёл своим долгом отказать. Смотри конфиг exim.

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

# Проверка получателя в наших доменах (Тут должно приниматься письмо в твоём случае)
  accept  domains       = +local_domains
          endpass
          verify        = recipient

# Остальных прибиваем (Это тебе было написано)
  deny    message       = relay not permitted
А сейчас письма отправляю но они уже не возвращаются, а в логах теперь записи такие:

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

Apr 17 18:19:57 mail authdaemond: stopping authdaemond children
Apr 17 18:21:58 mail authdaemond: modules="authuserdb authvchkpw authpam authldap authmysql authpgsql", daemons=5
Apr 17 18:21:58 mail authdaemond: Installing libauthuserdb
Apr 17 18:21:58 mail authdaemond: Shared object "libauthuserdb.so" not found, required by "authdaemond"
Apr 17 18:21:58 mail authdaemond: Installing libauthvchkpw
Apr 17 18:21:58 mail authdaemond: Shared object "libauthvchkpw.so" not found, required by "authdaemond"
Apr 17 18:21:58 mail authdaemond: Installing libauthpam
Apr 17 18:21:58 mail authdaemond: Installation complete: authpam
Apr 17 18:21:58 mail authdaemond: Installing libauthldap
Apr 17 18:21:58 mail authdaemond: Shared object "libauthldap.so" not found, required by "authdaemond"
Apr 17 18:21:58 mail authdaemond: Installing libauthmysql
Apr 17 18:21:58 mail authdaemond: Shared object "libauthmysql.so" not found, required by "authdaemond"
Apr 17 18:21:58 mail authdaemond: Installing libauthpgsql
Apr 17 18:21:58 mail authdaemond: Shared object "libauthpgsql.so" not found, required by "authdaemond"
Apr 17 18:21:59 mail exim[797]: exim 4.66 daemon started: pid=797, -q30m, listening for SMTP on port 25 (IPv4)
Apr 17 18:23:14 mail exim[902]: unknown named domain list "+relay_domains"
Apr 17 18:23:14 mail exim[902]: unknown named domain list "+relay_domains"
Apr 17 18:23:17 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:23:23 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:25:00 mail exim[920]: unknown named domain list "+relay_domains"
Apr 17 18:25:00 mail exim[920]: unknown named domain list "+relay_domains"
Apr 17 18:25:43 mail exim[932]: unknown named domain list "+relay_domains"
Apr 17 18:25:43 mail exim[932]: unknown named domain list "+relay_domains"
Apr 17 18:25:55 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:25:59 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:26:27 mail exim[941]: unknown named domain list "+relay_domains"
Apr 17 18:26:27 mail exim[941]: unknown named domain list "+relay_domains"
Apr 17 18:27:31 mail exim[942]: unknown named domain list "+relay_domains"
Apr 17 18:27:31 mail exim[942]: unknown named domain list "+relay_domains"
Apr 17 18:29:34 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:29:44 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:31:48 mail exim[966]: unknown named domain list "+relay_domains"
Apr 17 18:31:48 mail exim[966]: unknown named domain list "+relay_domains" 

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2007-04-17 18:18:50

Apr 17 18:21:58 mail authdaemond: modules="authuserdb authvchkpw authpam authldap authmysql authpgsql", daemons=5
..
Apr 17 18:21:58 mail authdaemond: Shared object "libauthuserdb.so" not found, required by "authdaemond"
...
authdaemond собран без поддержки какой-либо авторизации я так понимаю? Поэтому и not found(не найдена библиотека).
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Аватара пользователя
wwaaoo
мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение wwaaoo » 2007-04-17 20:13:46

dikens3 писал(а):
Apr 17 18:21:58 mail authdaemond: modules="authuserdb authvchkpw authpam authldap authmysql authpgsql", daemons=5
..
Apr 17 18:21:58 mail authdaemond: Shared object "libauthuserdb.so" not found, required by "authdaemond"
...
authdaemond собран без поддержки какой-либо авторизации я так понимаю? Поэтому и not found(не найдена библиотека).
Отправлял письмо Юзеру с gmail.com письма уходят но на почтовый сервер неприходят а в логах такие записи:

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

Apr 17 18:21:59 mail exim[797]: exim 4.66 daemon started: pid=797, -q30m, listening for SMTP on port 25 (IPv4)
Apr 17 18:23:14 mail exim[902]: unknown named domain list "+relay_domains"
Apr 17 18:23:14 mail exim[902]: unknown named domain list "+relay_domains"
Apr 17 18:23:17 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:23:23 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:25:00 mail exim[920]: unknown named domain list "+relay_domains"
Apr 17 18:25:00 mail exim[920]: unknown named domain list "+relay_domains"
Apr 17 18:25:43 mail exim[932]: unknown named domain list "+relay_domains"
Apr 17 18:25:43 mail exim[932]: unknown named domain list "+relay_domains"
Apr 17 18:25:55 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:25:59 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:26:27 mail exim[941]: unknown named domain list "+relay_domains"
Apr 17 18:26:27 mail exim[941]: unknown named domain list "+relay_domains"
Apr 17 18:27:31 mail exim[942]: unknown named domain list "+relay_domains"
Apr 17 18:27:31 mail exim[942]: unknown named domain list "+relay_domains"
Apr 17 18:29:34 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:29:44 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:31:48 mail exim[966]: unknown named domain list "+relay_domains"
Apr 17 18:31:48 mail exim[966]: unknown named domain list "+relay_domains"
Кстати Thunderbird вроде автаризуется (потомучто выходит сообщение об ошибке no chdir Maildir)

Аватара пользователя
wwaaoo
мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение wwaaoo » 2007-04-18 9:40:54

Вот мой конфигурационный файл Exima.

Конфигурационный файл полностью соответствует статье http://www.lissyara.su/?id=1181.

Пожалуйста посмотрите и скажите что я сделал не так.

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

[size=9]# $Cambridge: exim/exim-src/src/configure.default,v 1.12 2006/10/25 08:42:57 ph10 Exp $

######################################################################
#                  Runtime configuration file for Exim               #
######################################################################

primary_hostname = mail.mydomain.ru

domainlist local_domains = admin@mail.mydomain.ru:postmaster@mail.mydomain.ru

domainlist relay_to_domains =

hostlist   relay_from_hosts = localhost:127.0.0.0/8:192.168.101.0/16

acl_smtp_rcpt = acl_check_rcpt
acl_smtp_data = acl_check_data

av_scanner = clamd:/var/run/clamav/clamd

qualify_domain = mail.mydomain.ru

qualify_recipient = mail.mydomain.ru

allow_domain_literals = false

exim_user = mailnull
exim_group = mail
never_users = root

#host_lookup = *
#rfc1413_hosts = *
rfc1413_query_timeout = 0s

sender_unqualified_hosts = +relay_from_hosts
recipient_unqualified_hosts = +relay_from_hosts

# percent_hack_domains = *

ignore_bounce_errors_after = 45m

timeout_frozen_after = 15d

#freeze_tell = admin@lissyara.su

helo_accept_junk_hosts = 192.168.101.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 = 64M
helo_allow_chars = _
smtp_enforce_sync = true
log_selector = \
    +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

######################################################################
#                  êîíôèãóðàöèÿ ACL äëÿ âõîäÿùåé ïî÷òû               #
######################################################################

begin acl

acl_check_rcpt:

  accept  hosts = :

  deny    message       = "incorrect symbol in address"
          domains       = +local_domains
          local_parts   = ^[.] : ^.*[@%!/|]

  deny    message       = "incorrect symbol in address"
          domains       = !+local_domains
          local_parts   = ^[./|] : ^.*[@%!] : ^.*/\\.\\./

  accept  local_parts   = postmaster
          domains       = +local_domains

#  require verify        = sender

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

  accept  authenticated = *

  deny    message       = "Your IP in HELO - access denied!"
          hosts         =  * : !+relay_from_hosts #: !81-196.mydomain.ru
          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       = "main IP in your HELO! Access denied!"

  deny    condition     = ${if match{$sender_helo_name}\
    {\N^\d+$\N}{yes}{no}}
          hosts         = !127.0.0.1 : !localhost : *
          message       = "can not be only number in HELO!"

#  deny    condition     = ${if eq{$sender_address}{}{yes}{no}}
#          hosts         = !127.0.0.1 : !localhost : *
#          message       = "À êàêîãî HELO ïóñòîå?! Íå ïî RFC..."

#  deny    condition     = ${if match{$sender_address}{\N^\s+$\N}{yes}{no}}
#          hosts         = !127.0.0.1 : !localhost : *
#          message       = "À êàêîãî HELO ïóñòîå (òîêà ïðîáåëû)?! Íå ïî RFC..."

#  deny    condition     = ${if eq{$sender_address}{}{yes}{no}}
#          hosts         = !127.0.0.1 : !localhost : *
#          message       = "Where sender of this mail?!"

  deny    message       = "your hostname is bad (adsl, poll, ppp & etc)."
          condition     = ${if match{$sender_host_name} \
                               {adsl|dialup|pool|peer|dhcp} \
                               {yes}{no}}

  warn
        set acl_m0 = 30s
  warn
        hosts = +relay_from_hosts:213.234.195.224/28:80.253.9.18/32
        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       = "In my mailserver not stored this user"
          verify        = recipient

  accept  domains       = +relay_to_domains
          endpass
          message       = "main server not know how relay to this address"
          verify        = recipient

  deny    message       = "you in blacklist - $dnslist_domain --> $dnslist_text"
          dnslists      = opm.blitzed.org : \
                          cbl.abuseat.org : \
                          bl.csma.biz : \
                          dynablock.njabl.org

  accept  hosts         = +relay_from_hosts

  deny    message       = "relay not permitted"




# Òóò èäóò ACL ïðîâåðÿþùèå ñîäåðæèìîå (òåëî) ïèñüìà.
# Áåç íèõ áóäóò ïðîïóñêàòüñÿ âñå ñîîáùåíèÿ.

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{$local_part}lsearch{/etc/aliases}}
  user = mailnull
  group = mail
  file_transport = address_file
  pipe_transport = address_pipe

userforward:
  driver = redirect
  check_local_user
# local_part_suffix = +* : -*
# local_part_suffix_optional
  file = $home/.forward
# allow_filter
  no_verify
  no_expn
  check_ancestor
  file_transport = address_file
  pipe_transport = address_pipe
  reply_transport = address_reply
  condition = ${if exists{$home/.forward} {yes} {no} }

localuser:
  driver = accept
  check_local_user
# local_part_suffix = +* : -*
# local_part_suffix_optional
  transport = local_delivery
  cannot_route_message = Unknown user

begin transports

remote_smtp:
  driver = smtp

local_delivery:
  driver = appendfile
  check_string = ""
  create_directory
  delivery_date_add
  directory = /usr/home/${local_part}/Maildir
#  directory = /var/mail/${local_part}
  directory_mode = 770
  envelope_to_add
  group = mail
  maildir_format
  maildir_tag = ,S=$message_size
  message_prefix = ""
  message_suffix = ""
  mode = 0660

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

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

begin rewrite

begin authenticators

plain:
  driver = plaintext
  public_name = PLAIN
  server_condition = ${if saslauthd{{$1}{$2}}{1}{0}}
  server_set_id = $2

login:
  driver = plaintext
  public_name = LOGIN
  server_prompts = "Username:: : Password::"
  server_condition = ${if saslauthd{{$1}{$2}}{1}{0}}
  server_set_id = $1

#cram_md5:
#  driver = cram_md5
#  public_name = CRAM-MD5
#  server_secret = "òóò êîíäèøåí :)"
#  server_set_id = $1
[/size]

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2007-04-18 11:11:24

unknown named domain list "+relay_domains"
Неизвестная переменная +relay_domains в конфиге exim. Хотя в твоём выводе её нет. Конфиг весь?
Здесь должны быть домены, а не E-Mail'ы или имена хостов. Т.е. domainlist local_domains = mydomain.ru : mydomain2.ru
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Аватара пользователя
wwaaoo
мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение wwaaoo » 2007-04-18 13:19:36

Неизвестная переменная +relay_domains в конфиге exim. Хотя в твоём выводе её нет. Конфиг весь?
Да конфиг весь, точная копия из статьи http://www.lissyara.su/?id=1181.
Здесь должны быть домены, а не E-Mail'ы или имена хостов. Т.е. domainlist local_domains = mydomain.ru : mydomain2.ru
Понятно, исправлю :)

Шо делать? помогите :oops:

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2007-04-18 14:09:03

Исправлять ошибки, что же ещё. :-)
Что в логах теперь?
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Аватара пользователя
dikens3
подполковник
Сообщения: 4856
Зарегистрирован: 2006-09-06 16:24:08
Откуда: Нижний Новгород
Контактная информация:

Непрочитанное сообщение dikens3 » 2007-04-19 12:33:16

Apr 17 18:23:17 mail pop3d: chdir Maildir: No such file or directory
Apr 17 18:23:23 mail pop3d: chdir Maildir: No such file or directory
Появляется если что-то не так с директорией в которой находится почта пользователя(cur/tmp/new).

В моём случае данные хранятся в mysql:

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

Тут я авторизовался:
Apr 19 13:26:58 newmail authdaemond: Authenticated: sysusername=<null>, sysuserid=26, sysgroupid=6, homedir=/mnt/mail/, address=dik, fullname=<null>, maildir=domain.ru/dik/, quota=<null>, options=<null>

Мой пароль:
Apr 19 13:26:58 newmail authdaemond: Authenticated: clearpasswd=test, passwd=<null>

Apr 19 13:26:58 newmail pop3d: LOGIN, user=dik, ip=[192.168.2.4]
Apr 19 13:26:59 newmail pop3d: LOGOUT, user=dik, ip=[192.168.2.4], top=0, retr=6958, rcvd=136, sent=8033, time=1, stls=1
При аутентификации директория назначения(где лежат папки cur/tmp/new) обязательно должна существовать.
В моём случае директория, где лежат эти папки будет /mnt/mail/domain.ru/dik/

Если такой директории нет(нет доступа или неправильно указана), то выдаются такие сообщения.

P.S. Ошибки в конфигурации authdaemond или данные неверны.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Аватара пользователя
wwaaoo
мл. сержант
Сообщения: 107
Зарегистрирован: 2007-04-15 22:51:46

Непрочитанное сообщение wwaaoo » 2007-04-19 15:28:16

Спасибо dikens3, у меня все получилось

http://forum.lissyara.su/viewtopic.php?t=3287