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

Исходное сообщение
"IMAP + SENDMAIL проблема с LMTPD"

Отправлено ifesdjeen , 10-Янв-08 19:58 
OS: Fedora Core 7
Поставил Sendmail + SASL

saslauthd 2.1.22
authentication mechanisms: getpwent kerberos5 pam rimap shadow ldap

sendmail 8.14.2

cyrus-imapd

Вопрос следующий:
IMAP работает, происходит аутентификация, забирает почту с сервера.
При попытке отправить локальное сообщение (mail test), получаем следующие ошибки:

SYSERR(root): makeconnection_ds: unsafe domain socket /var/imap/socket/lmtpd
stat=Deferred: Hard links not allowed

Конфиги касательно вопроса:
/etc/mail/sendmail.cf

Mcyrusv2,    P=[IPC], F=lsDFMnqXzA@/:|m,
        S=EnvFromSMTP/HdrFromL, R=EnvToSMTP/HdrToL, E=\r\n,
        T=DNS/RFC822/SMTP,
        A=FILE /var/imap/socket/lmtpd
/etc/imapd.conf

configdirectory: /var/lib/imap
partition-default: /var/spool/imap
admins: cyradmin
sievedir: /var/lib/imap/sieve
sendmail: /usr/sbin/sendmail
hashimapspool: true
lmtpsocket: /var/imap/socket/lmtpd
sasl_saslauthd_path: /var/run/saslauthd/mux
sasl_pwcheck_method: auxprop
sasl_auxprop_plugin: sasldb
sasl_mech_list: CRAM-MD5 LOGIN PLAIN
allowplaintext: yes
tls_cert_file: /etc/pki/cyrus-imapd/cyrus-imapd.pem
tls_key_file: /etc/pki/cyrus-imapd/cyrus-imapd.pem
tls_ca_file: /etc/pki/tls/certs/ca-bundle.crt

/etc/cyrus.conf
  lmtpunix cmd="lmtpd" listen="/var/imap/socket/lmtpd" prefork=0


Мне кажется, что что-то блочит lmtpd, так как присутствуют также такие сообщение при запуске inetd:
unable to create lmtpunix listener socket: Address already in use

Помогите, пожалуйста.


Содержание

Сообщения в этом обсуждении
"IMAP + SENDMAIL проблема с LMTPD"
Отправлено DN , 10-Янв-08 20:36 
>/etc/cyrus.conf
>  lmtpunix cmd="lmtpd" listen="/var/imap/socket/lmtpd" prefork=0
>
>
>Мне кажется, что что-то блочит lmtpd, так как присутствуют также такие сообщение
>при запуске inetd:
>unable to create lmtpunix listener socket: Address already in use

lmtpd стартуется master'ом демоном, а не inetd .

Потестируй соединение с lmtpd с помощью
lmtptest -m cram-md5 -a cyradmin hostname

Что скажет?



"IMAP + SENDMAIL проблема с LMTPD"
Отправлено ifesdjeen , 11-Янв-08 10:29 
>lmtpd стартуется master'ом демоном, а не inetd .

у меня при запуске service cyrus-inetd start запускается master, и он по очереди начинает запускать все сервисы. в т.ч. и lmtp.

S: 220 web.server.com LMTP Cyrus v2.3.9-Fedora-RPM-2.3.9-7.fc7 ready
C: LHLO example.com
S: 250-web.server.com
S: 250-8BITMIME
S: 250-ENHANCEDSTATUSCODES
S: 250-PIPELINING
S: 250-SIZE
S: 250-STARTTLS
S: 250-AUTH PLAIN LOGIN CRAM-MD5
S: 250 IGNOREQUOTA
C: AUTH CRAM-MD5

Please enter your password:

S: 235 Authenticated!

Я уже пытался сделать то же самое через telnet localhost lmtp. Оттуда и знаю что у меня работает по человечески lmtp.

