Локальный почтовый сервер
Модератор: xM
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
- лейтенант
- Сообщения: 619
- Зарегистрирован: 2014-06-30 11:23:24
Локальный почтовый сервер
В конфигурации EXIM строка tls_advertise_hosts у меня закомментирована
Получается необходимо установить сертификат? Раньше такого не делал и всё работало...
Получается необходимо установить сертификат? Раньше такого не делал и всё работало...
Услуги хостинговой компании Host-Food.ru
Тарифы на хостинг в России, от 12 рублей: https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.: https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах: https://www.host-food.ru/domains/
-
- лейтенант
- Сообщения: 619
- Зарегистрирован: 2014-06-30 11:23:24
Локальный почтовый сервер
Не могу разобраться, почему EXIM спрашивает про сертификат, ведь в файле конфигурации все упоминания про TLS закомментированы. Может вообще пересобрать EXIM без опции TLS?
Может это из за версии EXIM 4.87. На другом сервере использую 4.86, там EXIM вообще не спрашивает про сертификат...
Отправлено спустя 2 часа 31 минуту 31 секунду:
Сгенерировал ключи...
Теперь ЛОГ EXIM при отправке выглядит так:
Может это из за версии EXIM 4.87. На другом сервере использую 4.86, там EXIM вообще не спрашивает про сертификат...
Отправлено спустя 2 часа 31 минуту 31 секунду:
Сгенерировал ключи...
Теперь ЛОГ EXIM при отправке выглядит так:
Код: Выделить всё
2016-10-04 11:36:40 Warning: purging the environment.
Suggested action: use keep_environment.
2016-10-04 11:36:40 1bqy7e-0000Fs-37 removed by root
2016-10-04 11:36:40 1bqy7e-0000Fs-37 Completed
2016-10-04 11:37:24 1brKHz-0000Od-SW <= ***@mail.ru H=(COMP) [192.168.10.1] I=[192.168.10.4]:25 P=esmtp S=360
id=57F36729.7050501@domen.local from <reken@domen.local> for ***@yandex.ru
2016-10-04 11:37:24 1brKHz-0000Od-SW == ***@yandex.ru <***@yandex.ru> R=dovecot_user defer (-1): condition check
lookup defer
2016-10-04 11:37:24 1brKHz-0000Od-SW ** ***@yandex.ru: retry timeout exceeded
2016-10-04 11:37:24 1brKI0-0000Og-6U <= <> R=1brKHz-0000Od-SW U=mailnull P=local S=1372 from <> for ***@mail.ru
2016-10-04 11:37:24 1brKHz-0000Od-SW Completed
2016-10-04 11:37:24 1brKI0-0000Og-6U == ***@mail.ru R=dovecot_user defer (-1): condition check lookup defer
- xM
- ст. лейтенант
- Сообщения: 1316
- Зарегистрирован: 2009-01-15 23:57:41
- Откуда: Königsberg
- Контактная информация:
Локальный почтовый сервер
Это означает что используется её значение по умолчанию, а оно соответствует
Код: Выделить всё
tls_advertise_hosts = *
IT voodoo blog https://kostikov.co
-
- лейтенант
- Сообщения: 619
- Зарегистрирован: 2014-06-30 11:23:24
Локальный почтовый сервер
Уже есть сертификат, пытаюсь разобраться теперь дальше, почему всё таки exim не отрабатывает должным образом...xM писал(а):Т.е. вы заявляете, что поддерживаете TLS но не имеете при этом сертификатов.
-
- лейтенант
- Сообщения: 619
- Зарегистрирован: 2014-06-30 11:23:24
Локальный почтовый сервер
Замкнутый круг какой то... Не могу понять почему почта не уходит и не приходит...
EXIM по прежнему загоняет отправленное письмо в очередь и всё:
И ещё ругается что 25 порт занят
Не могу понять в каком направлении "чинить" этот сервак... Думаю файрвол тут не причем, fetchmail забирает же почту...Думаю если бы файрвол блокировал бы, то и fetchmail ничего бы не забрал по 110 порту POP3...
В общем тупик
EXIM по прежнему загоняет отправленное письмо в очередь и всё:
Код: Выделить всё
2016-10-05 09:13:59 Warning: purging the environment.
Suggested action: use keep_environment.
2016-10-05 09:13:59 exim 4.87 daemon started: pid=962, -q30m, listening for SMTP on port 25 (IPv4) and for SMTPS on port 9025 (IPv4)
2016-10-05 09:14:01 1brKI0-0000Og-6U == ***@mail.ru R=dovecot_user defer (-1): condition check lookup defer
2016-10-05 09:43:59 1brKI0-0000Og-6U == ***@mail.ru routing defer (-51): retry time not reached
2016-10-05 10:13:59 1brKI0-0000Og-6U == ***@mail.ru routing defer (-51): retry time not reached
Код: Выделить всё
2016-10-04 15:13:31 socket bind() to port 25 for address (any IPv4) failed: Address already in use: waiting 30s before trying again (1 more try)
2016-10-04 15:14:01 socket bind() to port 25 for address (any IPv4) failed: Address already in use: daemon abandoned
В общем тупик
-
- лейтенант
- Сообщения: 619
- Зарегистрирован: 2014-06-30 11:23:24
Локальный почтовый сервер
Всё ещё пробую запустить почтовый сервак...
Подскажите мне пожалуйста, я правильно понимаю "схему" сервака? В следующей связке Fetchmail+Dovecot+Exim+Postfixadmin
1) Fetchmail забирает почту с ящика mail.ru по протоколу POP3
2) Далее Fetchmail отдает полученное письмо в Dovecot
3) Dovecot раскладывает письмо по всем локальным ящикам пользователей
4) EXIM забирает почту из ящиков пользователей и отправляет по клиентам
5) Так же EXIM отправляет почту от клиентов, при этом выполняет подмену адреса, например с user@domen.local на ***@mail.ru
6) Postfixadmin нужен для удобства создания пользовательских ящиков, для чего использует Mysql, что бы хранить там список пользователей и т.д...
Я правильно понимаю эту схему? Подскажите пожалуйста...
Отправлено спустя 42 минуты 42 секунды:
Хотя нет... что то я напутал... Вот как получается правильно:
1) Fetchmail забирает почту с ящика mail.ru по протоколу POP3
2) Далее Fetchmail отдает полученное письмо EXIMу
3) Exim раскидывает почту по ящикам Dovecot.
4) Клиенты в свою очередь, забирают почту из ящиков Dovecot
5) Так же EXIM отправляет почту от клиентов, при этом выполняет подмену адреса, например с user@domen.local на ***@mail.ru
6) Postfixadmin нужен для удобства создания пользовательских ящиков, для чего использует Mysql, что бы хранить там список пользователей и т.д...
Вроде бы теперь правильно понял?
Подскажите мне пожалуйста, я правильно понимаю "схему" сервака? В следующей связке Fetchmail+Dovecot+Exim+Postfixadmin
1) Fetchmail забирает почту с ящика mail.ru по протоколу POP3
2) Далее Fetchmail отдает полученное письмо в Dovecot
3) Dovecot раскладывает письмо по всем локальным ящикам пользователей
4) EXIM забирает почту из ящиков пользователей и отправляет по клиентам
5) Так же EXIM отправляет почту от клиентов, при этом выполняет подмену адреса, например с user@domen.local на ***@mail.ru
6) Postfixadmin нужен для удобства создания пользовательских ящиков, для чего использует Mysql, что бы хранить там список пользователей и т.д...
Я правильно понимаю эту схему? Подскажите пожалуйста...
Отправлено спустя 42 минуты 42 секунды:
Хотя нет... что то я напутал... Вот как получается правильно:
1) Fetchmail забирает почту с ящика mail.ru по протоколу POP3
2) Далее Fetchmail отдает полученное письмо EXIMу
3) Exim раскидывает почту по ящикам Dovecot.
4) Клиенты в свою очередь, забирают почту из ящиков Dovecot
5) Так же EXIM отправляет почту от клиентов, при этом выполняет подмену адреса, например с user@domen.local на ***@mail.ru
6) Postfixadmin нужен для удобства создания пользовательских ящиков, для чего использует Mysql, что бы хранить там список пользователей и т.д...
Вроде бы теперь правильно понял?
- xM
- ст. лейтенант
- Сообщения: 1316
- Зарегистрирован: 2009-01-15 23:57:41
- Откуда: Königsberg
- Контактная информация:
Локальный почтовый сервер
по п.3 раскладывать может и Exim, и Dovecot (через Exim) - от настройки зависит.
Ловите кто у вас 25 порт использует. Странно, что в
у вас ничего нет.
Ловите кто у вас 25 порт использует. Странно, что в
Код: Выделить всё
sockstat | grep :25
IT voodoo blog https://kostikov.co
-
- лейтенант
- Сообщения: 619
- Зарегистрирован: 2014-06-30 11:23:24
Локальный почтовый сервер
около 10 раз пересмотрел конфиг EXIM, и наконец токи обнаружил ошибку... А была она вот где:
В begin routers где EXIM доставляет почту в Dovecot , я пропустил значек $
Вот так: '${quote_mysql:@$domain}'}
Теперь почта уходит...
А вот с получением почты проблема. Вот что в логах EXIM вижу:
На права что ли ругается? Или что ему не нравится? Подскажите пожалуйста
В begin routers где EXIM доставляет почту в Dovecot , я пропустил значек $
Вот так: '${quote_mysql:@$domain}'}
Теперь почта уходит...
А вот с получением почты проблема. Вот что в логах EXIM вижу:
Код: Выделить всё
2016-10-07 15:39:19 1bsTUl-0000Vy-Jz <new@domen.local>: dovecot_delivery transport output: Can't open log file /var/log/dovecot.log: Permission denied
2016-10-07 15:39:19 1bsTUl-0000Vy-Jz == new@domen.local (new@domen.local) <mail@domen.local> R=dovecot_user T=dovecot_delivery defer (0): Child process of dovecot_delivery transport returned 75 (could mean temporary error) from command: /usr/local/libexec/dovecot/deliver
- xM
- ст. лейтенант
- Сообщения: 1316
- Зарегистрирован: 2009-01-15 23:57:41
- Откуда: Königsberg
- Контактная информация:
Локальный почтовый сервер
Значит у вас раскладывает почту Dovecot и он не может это сделать.
Скорее всего, папки нет куда складывать.
Скорее всего, папки нет куда складывать.
IT voodoo blog https://kostikov.co
-
- лейтенант
- Сообщения: 619
- Зарегистрирован: 2014-06-30 11:23:24
Локальный почтовый сервер
Да, раскладывает Dovecot. В конфиге Dovecot я указал путь куда закидывать почту:xM писал(а):Значит у вас раскладывает почту Dovecot и он не может это сделать.
Скорее всего, папки нет куда складывать.
Код: Выделить всё
mail_location = maildir:/var/mail/exim/%d/%n
После того как я добавил права +S на файл /usr/local/libexec/dovecot/deliver в логах при получении почты вижу следующее:
Код: Выделить всё
2016-10-07 16:49:42 1bsUas-0000Ya-56 <new@domen.local>: dovecot_delivery transport output:
/usr/local/libexec/dovecot/deliver must not be both world-executable and setuid-root. This allows root exploits. See
http://wiki.dovecot.org/LDA#multipleuids
2016-10-07 16:49:42 1bsUas-0000Ya-56 == new@domen.local (new@domen.local) <mail@domen.local> R=dovecot_user
T=dovecot_delivery defer (0): Child process of dovecot_delivery transport returned 75 (could mean temporary error)
from command: /usr/local/libexec/dovecot/deliver
- alex3
- лейтенант
- Сообщения: 872
- Зарегистрирован: 2006-11-20 16:47:56
- Откуда: Переславль
- Контактная информация:
Локальный почтовый сервер
Вы дали права рута. На это довекот и ругается. Обычно все почтовые программы работают под другим пользователем, например mailnull, и права на директории и файлы раздаются исходя из этого.
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.
-
- лейтенант
- Сообщения: 619
- Зарегистрирован: 2014-06-30 11:23:24
Локальный почтовый сервер
Вы имеете ввиду, то что я добавил +S ? И из-за этого ругается?alex3 писал(а):Вы дали права рута. На это довекот и ругается. Обычно все почтовые программы работают под другим пользователем, например mailnull, и права на директории и файлы раздаются исходя из этого.
- alex3
- лейтенант
- Сообщения: 872
- Зарегистрирован: 2006-11-20 16:47:56
- Откуда: Переславль
- Контактная информация:
Локальный почтовый сервер
Reken писал(а):Код: Выделить всё
usr/local/libexec/dovecot/deliver must not be both world-executable and setuid-root. This allows root exploits. See http://wiki.dovecot.org/LDA#multipleuids
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.
-
- лейтенант
- Сообщения: 619
- Зарегистрирован: 2014-06-30 11:23:24
Локальный почтовый сервер
Отобрал права s
Теперь при получении почты, вернулся к прошлой ошибке. Привожу лог:
Похоже ругается, что не может записать ошибку в лог Dovecot а так же ругается на deliver...
Сможете что то подсказать?
Теперь при получении почты, вернулся к прошлой ошибке. Привожу лог:
Код: Выделить всё
2016-10-10 11:20:14 1btUsg-0000MG-67 <= ***@yandex.ru H=(free.domen.local) [127.0.0.1] I=[127.0.0.1]:25 P=esmtp S=2114 id=8281451476086613@web4o.yandex.ru from <***@yandex.ru> for mail@domen.local
2016-10-10 11:20:14 1btUsg-0000MG-67 <reken@domen.local>: dovecot_delivery transport output: Can't open log file /var/log/dovecot.log: Permission denied
2016-10-10 11:20:14 1btUsg-0000MG-67 == reken@domen.local (reken@domen.local) <mail@domen.local> R=dovecot_user T=dovecot_delivery defer (0): Child process of dovecot_delivery transport returned 75 (could mean temporary error) from command: /usr/local/libexec/dovecot/deliver
2016-10-10 11:20:14 1btUsg-0000MG-67 <new@domen.local>: dovecot_delivery transport output: Can't open log file /var/log/dovecot.log: Permission denied
2016-10-10 11:20:14 1btUsg-0000MG-67 == new@domen.local (new@domen.local) <mail@domen.local> R=dovecot_user T=dovecot_delivery defer (0): Child process of dovecot_delivery transport returned 75 (could mean temporary error) from command: /usr/local/libexec/dovecot/deliver
Сможете что то подсказать?
- alex3
- лейтенант
- Сообщения: 872
- Зарегистрирован: 2006-11-20 16:47:56
- Откуда: Переславль
- Контактная информация:
Локальный почтовый сервер
от какого пользователя запускается довекот? он не может записать лог
Отправлено спустя 8 минут 18 секунд:
у Вас какой довекот, первый или второй? неплохо было бы конфиг посмотреть.
и из-за этого деливер дает ошибкуReken писал(а):Код: Выделить всё
dovecot_delivery transport output: Can't open log file /var/log/dovecot.log: Permission denied
Отправлено спустя 8 минут 18 секунд:
у Вас какой довекот, первый или второй? неплохо было бы конфиг посмотреть.
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.
-
- лейтенант
- Сообщения: 619
- Зарегистрирован: 2014-06-30 11:23:24
Локальный почтовый сервер
Использую dovecot (первый)alex3 писал(а):от какого пользователя запускается довекот? он не может записать логи из-за этого деливер дает ошибкуReken писал(а):Код: Выделить всё
dovecot_delivery transport output: Can't open log file /var/log/dovecot.log: Permission denied
Отправлено спустя 8 минут 18 секунд:
у Вас какой довекот, первый или второй? неплохо было бы конфиг посмотреть.
В довекоте такая строка:
Код: Выделить всё
login_user = dovecot
Код: Выделить всё
-rw------- 1 root wheel 56736 Oct 10 08:55 /var/log/dovecot.log
- alex3
- лейтенант
- Сообщения: 872
- Зарегистрирован: 2006-11-20 16:47:56
- Откуда: Переславль
- Контактная информация:
Локальный почтовый сервер
в конфиге довекота есть такие строки?
что там написано?
ничего менять не надо. довекот должен через сислог писать.
и конфиг /etc/syslog.conf , если можно...
Код: Выделить всё
log_path=
info_log_path=
syslog_facility=
ничего менять не надо. довекот должен через сислог писать.
и конфиг /etc/syslog.conf , если можно...
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.
-
- лейтенант
- Сообщения: 619
- Зарегистрирован: 2014-06-30 11:23:24
Локальный почтовый сервер
Строки есть
Выглядят так:
Содержание syslog.conf
Выглядят так:
Код: Выделить всё
#log_path=
info_log_path= /var/log/dovecot.log
#syslog_facility= mail
Код: Выделить всё
# $FreeBSD: releng/9.3/etc/syslog.conf 238473 2012-07-15 10:55:43Z brueffer $
#
# Spaces ARE valid field separators in this file. However,
# other *nix-like systems still insist on using tabs as field
# separators. If you are sharing this file between systems, you
# may want to use only tabs as field separators here.
# Consult the syslog.conf(5) manpage.
*.err;kern.warning;auth.notice;mail.crit /dev/console
*.notice;authpriv.none;kern.debug;lpr.info;mail.crit;news.err /var/log/message
s
security.* /var/log/security
auth.info;authpriv.info /var/log/auth.log
mail.info /var/log/maillog
lpr.info /var/log/lpd-errs
ftp.info /var/log/xferlog
cron.* /var/log/cron
*.=debug /var/log/debug.log
*.emerg *
# uncomment this to log all writes to /dev/console to /var/log/console.log
# touch /var/log/console.log and chmod it to mode 600 before it will work
#console.info /var/log/console.log
# uncomment this to enable logging of all log messages to /var/log/all.log
# touch /var/log/all.log and chmod it to mode 600 before it will work
#*.* /var/log/all.log
# uncomment this to enable logging to a remote loghost named loghost
#*.* @loghost
# uncomment these if you're running inn
# news.crit /var/log/news/news.crit
# news.err /var/log/news/news.err
# news.notice /var/log/news/news.notice
!ppp
*.* /var/log/ppp.log
!*
- alex3
- лейтенант
- Сообщения: 872
- Зарегистрирован: 2006-11-20 16:47:56
- Откуда: Переславль
- Контактная информация:
Локальный почтовый сервер
и newsyslog.conf для кучи
интересует строка с /var/log/dovecot.conf
интересует строка с /var/log/dovecot.conf
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.
-
- лейтенант
- Сообщения: 619
- Зарегистрирован: 2014-06-30 11:23:24
Локальный почтовый сервер
Там нет такой строки...alex3 писал(а):и newsyslog.conf для кучи
интересует строка с /var/log/dovecot.conf
Отправлено спустя 1 час 31 минуту 38 секунд:
Посмотрел сейчас другой почтовый сервак, там на каталог /var/log/dovecot.log даны права 777 (rwxrwxrwx). С такими правами конечно всё работает...
Но наверное это неправильно?
- alex3
- лейтенант
- Сообщения: 872
- Зарегистрирован: 2006-11-20 16:47:56
- Откуда: Переславль
- Контактная информация:
Локальный почтовый сервер
добавь в newsyslog.conf строчку вида
потом сделай
и перезапусти newsyslog
Код: Выделить всё
/var/log/dovecot.log mailnull:mail 640 7 * @T00 JC
Код: Выделить всё
chown mailnull:mail /var/log/dovecot.log
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.
- xM
- ст. лейтенант
- Сообщения: 1316
- Зарегистрирован: 2009-01-15 23:57:41
- Откуда: Königsberg
- Контактная информация:
Локальный почтовый сервер
Dovecot, Exim и сопутствующие процессы запускайте от одного пользователя. У меня это mailnull.
Это снимет вопрос с правами.
Это снимет вопрос с правами.
IT voodoo blog https://kostikov.co
- alex3
- лейтенант
- Сообщения: 872
- Зарегистрирован: 2006-11-20 16:47:56
- Откуда: Переславль
- Контактная информация:
Локальный почтовый сервер
ой, да...проглядел, что довекот от другого юзера работает...
Код: Выделить всё
login_user = mailnull
Если ipfw можно считать речью обычного человека, то pf - речь политика. За каждой ошибкой -ядерный песец.
-
- лейтенант
- Сообщения: 619
- Зарегистрирован: 2014-06-30 11:23:24
Локальный почтовый сервер
Ну вот и всё... Забегала почта и на отправку и на получение.
Всем спасибо кто помогал мне.
По поводу login_user = mailnull я уже понял. А EXIM у меня от mailnull изначально работает. Так что теперь и EXIM и DOVECOT от mailnull...
Лучше ещё несколько раз просмотрю конфиги EXIM и DOVECOT, что бы уже точно разобраться, что там к чему...
Всем спасибо кто помогал мне.
По поводу login_user = mailnull я уже понял. А EXIM у меня от mailnull изначально работает. Так что теперь и EXIM и DOVECOT от mailnull...
Лучше ещё несколько раз просмотрю конфиги EXIM и DOVECOT, что бы уже точно разобраться, что там к чему...
-
- лейтенант
- Сообщения: 619
- Зарегистрирован: 2014-06-30 11:23:24
Локальный почтовый сервер
Немного поломался у меня тестовый почтовый сервер...
Поломался после следующего:
Я обновил mysq56l-server и mysql56-client до последней версии 5.6.33 . Так же обновил postfixadmin до последней версии 3.0
Обновлял при помощи portupgrade -R
После обновления все внесенные данные в файл /usr/local/www/postfixadmin/config.inc.php были сброшены на умолчание...
Я переписал всё как и было, в том числе и строку: $CONF['setup_password'] = ‘много букв и цифр';
После всего этого, при попытке получить почту на клиенте, получаю ошибку:
В логе dovecot следующее:
Сможете пожалуйста подсказать, как исправить ошибку? Я так понимаю dovecot на логин и пароль ругается?
Поломался после следующего:
Я обновил mysq56l-server и mysql56-client до последней версии 5.6.33 . Так же обновил postfixadmin до последней версии 3.0
Обновлял при помощи portupgrade -R
После обновления все внесенные данные в файл /usr/local/www/postfixadmin/config.inc.php были сброшены на умолчание...
Я переписал всё как и было, в том числе и строку: $CONF['setup_password'] = ‘много букв и цифр';
После всего этого, при попытке получить почту на клиенте, получаю ошибку:
Код: Выделить всё
Не удалось отправить пароль для пользователя reken@domen.local Почтовый сервер "192.168.10.4" ответил Internal login failure. Refer to server log for more information
Код: Выделить всё
Nov 08 12:46:56 pop3-login: Info: Internal login failure (auth failed, 1 attempts): user=<reken@domen.local>, method=PLAIN, rip=192.168.10.1, lip=192.168.10.4