Страница 1 из 2

трабл с приемом почты

Добавлено: 2008-08-22 15:31:24
vovchella
Hi ALL.
есть небольшая локальная сеть, необходима почтовая система, для внутреннего пользования, т.е. наружу выставлять пока не хотим.
Поставил связку MySQL+ Cyrus-sasl+ Courier-authlib+ Courier-imap+ Postfix+ Apache(2.)+ Php(5.2.5)+ Postfixadmin(2.2.1.1) на FreeBSD
все вроде норм запускается
в мускуле БД есть, таблицы есть, заполнены, с БД есть коннект
апатч работает, php, html и пр. норм грузит и отображает
Постфикс http://my.xx/postfixadmin работает, создаются ящики и папки в /var/spool/mail тоже создаются как письмо на них приходит
telnet localhost 25 и последующая отправка письма проходит удачно, в /var/spool/mail приходит письмо...
ВОПРОС: как забрать письмо почтовым клиентом(оутлук или BAT) локально?
я прописываю адреса поп и смтп - локальный ip сервака, но соединиться не могу.
в конфиге сетка стоит как доверенная(разрешено через постфикс пересылать)
если кто знает - подскажите, направьте куда-нить(тока не послать главное :) )

Re: трабл с приемом почты

Добавлено: 2008-08-22 15:33:14
dikens3
я прописываю адреса поп и смтп - локальный ip сервака, но соединиться не могу.
Почему? Что в логах на сервере, если причина в нём?

Re: трабл с приемом почты

Добавлено: 2008-08-22 15:40:50
vovchella
cat /var/log/maillog - там ничего по этому поводу.
фаер стоит, там блочится все из ВНЕ на 25 и 110, но я захожу из локалки и пытаюсь забрать с локалки...тут вроде все норм?
какой лог посмотреть еще?

Re: трабл с приемом почты

Добавлено: 2008-08-22 15:42:40
dikens3
Пробуй из локалки telnet IP_ТВОЕГО_СЕРВЕРА 25
Если с коннектом всё нормально и происходит подключние к courier-imap, то это должно быть зафиксировано.
Детализацию логово необходимо увеличить на время тестирования.

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

authdaemonrc
...
DEBUG_LOGIN=2

Re: трабл с приемом почты

Добавлено: 2008-08-22 15:54:14
vovchella
telnet проходит с локалки, представляюсь и отправляю письмо - в var/spool/mail письмо приходит.
поставил DEBUG_LOGIN=2
cat /var/log/maillog - ничего
какой лог еще посмотреть?
зы. # sockstat | grep 110
root couriertcp 973 3 tcp4 127.0.0.1:110 *:*

добавлено:
подредактировал файл /usr/local/etc/courier-imap/pop3d
sockstat | grep 110
root couriertcp 1236 3 tcp4 192.168.х.х:110 *:*
а в cat /var/log/maillog при проверке почты клиентом:
Aug 22 17:07:47 gate authdaemond: failed to connect to mysql server (server=localhost., userid=postfix): Unknown MySQL server host 'localhost.' (1)
Aug 22 17:07:47 gate courier-imap: LOGIN FAILED, user=хх@хх.ru, ip=[192.168.х.х]
Aug 22 17:07:47 gate courier-imap: authentication error: Input/output error
он получается не может к БД подключится и прочитать данные?
зыы. /usr/local/etc/authlib/authmysqlrc БД,имя и пас верные

Re: трабл с приемом почты

Добавлено: 2008-08-22 17:25:02
dikens3
Вот и начало твоей проблемы. Неизвестное название сервера. (localhost без точки на конце пишется)
Конфиг покажи для начала что-ли.

Re: трабл с приемом почты

Добавлено: 2008-08-25 10:27:54
vovchella
просмотрел все основные конфиги, но 'localhost.' нет нигде. где еще можно поискать?
зы. смотрел
my.cnf
smtpd.conf
authmysqlrc
postfix/main.cf
все в postfix/mysqlLookupMaps
postfixadmin/config.inc.php

в маиллоге уже :
Aug 25 11:36:10 gate authdaemond: failed to connect to mysql server (server=localhost, userid=postfix): Can't connect to local MySQL server through socket '/var/mysql/mysql.sock' (2)
Aug 25 11:36:10 gate courier-imap: LOGIN FAILED, user=x@x.ru, ip=[192.168.x.x]
Aug 25 11:36:10 gate courier-imap: authentication error: Input/output error

Re: трабл с приемом почты