Немного переформулировал вопросы:
1. Какой лучше использовать сокет на imapd? который lmtpunix или lmtp (т.е. тот который слушает порт или тот который обращается к директории /var/imap/socket/lmtpd). Должна ли существовать папка lmtpd? Либо linux сам создаст при подключении к сокету (пытался и так и так, не сработало)
2. Если мы используем lmtp socket для imapd, то каким образом заставить sendmail слушать не папку, а порт (пытался в конфиге написать A= TCP localhost:lmtp и по всякому разному, не понимает, говорит что не может соединиться, хотя я мог ошибиться в синтаксисе, подскажете?)


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено ifesdjeen , 11-Янв-08 11:24 
Jan 11 11:00:13 web sendmail[22260]: starting daemon (8.14.2): SMTP+queueing@01:00:00
Jan 11 11:00:13 web sm-msp-queue[22268]: starting daemon (8.14.2): queueing@01:00:00
Jan 11 11:00:13 web master[22271]: about to exec /usr/lib/cyrus-imapd/lmtpd
Jan 11 11:00:13 web lmtp[22271]: executed
Jan 11 11:00:13 web lmtp[22271]: accepted connection
Jan 11 11:00:13 web lmtp[22271]: connection from localhost.localdomain [127.0.0.1]
Jan 11 11:00:13 web sendmail[22261]: m0B8g7cE021783: to=<test@web.server.com>, delay=00:18:06, xdelay=00:00:00, mailer=cyrusv2, pri=390303, relay=[127.0.0.1] [127.0.0.1], dsn=4.0.0, stat=Deferred: 430 Authentication required

Наконец-то подключился сендмайлом к lmtp. Но теперь кто-то просит авторизации. Я по правде даже не могу понять кто это.. вроде sendmail... но как то странно...


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено CrAzOiD , 11-Янв-08 10:42 
у сендмыла в м4 скриптах была такая ошибка связанная с цирусом, он не тот путь до сокета подставлял
причем не помогало явное указание правильного пути с MC файле
пожтому каждый раз ручками правился sendmail.cf
может это именно те грабли:
путь до сокета
/var/lib/imap/socket/lmtp


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено ifesdjeen , 11-Янв-08 10:51 
>может это именно те грабли:
>путь до сокета
>/var/lib/imap/socket/lmtp

ага, я это тоже смотрел :) спасибо большое..
я использую сокет через A=TCP [127.0.0.1] lmtp а не через FILE.
Хотя если кто то научит как через файл, сделаю так (проблема в том, что при запуске imapd он говорит что адрес уже используется...)


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено CrAzOiD , 11-Янв-08 11:50 
>ага, я это тоже смотрел :) спасибо большое..
>я использую сокет через A=TCP [127.0.0.1] lmtp а не через FILE.
>Хотя если кто то научит как через файл, сделаю так (проблема в
>том, что при запуске imapd он говорит что адрес уже используется...)

ну по конфигу не ясно что ты TCP используешь :)
Вот мой cyrus.conf:
===========================================
# standard standalone server implementation

START {
  # do not delete this entry!
  recover       cmd="ctl_cyrusdb -r"

  # this is only necessary if using idled for IMAP IDLE
#  idled                cmd="idled"
}

# UNIX sockets start with a slash and are put into /var/lib/imap/sockets
SERVICES {
  # add or remove based on preferences
  imap          cmd="imapd" listen="imap" prefork=5
  imaps         cmd="imapd -s" listen="imaps" prefork=1
  pop3          cmd="pop3d" listen="pop3" prefork=3
  pop3s         cmd="pop3d -s" listen="pop3s" prefork=1
  sieve         cmd="timsieved" listen="sieve" prefork=0

  # these are only necessary if receiving/exporting usenet via NNTP
#  nntp         cmd="nntpd" listen="nntp" prefork=3
#  nntps                cmd="nntpd -s" listen="nntps" prefork=1

  # at least one LMTP is required for delivery
  lmtp          cmd="lmtpd -a" listen="lmtp" prefork=0
  lmtpunix      cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=1

  # this is only necessary if using notifications
#  notify       cmd="notifyd" listen="/var/lib/imap/socket/notify" proto="udp" prefork=1
}

EVENTS {
  # this is required
  checkpoint    cmd="ctl_cyrusdb -c" period=30

  # this is only necessary if using duplicate delivery suppression,
  # Sieve or NNTP
  delprune      cmd="cyr_expire -E 3" at=0400

  # this is only necessary if caching TLS sessions
  tlsprune      cmd="tls_prune" at=0400
}


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено ifesdjeen , 11-Янв-08 11:55 
lmtp cmd="lmtpd -a" listen="lmtp" prefork=0
lmtpunix      cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=1

