Postfix-mysql-smtpd-cyrus-sasl под Slackware (Как поставить сабж.)

SLAX, Deep Style, ZenWalk

Модератор: Модераторы разделов

vintyara
Сообщения: 71
ОС: FreeBSD

Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение vintyara »

Тема изъезжена, есть множество документашек и прочей литературы. Один недостаток. Нигде не нашёл примеров под Слакварь. В основном описывается по FreeBSD & ALTLinux. Там сборка идёт с рпм пакетов etc.

Подскажите плиз линки на описание по установке на Слакварь. Т.к. я новичёк, читать как это в ФриБСД и делать то же в слакваре у меня не получается. Переходить на другой дистрибутив - не выход.
Спасибо сказали:
Lazy
Сообщения: 115
ОС: RHEL 4, FreeBSD 5.x, Slackware

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение Lazy »

vintyara писал(а):
07.01.2007 00:58
примеров под Слакварь. В основном описывается по FreeBSD & ALTLinux. Там сборка идёт с рпм пакетов etc.

а в чем конкретно проблема-то? ты не знаешь, как ставить софт на слакварь? или что-то с настройкой?
Спасибо сказали:
vintyara
Сообщения: 71
ОС: FreeBSD

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение vintyara »

Lazy
Я не знаю как прикрутить к постфиксу mysql, smtpd, cyrus и sasl. Для начала я попробовал поставить сам postfix. Это зделать мне удалось. Работеат, даже письма умеет отправлять :)
Далее хочу прикрутить то, что писал выше. Не знаю самого элементарного - нужно "пересобирать" постфикс, или достаточно в опциях конфигурационных файло внести поправки, чтобы вся связка заработала (mysql, smtpd, cyrus и sasl у меня установлены были ещё до установки постфикса) ?
Спасибо сказали:
Lazy
Сообщения: 115
ОС: RHEL 4, FreeBSD 5.x, Slackware

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение Lazy »

vintyara писал(а):
07.01.2007 11:44
Lazy
Далее хочу прикрутить то, что писал выше. Не знаю самого элементарного - нужно "пересобирать" постфикс, или достаточно в опциях конфигурационных файло внести поправки, чтобы вся связка заработала (mysql, smtpd, cyrus и sasl у меня установлены были ещё до установки постфикса) ?

для работы нужны по сути 3 пакета: postfix, mysql, cyrus-sasl2.
если не ошибаюсь, то для работы с mysql есть пакет postfix-mysql, через swaret или slap-get находится и ставится на ура. соответственно надо поставить сам mysql, настрить его и создать базу для почты. тут, думаю, проблем тоже не должно возникнуть.
пересборка потребуется пакета cyrus-sasl, да и то только для того, что бы пароли в БД хранились в зашифрованном виде. все остальное делается правкой конфигурационных файлов. пробуй. будут проблемы - пиши.
Спасибо сказали:
vintyara
Сообщения: 71
ОС: FreeBSD

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение vintyara »

Так а постфикс надо пересобирать с поддержкой мускуля ?
За шпаргалку взял вот эту статью.

Я вот добавил в main.cf :

disable_vrfy_command = yes
smtp_sasl_auth_enable = yes
smtp_sasl_password_maps = mysql:/usr/local/etc/postfix/mysql_sasl.cf
smtp_sasl_security_options = noanonymous, noplaintext, noactive, nodictionary
smtpd_helo_required = yes
smtpd_helo_restrictions = permit_mynetworks, \
reject_invalid_hostname, \
reject_unknown_hostname, \
reject_non_fqdn_hostname
smtpd_recipient_restrictions = permit_mynetworks, \
permit_sasl_authenticated, \
reject_unauth_destination, \
reject_unknown_recipient_domain, \
reject_non_fqdn_recipient, \
reject_unauth_destination
smtpd_sasl_auth_enable = yes
smtpd_sasl_security_options = noanonymous
smtpd_sender_restrictions = permit_mynetworks, \
permit_sasl_authenticated, \
reject_unknown_sender_domain, \
reject_rhsbl_sender dsn.rfc-ignorant.org
transport_maps = mysql:/usr/local/etc/postfix/mysql_transport.cf
virtual_alias_maps = mysql:/usr/local/etc/postfix/mysql_virtual_alias_maps.cf
virtual_gid_maps = static:1005
virtual_mailbox_base = /var/spool/virtual
virtual_mailbox_domains = mysql:/usr/local/etc/postfix/mysql_virtual_domains_maps.cf
virtual_mailbox_maps = mysql:/usr/local/etc/postfix/mysql_virtual_mailbox_maps.cf
virtual_mailbox_limit = 51200000
virtual_minimum_uid = 1001
virtual_uid_maps = static:1005