Добавлено: 2008-08-25 10:39:14
dikens3
dikens3 писал(а):Конфиг покажи для начала что-ли.

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

cat /usr/local/etc/authlib/authmysqlrc
И ещё:

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

sockstat | grep mysql
P.S. Для подключения к серверу mysql требуется:

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

1. Знать где он запущен. (IP Адрес и порт сервера mysql)
Если на этом же компьютере, тогда лучше использовать просто socket, вместо указания IP:ПОРТ.
2. Знать под каким пользователем аутентифицируешься.
3. В какой базе и что нужно сделать. (выборку, вставку и т.п.)

Re: трабл с приемом почты

Добавлено: 2008-08-25 10:52:20
vovchella
gate# sockstat | grep mysql
mysql mysqld 947 14 tcp4 127.0.0.1:3306 *:*
mysql mysqld 947 15 stream /tmp/mysql.sock

cat /usr/local/etc/authlib/authmysqlrc

MYSQL_SERVER localhost
MYSQL_USERNAME postfix
MYSQL_PASSWORD ххххх
MYSQL_SOCKET var/mysql/mysql.sock - поставил уже /tmp/mysql.sock
MYSQL_PORT 3306
MYSQL_OPT 0
MYSQL_DATABASE postfix
MYSQL_USER_TABLE mailbox
MYSQL_CRYPT_PWFIELD password
MYSQL_UID_FIELD '1981'
MYSQL_GID_FIELD '1981'
MYSQL_LOGIN_FIELD username
MYSQL_HOME_FIELD '/var/spool/mail'
MYSQL_NAME_FIELD name
MYSQL_MAILDIR_FIELD maildir
MYSQL_QUOTA_FIELD quota
MYSQL_WHERE_CLAUSE active='1'

после смены MYSQL_SOCKET var/mysql/mysql.sock на /tmp/mysql.sock в маиллоге только
Aug 25 12:01:05 gate courier-imap: LOGIN FAILED, user=х@х.ru, ip=[192.168.х.х]

= cat /usr/local/etc/courier-imap/pop3d | grep -v ^# | grep -v ^$
PIDFILE=/var/run/pop3d.pid
MAXDAEMONS=40
MAXPERIP=4
POP3AUTH="PLAIN LOGIN CRAM-MD5"
POP3AUTH_ORIG="PLAIN LOGIN CRAM-MD5"
POP3AUTH_TLS="PLAIN LOGIN CRAM-MD5"
POP3AUTH_TLS_ORIG="PLAIN LOGIN CRAM-MD5"
POP3_PROXY=0
PORT=110
ADDRESS=192.168.х.х
TCPDOPTS="-nodnslookup -noidentlookup"
LOGGEROPTS="-name=courier-imap"
POP3DSTART=YES
MAILDIRPATH=Maildir

Re: трабл с приемом почты

Добавлено: 2008-08-25 11:54:38
dikens3

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

authdaemonrc
...
DEBUG_LOGIN=2
authlog смотри.

Re: трабл с приемом почты

Добавлено: 2008-08-25 11:57:33
vovchella
нет такого ... authlog
зы. как можно посмотреть запрос к БД который посылается при этом?

Re: трабл с приемом почты

Добавлено: 2008-08-25 12:18:54
dikens3
vovchella писал(а):нет такого ... authlog
А какой есть?
vovchella писал(а):зы. как можно посмотреть запрос к БД который посылается при этом?
Найдёшь ответ на первый вопрос, получишь ответ на второй.

Re: трабл с приемом почты

Добавлено: 2008-08-25 13:15:46
vovchella
в cat /var/log/auth.log последная запись - запись при входе в систему, больше ничего не пишет(дебаг=2)
в маиллог Aug 25 14:08:41 gate courier-imap: LOGIN FAILED, user=х@х.ru, ip=[192.168.х.х]
Aug 25 14:08:41 gate courier-imap: authentication error: Input/output error

Re: трабл с приемом почты

Добавлено: 2008-08-25 14:30:22
dikens3
vovchella писал(а):cat /var/log/auth.log ничего не пишет(дебаг=2)
Не верю.

Re: трабл с приемом почты

Добавлено: 2008-08-25 15:02:11
vovchella
последнее auth:
Aug 25 15:53:12 gate sshd[1058]: Address 192.168.х.х maps to localhost, but this does not map back to the address - POSSIBLE BREAK-IN ATTEMPT!
Aug 25 15:53:14 gate sshd[1058]: Accepted keyboard-interactive/pam for yyy from 192.168.х.х port 2476 ssh2
Aug 25 15:53:19 gate su: yyy to root on /dev/ttyp0