вопрос: что значит ключ -а.
И почему их два lmtp и lmtpunix:)
и как прописывать всё это в sendmail
и есть ли у тебя папка lmtp (существует или её создал линух сам)

простите за обилие вопросов...


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено CrAzOiD , 11-Янв-08 13:39 
>lmtp cmd="lmtpd -a" listen="lmtp" prefork=0
>lmtpunix      cmd="lmtpd" listen="/var/lib/imap/socket/lmtp" prefork=1
>
>вопрос: что значит ключ -а.

man lmtpd:
-a     Preauthorize  connections  initiated  on  an  internet   socket,
              instead  of  requiring  LMTP AUTH.  This should only be used for
              connections coming from trusted hosts.


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено ifesdjeen , 11-Янв-08 13:50 
>man lmtpd:
>-a     Preauthorize  connections  initiated  on
> an  internet   socket,
>            
>  instead  of  requiring  LMTP AUTH.  
>This should only be used for
>            
>  connections coming from trusted hosts.

да, именно с этим у меня и была проблема...


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено ifesdjeen , 11-Янв-08 12:06 
вроде начало работать)

Jan 11 11:52:14 web master[22785]: about to exec /usr/lib/cyrus-imapd/lmtpd
Jan 11 11:52:14 web lmtpunix[22785]: executed
Jan 11 11:52:14 web lmtpunix[22785]: accepted connection
Jan 11 11:52:14 web lmtpunix[22785]: lmtp connection preauth'd as postman
Jan 11 11:52:14 web lmtpunix[22785]: verify_user(user.root) failed: Mailbox does not exist
Jan 11 11:52:14 web sendmail[22784]: m0B9qEXU022784: to=<root@web.server.com>, delay=00:00:00, xdelay=00:00:00, mailer=cyrusv2, pri=31537, relay=localhost, dsn=5.1.1, stat=User unknown
Jan 11 11:52:14 web sendmail[22784]: m0B9qEXU022784: m0B9qEXV022784: return to sender: User unknown
Jan 11 11:52:14 web lmtpunix[22785]: verify_user(user.postmaster) failed: Mailbox does not exist
Jan 11 11:52:14 web sendmail[22784]: m0B9qEXV022784: to=postmaster, delay=00:00:00, xdelay=00:00:00, mailer=cyrusv2, pri=32561, relay=localhost [[UNIX: /var/lib/imap/socket/lmtpd]], dsn=5.1.1, stat=User unknown
Jan 11 11:52:14 web sendmail[22784]: m0B9qEXU022784: Losing ./qfm0B9qEXU022784: savemail panic
Jan 11 11:52:14 web sendmail[22784]: m0B9qEXU022784: SYSERR(root): savemail: cannot save rejected email anywhere