С путями ещё не разбирался, но после рестарта постфикса появилось вот такое :

Jan 7 12:19:13 pingvin postfix/smtpd[9997]: fatal: unsupported dictionary type:
mysql



Да, mysql стоит. Таблицы уже добавлены, БД созданы.
Спасибо сказали:
Lazy
Сообщения: 115
ОС: RHEL 4, FreeBSD 5.x, Slackware

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение Lazy »

vintyara писал(а):
07.01.2007 13:26
Так а постфикс надо пересобирать с поддержкой мускуля ?

Варианта 2: либо ты пересобираегшь с поддержкой, либо ставишь уже собранный с поддержкой. пакет с поддержкой будет называться что-то типа postfix-mysql... Да, кстати, библиотеки cyrus-sasl тоже должны быть с этой поддержкой. Название пакеты аналогичное. Ты какие поставил?

vintyara писал(а):
07.01.2007 13:26
Jan 7 12:19:13 pingvin postfix/smtpd[9997]: fatal: unsupported dictionary type:
mysql

Проблема в постфиксе без поддержки мускуля.
Спасибо сказали:
vintyara
Сообщения: 71
ОС: FreeBSD

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение vintyara »

Попробовал сейчас так скомпилять:

make -f Makefile.init makefiles \
'CCARGS=-DHAS_MYSQL -I /usr/include/mysql/' \
'AUXLIBS=-L/usr/lib/mysql -lmysqlclient -lz -lm'


Сейчас буду смотреть что к чему. Боюсь, как бы оно вообще не перестало рабоать :) Я тут уже и exim пробовал ставить и sendmail переставлять :) Такая каша уже ...
Спасибо сказали:
vintyara
Сообщения: 71
ОС: FreeBSD

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение vintyara »

Да. Завелось.

Однако подскажите как докрутить cyrus-sasl и cyrus-imapd ?
Выкачал я cyrus-sasl, замутил

./configure --disable-krb4 --disable-gssapi --with-pwcheck --enable-login
make
make install

после инсталла -

ln -s /usr/local/lib/sasl2 /usr/lib/sasl2

Далее перекомпиляция постфикса (бедный, сколько раз я его уже перекопиливал) коммандой

make -f Makefile.init makefiles \
'CCARGS=-DHAS_MYSQL -I /usr/include/mysql/' \
'AUXLIBS=-L/usr/lib/mysql -lmysqlclient -lz -lm' \
'CCARGS=-DUSE_SASL_AUTH -I/usr/local/include/sasl'\
'AUXLIBS=-L/usr/local/lib -R/usr/local/lib -lsasl2'

(объединяем SASL + моддержку MySQL). Да, почему без IMAP - на сколько я понял оно и так будет рабоать. Или я не прав ?

Дальше - хуже. Смущает при компиляции множественные строки :