maillog
Aug 25 15:56:36 gate courier-imap: LOGIN FAILED, user=хх@х.ru, ip=[192.168.х.х]

mysql лог
2 Connect postfix@localhost on
2 Init DB postfix
2 Query SELECT username, password, "", '1981', '1981', '/var/spool/mail', maildir, quota, name, "" FROM mailbox WHERE username = 'ххх@хх.ru' AND (active='1')
т.е. запрос верный(только что за "", '1981', '1981', '/var/spool/mail', maildir, quota, name, "" )

Re: трабл с приемом почты

Добавлено: 2008-08-25 16:01:21
dikens3
только что за "", '1981', '1981', '/var/spool/mail', maildir, quota, name, ""

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

MYSQL_UID_FIELD '1981'
MYSQL_GID_FIELD '1981'
Обычно тут 26 и 6 (mailnull:mail)

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

mysql> select '1981','1981';
+------+------+
| 1981 | 1981 |
+------+------+
| 1981 | 1981 |
+------+------+
1 row in set (0.00 sec)
Результатом нормальной аутентификации должна стать 1 строка, в которой содержатся все данные о пользователе.
/var/spool/mail
courier-imap работает только с maildir, скорее всего не хватает / в конце.
Вообще в mysql есть поле maildir, из которого берутся данные и добавляются к указанным в MYSQL_HOME_FIELD. Как у тебя выглядят данные в maildir? При соединении у тебя должно быть:
/var/spool/mail/что_там/
Т.е. данные находящиеся в mysql с полем maildir должны начинаться со / и заканчиваться на /.

И ещё, нельзя забрать почту, пока не создана папка. (т.е. необходимо отправить 1 письмо пользователю)

Re: трабл с приемом почты

Добавлено: 2008-08-25 16:13:00
vovchella
ящики созданы, письма есть, сами папки на харде тоже.
зы. да, в DB maildir имеет значение домен/юзер/

Re: трабл с приемом почты

Добавлено: 2008-08-25 16:13:30
ProFTP
пароли в базе в открытом виде?

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

попробуйте сюда написать

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

ADDRESS=0

или

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

ADDRESS=127.0.0.1

Re: трабл с приемом почты

Добавлено: 2008-08-25 16:14:39
dikens3
vovchella писал(а):ящики созданы, письма есть, сами папки на харде тоже.
зы. где не хватает / в конце. в каком-то конфиге?
Как у тебя выглядят данные в maildir?

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

Вывод select maildir from mailbox where username = 'xx@xxx.xx';

Re: трабл с приемом почты

Добавлено: 2008-08-25 16:22:20
vovchella
все есть, БД есть, пароли открыто хранятся.
ADDRESS=0 или локал не улучшил ситуацию.

Re: трабл с приемом почты

Добавлено: 2008-08-25 16:23:45
dikens3
MYSQL_HOME_FIELD '/var/spool/mail'
maildir имеет значение домен/юзер/
MYSQL_HOME_FIELD '/var/spool/mail/'
+ смотри права на файлы.

Re: трабл с приемом почты

Добавлено: 2008-08-25 16:29:54
vovchella
теперь с /
17:25:54 1 Connect postfix@localhost on
1 Init DB postfix
1 Query SELECT username, password, "", '1981', '1981', '/var/spool/mail/', maildir, quota, name, "" FROM mailbox WHERE username = 'x@x' AND (active='1')

права на spool - root -wheel
mail - virt-virt
domen - vitr-virt
user - virt-virt
чтение и запись доступна
из постфикс админа письмо полылается норм, создаетс все в БД, и при получении письма папка создается тоже

Re: трабл с приемом почты

Добавлено: 2008-08-25 20:01:12
dikens3
Рассказал всё что знал.

http://www.shkodenko.kiev.ua/index.php? ... tent_id=55

Re: трабл с приемом почты

Добавлено: 2008-08-26 9:52:58
vovchella
трабл щас такой:
/usr/local/etc/rc.d/courier-authdaemond start
Starting courier_authdaemond.
но в cat /var/log/maillog | grep authdaemond - пусто
не стартует чтоль нормально?

Re: трабл с приемом почты

Добавлено: 2008-08-26 9:55:13
dikens3
Не всё, что запускается сообщает в логи об этом. (Кстати, логи он вроде пишет в auth.log)

ps -aux | grep authdaemond