мммм(( только вот такие ошибки возникли почемуто(((


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено DN , 11-Янв-08 12:24 
>Jan 11 11:52:14 web sendmail[22784]: m0B9qEXU022784: m0B9qEXV022784: return to sender: User unknown
>
>Jan 11 11:52:14 web lmtpunix[22785]: verify_user(user.postmaster) failed: Mailbox does not exist
>Jan 11 11:52:14 web sendmail[22784]: m0B9qEXV022784: to=postmaster, delay=00:00:00, xdelay=00:00:00, mailer=cyrusv2, pri=32561, relay=localhost
>[[UNIX: /var/lib/imap/socket/lmtpd]], dsn=5.1.1, stat=User unknown
>Jan 11 11:52:14 web sendmail[22784]: m0B9qEXU022784: Losing ./qfm0B9qEXU022784: savemail panic
>Jan 11 11:52:14 web sendmail[22784]: m0B9qEXU022784: SYSERR(root): savemail: cannot save rejected email
>anywhere
>
>мммм(( только вот такие ошибки возникли почемуто(((

По умолчанию у Вас вся почта передается mailer=cyrusv2 .
Думаю, что  imap ящиков user.postmaster и user.root действительно не существует.

Проверьте командой типа
su -l cyrus -c '/usr/lib/cyrus-imapd/ctl_mboxlist -d'


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено ifesdjeen , 11-Янв-08 12:30 
да, я защел в cyradm и сразу проверил, тогда ящиков еще не было. сразу же их создал:
postmaster      0 default       anyone  lrs
root    0 default       anyone  lrs
test    0 default       anyone  lrs
test1   0 default       anyone  lrs

просто по логу он не видит test(((
а потом уже начинает пытаться отправить root и postmaster.
скажите, нужно ли что-то прописывать в aliases или virtusertable?


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено DN , 11-Янв-08 12:54 

>просто по логу он не видит test(((
>а потом уже начинает пытаться отправить root и postmaster.
>скажите, нужно ли что-то прописывать в aliases или virtusertable?

aliases и virtusertable не меняют локальный мейлер по умолчанию.


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено ifesdjeen , 11-Янв-08 12:38 
прошу прощения за глупость
создавал пользователей командой
cm test
вместо
cm user.test

еще раз прошу прощения.
вроде сообщения начали доставлятся.

единственный вопрос остался:
в saslpasswd2 создавать пользователя test или user.test
и на imap клиенте прописывать которого из них?.. так как на test ничего не пришло(


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено DN , 11-Янв-08 13:01 
>единственный вопрос остался:
>в saslpasswd2 создавать пользователя test или user.test
>и на imap клиенте прописывать которого из них?.. так как на test
>ничего не пришло(

Судя по вашей логике, user.test - это imap ящик.
Пользователь test - это бюджет для аутентификации.

Поэтому надо дать права доступа пользователю test , к ящику user.test .

Последнее, определитесь с механизмом аутентификации sasl v2.


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено ifesdjeen , 11-Янв-08 13:29 
>Судя по вашей логике, user.test - это imap ящик.
>Пользователь test - это бюджет для аутентификации.
>Поэтому надо дать права доступа пользователю test , к ящику user.test .
>Последнее, определитесь с механизмом аутентификации sasl v2.

вроде разобрался :) заработало!)))
спасибо огромное!)


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено ponosov1 , 12-Мрт-12 15:33 
Mar 12 20:08:39 mail03 master[2903]: process 5017 exited, status 0
Mar 12 20:08:46 mail03 postfix/smtpd[4982]: connect from fallback5.mail.ru[94.100.176.59]
Mar 12 20:08:47 mail03 postfix/smtpd[4982]: warning: unknown smtpd restriction: "permit_sasl_autheOCnticated"
M"ar 12 20:08:47 mail03 postfix/smtpd[4982]: NOQUEUE: reject: RCPT from fallback5.mail.ru[94.100.176.59]: 451 4.3.5 Server configuration error; from=<datskiydude@mail.ru> to=<tankhaevop@r03.mymail.ru> proto=ESMTP helo=<fallback5.mail.ru>

Mar 12 20:08:48 mail03 postfix/cleanup[4986]: 1C7951750213: message-id=<20120312120848.1C7951750213@mail03.mymail.ru>
Mar 12 20:08:48 mail03 postfix/smtpd[4982]: disconnect from fallback5.mail.ru[94.100.176.59]
Mar 12 20:08:48 mail03 postfix/qmgr[3868]: 1C7951750213: from=<double-bounce@mail03.mymail.ru>, size=1027, nrcpt=1 (queue active)
Mar 12 20:08:48 mail03 lmtpunix[5118]: accepted connection
Mar 12 20:08:48 mail03 lmtpunix[5118]: lmtp connection preauth'd as postman
Mar 12 20:08:48 mail03 lmtpunix[5118]: verify_user(user.root) failed: Mailbox does not exist
Mar 12 20:08:48 mail03 master[5135]: about to exec /usr/lib/cyrus-imapd/lmtpd
Mar 12 20:08:48 mail03 postfix/lmtp[4989]: 1C7951750213: to=<root@mail03.mymail.ru>, orig_to=<postmaster>, relay=mail03.mymail.ru[/var/lib/imap/socket/lmtp]
Mar 12 20:08:48 mail03 postfix/bounce[5001]: warning: 1C7951750213: undeliverable postmaster notification discarded"

перестали приходить сообщения с внешки , в чем может быть проблема?


"IMAP + SENDMAIL проблема с LMTPD"
Отправлено ponosov1 , 12-Мрт-12 15:34 
вот