BS=-L/usr/local/lib/sasl2 -R/usr/local/lib -lsasl2 -DHAS_PCRE -g -O -I. -I../../include -DLINUX2 -c dict_mysql.c
gcc: unrecognized option `-R/usr/local/lib'
gcc: -lsasl2: linker input file unused because linking not done
gcc -Wmissing-prototypes -Wformat -DUSE_SASL_AUTH -I/usr/local/include/saslAUXLIBS=-L/usr/local/lib/sasl2 -R/usr/local/lib -lsasl2 -DHAS_PCRE -g -O -I. -I../../include -DLINUX2 -c dict_pgsql.c
gcc: unrecognized option `-R/usr/local/lib'
gcc: -lsasl2: linker input file unused because linking not done
gcc -Wmissing-prototypes -Wformat -DUSE_SASL_AUTH -I/usr/local/include/saslAUXLIBS=-L/usr/local/lib/sasl2 -R/usr/local/lib -lsasl2 -DHAS_PCRE -g -O -I. -I../../include -DLINUX2 -c dict_proxy.c
gcc: unrecognized option `-R/usr/local/lib'
gcc: -lsasl2: linker input file unused because linking not done
gcc -Wmissing-prototypes -Wformat -DUSE_SASL_AUTH -I/usr/local/include/saslAUXLIBS=-L/usr/local/lib/sasl2 -R/usr/local/lib -lsasl2 -DHAS_PCRE -g -O -I. -I../../include -DLINUX2 -c domain_list.c
gcc: unrecognized option `-R/usr/local/lib'
gcc: -lsasl2: linker input file unused because linking not done
gcc -Wmissing-prototypes -Wformat -DUSE_SASL_AUTH -I/usr/local/include/saslAUXLIBS=-L/usr/local/lib/sasl2 -R/usr/local/lib -lsasl2 -DHAS_PCRE -g -O -I. -I../../include -DLINUX2 -c dot_lockfile.c
gcc: unrecognized option `-R/usr/local/lib'

После компиляции и инсталла зателнетился на себя же и создал письмо для отправки. Вот маиллоги:

Jan 8 04:38:06 pingvin postfix/smtp[23242]: fatal: unsupported dictionary type:
mysql
Jan 8 04:38:07 pingvin postfix/master[23227]: warning: process /usr/libexec/pos
tfix/smtp pid 23242 exit status 1
Jan 8 04:38:07 pingvin postfix/master[23227]: warning: /usr/libexec/postfix/smt
p: bad command startup -- throttling


Опять слетела поддержка mysql =( Почему ?

Вобщем истинна вроде как рядом. Поможете донастроить ?
Спасибо сказали:
vintyara
Сообщения: 71
ОС: FreeBSD

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение vintyara »

Придумал ещё один вариант. Компилировать вот так:

make -f Makefile.init makefiles \
'CCARGS=-DHAS_MYSQL -I /usr/include/mysql/ -I/usr/local/include/sasl' \
'AUXLIBS=-L/usr/lib/mysql -lmysqlclient -lz -lm -L/usr/local/lib -R/usr/local/lib -lsasl2'

Вроде как процесс компиляции "выглядит по лучше", однако опосля, после теста с телнетом :

Jan 8 05:08:32 pingvin postfix/smtp[26944]: warning: smtp_sasl_auth_enable is t
rue, but SASL support is not compiled in

и письмо отправляется...
Спасибо сказали:
Lazy
Сообщения: 115
ОС: RHEL 4, FreeBSD 5.x, Slackware

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение Lazy »

vintyara писал(а):
08.01.2007 06:13
Придумал ещё один вариант. Компилировать вот так:

make -f Makefile.init makefiles \
'CCARGS=-DHAS_MYSQL -I /usr/include/mysql/ -I/usr/local/include/sasl' \

а где
-DUSE_SASL_AUTH

P.S. кстати, разве опции работы с мускулем и сасл нельзя включить в ./configure? зачем все эти извращения с CCARGS?
Спасибо сказали:
vintyara
Сообщения: 71
ОС: FreeBSD

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение vintyara »

Lazy
в моём дистрибутиве нет ./configure. Только make.

Приведи, пожалуйста, полный пример, куда писать -DUSE_SASL_AUTH ( к примеру, может так -

make -f Makefile.init makefiles \
'CCARGS=-DHAS_MYSQL -I /usr/include/mysql/ -I/usr/local/include/sasl' \
'AUXLIBS=-L/usr/lib/mysql -lmysqlclient -lz -lm -L/usr/local/lib -R/usr/local/lib -lsasl2' \
-DUSE_SASL_AUTH
) ?

Для поддержки cyrus-imapd тоже нужно хитро компилять ?

Где потом настраивать учётные записи юзеров ?
Спасибо сказали:
Lazy
Сообщения: 115
ОС: RHEL 4, FreeBSD 5.x, Slackware

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение Lazy »

vintyara писал(а):
08.01.2007 18:34
Lazy
в моём дистрибутиве нет ./configure. Только make.

Приведи, пожалуйста, полный пример, куда писать -DUSE_SASL_AUTH ( к примеру, может так -

думаю, что сюда:
'CCARGS=-DHAS_MYSQL -I /usr/include/mysql/ -DUSE_SASL_AUTH -I/usr/local/include/sasl' \
'AUXLIBS=-L/usr/lib/mysql -lmysqlclient -lz -lm -L/usr/local/lib -R/usr/local/lib -lsasl2' \
)

vintyara писал(а):
08.01.2007 18:34
Для поддержки cyrus-imapd тоже нужно хитро компилять ?

нет
vintyara писал(а):
08.01.2007 18:34
Где потом настраивать учётные записи юзеров ?

в мускуле вестимо. ты ведь для этого с мускулом все делаешь? :-)
Спасибо сказали:
vintyara
Сообщения: 71
ОС: FreeBSD

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение vintyara »

Lazy
да :) спасибо :) вроде сейчас что-то похоже на правду :) осталось только отконфигурировать нормально.

ЗЫ вот почти дока получилась по установке сабжа под слакварь ) тока бы доку нормальную по конфигурированию найти )) ...
Спасибо сказали:
vintyara
Сообщения: 71
ОС: FreeBSD

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение vintyara »

Для настройки "smtp аутентификации", на сколько я понял, нужно настроить smtpd.conf. У меня этого файла нет нигде. Создать его не проблема, но я не знаю где это создать :( Где ?
Спасибо сказали:
Lazy
Сообщения: 115
ОС: RHEL 4, FreeBSD 5.x, Slackware

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение Lazy »

vintyara писал(а):
08.01.2007 21:52
Для настройки "smtp аутентификации", на сколько я понял, нужно настроить smtpd.conf. У меня этого файла нет нигде. Создать его не проблема, но я не знаю где это создать :( Где ?

поищи директорию sasl2. в линуксе, вроде, должна быть в /usr/lib. вот там и создавай.
Спасибо сказали:
vintyara
Сообщения: 71
ОС: FreeBSD

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение vintyara »

Да. Оно. Спасибо!
Спасибо сказали:
Lazy
Сообщения: 115
ОС: RHEL 4, FreeBSD 5.x, Slackware

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение Lazy »

vintyara писал(а):
08.01.2007 23:15
Да. Оно. Спасибо!

пожалуйста.
сразу совет. не оставляй переменную myhostname равной что-то типа localhost и т.п., если у тебя серв. планирует работать в инете и т.д. с таким параметром тебя быстро внесут в black list'ы. там должо стоять имя в формате FDQN, типа mail.yourserv.ru.
Спасибо сказали:
vintyara
Сообщения: 71
ОС: FreeBSD

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение vintyara »

Lazy
Исправлю :)

Однако попробую продолжить сыпать вопросами :)

Я сейчас запутался во всём. Есть постфикс, который вроде как работает с БД.
Как это дело можно покрасивее (по удобнее) администрировать ? Создавать почтовые ясчики, ставить квоты и т.п. ? Попробовал установить postfixadmin, однако он как-то не правильно работает :(
Создать тот же почтовый ящик не получается, ввиду странных ошибок. Например, на против полей "Имя" и "парооль", после нажатия на кнопку "добавить" появляется -
Имя: _________ Неверное имя!
Пароль: ______ Пароль, введенный вами не подходит!
либо пуст!

Ессесно пароль совпадал и не был пуст....

Вобщем почтовый сервер вроде как стоит, только толку от этого нет :(
Спасибо сказали:
vintyara
Сообщения: 71
ОС: FreeBSD

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение vintyara »

Да, ещё вопрос - постфиксадмин с чем сверяет логин и пароль при аутентификации ?
Спасибо сказали:
Lazy
Сообщения: 115
ОС: RHEL 4, FreeBSD 5.x, Slackware

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение Lazy »

vintyara писал(а):
09.01.2007 16:44
Однако попробую продолжить сыпать вопросами :)

Я сейчас запутался во всём. Есть постфикс, который вроде как работает с БД.
Как это дело можно покрасивее (по удобнее) администрировать ? Создавать почтовые ясчики, ставить квоты и т.п. ?

квотами я не пользовался, поэтому вот так во всех мелочах не отвечу. по поводу администрирования. у тебя в доке есть простенький пример определения домена, который обслуживает твой сервер и почтового ящика, принадлежащего домену:

INSERT INTO transport (domain, destination) VALUES ('test.local.net', 'maildrop:');
INSERT INTO domain (domain,description) VALUES ('test.local.net','Test Domain');
INSERT INTO alias (address,goto) VALUES ('alias@test.local.net', 'user@test.local.net');
INSERT INTO mailbox (username,password,name,maildir,quota) VALUES ('user@test.local.net', 'test', 'Test гser', 'test@test.local.net/', '500000S');

понятно, что вместо "test.local.net" надо подставить твой конкретный домен в таблицы transport и domain. юзеров для этого домена прописывать в таблицу mailbox, ну а таблица alias - это аналог файла alias. структура этих таблиц, полагаю, ясна из примера. соответственно все действия производятся непосредственно в БД с помощью SQL (предполагаю, что тоже имеешь представлени об этом ;)). Насчет каких-то иксовых или других приблуд не знаю, мне хватало всегд этого. Хотя пользователе у меня не так много, поэтому это, как грица, каждому по потребностям. Рекомендую научица этому простому способу, ч тобы понять суть.
Спасибо сказали:
vintyara
Сообщения: 71
ОС: FreeBSD

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение vintyara »

Lazy
программка для администрирования постфикса.
Спасибо сказали:
Аватара пользователя
Belfigor
Сообщения: 10
ОС: CentOS 5.3 (server)

Re: Postfix-mysql-smtpd-cyrus-sasl под Slackware

Сообщение Belfigor »

vintyara писал(а):
09.01.2007 16:44
Lazy
Исправлю :)

Однако попробую продолжить сыпать вопросами :)

Я сейчас запутался во всём. Есть постфикс, который вроде как работает с БД.
Как это дело можно покрасивее (по удобнее) администрировать ? Создавать почтовые ясчики, ставить квоты и т.п. ? Попробовал установить postfixadmin, однако он как-то не правильно работает :(
Создать тот же почтовый ящик не получается, ввиду странных ошибок. Например, на против полей "Имя" и "парооль", после нажатия на кнопку "добавить" появляется -
Имя: _________ Неверное имя!
Пароль: ______ Пароль, введенный вами не подходит!
либо пуст!

Ессесно пароль совпадал и не был пуст....

Вобщем почтовый сервер вроде как стоит, только толку от этого нет :(


У меня такая же проблема , только с паролями у меня всё норм , а вот при "Имя: _________ Неверное имя! , уже весь инет перерыл не могу ничего найти , вот тут только что то было www.lissyara.su но опять же не помогло , будьте добры отпишитесь кто сталкивался и как лечилось !!!!
уже 2 часа ищу
:wacko:
Спасибо сказали: