Exim+Postgre all@mydomain.ru

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

Модератор: xM

Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
Цыс
проходил мимо
Сообщения: 5
Зарегистрирован: 2010-06-23 8:56:07

Exim+Postgre all@mydomain.ru

Непрочитанное сообщение Цыс » 2010-06-23 9:00:30

Имеется сервер на базе фрибзд 7.2, экзим и постгре. Требуется настроить эту систему чтобы при отправке на all@mydomain.ru все пользователи получили это письмо. Задача простая, но осложняется тем что у меня постгре. Для майскюэля нагуглил инструкцию но адаптировать ее к своей ситуации у меня ума не хватило.

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

# Список всех E-Mail адресов для рассылки по адресу all
MYSQL_ALL      = SELECT CONCAT(username,"@",domain) FROM users
# Рассылка
all_mysql:
  driver = redirect
  allow_fail
  allow_defer
  condition = ${if eq{$local_part}{all}{yes}{no}}
  data = ${lookup mysql{MYSQL_ALL}}
Через файл aliases фокус типа all: *@mydomain.ru не прокатил. Как мне это реализовать с наименьшими потерями? Организация большая и сервак боевой. Его простой более 10-15 минут мне с рук не сойдет т.е. искать решение путем долгих экспериментов возможности нет :). Заранее спасибо.

Хостинговая компания 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/
Выделенные сервера, Россия, Москва, от 2460 рублей (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
стреляли...
Сообщения: 35045
Зарегистрирован: 2004-10-18 14:25:19
Откуда: Made in USSR
Контактная информация:

Re: Exim+Postgre all@mydomain.ru

Непрочитанное сообщение Alex Keda » 2010-06-23 11:32:33

конфиг покажите.
в общем - должно и так работать
Убей их всех! Бог потом рассортирует...

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

Re: Exim+Postgre all@mydomain.ru

Непрочитанное сообщение dikens3 » 2010-06-23 12:15:56

Тупо копировать не стоит, скорее всего у вас таблица другая или данные там другие.
Приведите строку какую-нибудь из postrgesql где ваши пользователи, а запрос можно и поправить.

Рекомендую сделать ограничение для некоторых отправителей на адрес ALL, т.к. особо тупые пользователи начинают писать ответ (а отправитель ALL), и ответ опять попадает ко всем пользователям. Либо правьте отправителя/получателя для решения этой проблемы.

Смысла сервак останавливать нет, есть отладка (в тех же полезных скриптах). Добавьте роутер и запустите отладку. Реальной доставки не будет.
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Цыс
проходил мимо
Сообщения: 5
Зарегистрирован: 2010-06-23 8:56:07

Re: Exim+Postgre all@mydomain.ru

Непрочитанное сообщение Цыс » 2010-06-23 13:20:03

База называется exim. Таблица с пользователями accounts. Поле с логином login. Логины в формате vasiliypupkin@superfirma.ru. Полагаю, эти данные были нужны. Домен всего один, такчто поля domain там нет. Как добыть прям строку из этой таблицы честно говоря не знаю :pardon: пытался найти чтото типа админки от базы в консоли но безуспешно...

Насчет конфига - я ж в нем еще ничего не менял дабы не валять сервак... такчто там ничего относящегося к теме еще нету.

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

Re: Exim+Postgre all@mydomain.ru

Непрочитанное сообщение dikens3 » 2010-06-23 21:38:34

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

# Список всех E-Mail адресов для рассылки по адресу all
MYSQL_ALL      = SELECT login FROM accounts

# Рассылка
all_mysql:
  driver = redirect
  allow_fail
  allow_defer
  domains = +local_domains   <-- если есть такая переменная
  condition = ${if eq{$local_part}{all}{yes}{no}}
  data = ${lookup mysql{MYSQL_ALL}}
Лучше установить FreeBSD, чем потратить 30 лет на Linux'ы и выяснить какой из них хуже.

Цыс
проходил мимо
Сообщения: 5
Зарегистрирован: 2010-06-23 8:56:07

Re: Exim+Postgre all@mydomain.ru

Непрочитанное сообщение Цыс » 2010-06-24 10:57:56

Попробовал этот конфиг. Письмо на адрес all@domain.ru уходит, сервак ошибок не возвращает, но оно никуда не приходит. Вставил это все после
begin routers. Я же правильно все понял?

Цыс
проходил мимо
Сообщения: 5
Зарегистрирован: 2010-06-23 8:56:07

Re: Exim+Postgre all@mydomain.ru

Непрочитанное сообщение Цыс » 2010-06-24 11:21:19

Лог экзима говорит следующее:
R ==all_mysql defer (-1): failed to expand "${lookup mysql{SELECT login FROM accounts}}": lookup type "mysql" is not available (not in the binary - check buildtime LOOKUP configuration)

Может не mysql а чтото типа pgsql надо??

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

Re: Exim+Postgre all@mydomain.ru

Непрочитанное сообщение dikens3 » 2010-06-24 12:24:16

Может не mysql а чтото типа pgsql надо??
ну да, логично.

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

Цыс
проходил мимо
Сообщения: 5
Зарегистрирован: 2010-06-23 8:56:07

Re: Exim+Postgre all@mydomain.ru

Непрочитанное сообщение Цыс » 2010-06-24 12:36:06

Поменял mysql на pgsql все сработало. Спасибо! А насчет нанять админа - может в ваших глазах я и не достоин носить это гордое звание, но я - он и есть. По крайней мере, я продолжаю работать над собой и доставать глупыми вопросами всяких гуру вроде вас ;-)