Описание
Бесплатный SMTP сервер www.sendamil.org, теперь понимает список пользователей
как в базе /etc/passwd так и в mysql.
При получении почты сначала происходит поиск в базе passwd, далее, если пользователь не
найден, идет поиск по sql базе данных. Для каждого локального пользователя происходит
проверка на размера почтового ящика (при помощи внешней программы) лимиты задаются
в /etc/mail/limits
Инсталяция
1. tar -zxf sendmail.8.12.8.patched.tar.gz .
2. исправить в libsm/mbdb.c путь к mysql.h и строку запроса к sql базе даных на свою.
// sql patch
#include "/usr/local/include/mysql/mysql.h"
....
(!mysql_real_connect(&mysql,"ts.rel.com.ua","yuri","test","st",0,NULL,0))
...
sprintf(tmps,"select login from users where login='%s'",name);
...
3. исправить в devtools/Site/site.config.m4 пути к библиотеке mysqlclient .
APPENDDEF(`confLIBS', `-lmysqlclient -L/usr/local/lib/mysql')
APPENDDEF(`confENVDEF',`-DSM_CONF_SHM=0')
4. make ; make install (обыкновеная инсталяция sendmail , читайте README).
5. Скопировать mail.local вместо /usr/libexec/mail.local (mail.local при make.install не копируется).
6. cd MY_CF/mquota ; исправить запрос к sql на свой
7. make ; cp mquota /usr/local/sbin
8. скопировать и отредактировать limits
9. cd cf/cf/ ; vi freebsd.mc
10. Добавить (убрать) то что сочтете нужным.
11. ./Build freebsd.cf
12. mv freebsd.cf /etc/mail
13. done
Исправления
Исправлено все то что было описано выше , так что без каких либо усилий можна переделать
и под другую базу даных.
p.s. Все базы прикручены к моему билингу который будет доступен поже (вместе с Exim)
|