|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Andrey Lavrentyev 2:5020/400 28 Nov 2000 18:21:45 To : All Subject : Re: Sendmail Compilling and Configure -------------------------------------------------------------------------------- Malik Abdugaliev <malik@mail.gov.kg> wrote: > > Привет. > Простите за глупый вопрос, но я уже торможу совсем. > Подскажите вкратце как откомпилить и родить файлы конфигурации > sendmail-8.11.1 под Фри 3.1. > Реадми я читал, точнее сказать пытался читать, они ссылаются > друг на друга и никакой последовательности я не прошарил ;-((( > Hе погубите, мужики, совсем запарился! с учетом версии 3.1 и подразумевая наличие порта на 8.11.1 1. cd /usr/ports/mail/sendmail && less Makefile на предмет 8.11.1 2. make && make install (не забывая что sendmail встанет с учетом PREFIX=/usr/local - после тестирования изменить) Примечание: для сборки sendmail в различных OS необходимо помнить что в зависимости от вашего подхода могут потребоваться BerkeleyDB - http://www.sleepycat.com/products.html sendmail8.8.x - newbd ver1.85 8.10.x - newdb ver2.x 8.11.x - newdb ver3.x не знаю какие у кого были проблемы, например в Solaris 2.5/2.5.1 я собирал без -DNEWDB в результате чего makemap от sendmail.org не строил мне базы access и другие в нужных форматах, решение: - сделать Makefile в котором заменить makemap на native makedbm от Сопляриса ну те когда мне надо было базы пересобрать - /etc/mail/Makefile - собрать с BerkeleyDB нужной версии, без нее makemap видимо не создает базы в совместимом с NDBM и другими форматами - было в моем случае. (понятно что в Solaris я хотел dbm /path/таблица - частая проблема :) которую воткнули на первое место в один из README это local-security: chmod go-w / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue chown root / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue она действительно частая по невнимательности и забывчивости и характерна больше для /etc, нежели для /etc/mail :))) достаточно проинициализировать aliases: sendmail -v -bi или увидеть ругань при стандартном запуске sendmail -bd -qXXm 3. создать собственный site.mc или в site.config.m4 добавить на подобии: site.config.m4 - самое место в sendmail/8.X.Y/BuildTools/Site/ ---------------------------- site.config.m4 --------------------------------- ... APPENDDEF(`ALIAS_FILE', `/etc/mail/aliases') ... ---------------------------- end of example --------------------------------- - site.config.m4 удобно использовать при компиляции - для компиляции и для sendmail.cf; - site.mc после компиляции для создания sendmail.cf; 4. Пример с некоторыми комментариями, ненужное удалить, требуемое добавить по вкусу и цвету: ----------------------------- lavr.mc[test] --------------------------------- # # The best documentation for this .mc file is: # /usr/src/contrib/sendmail/cf/README # #--lavr for Contact Ltd. divert(0)dnl VERSIONID(`$FreeBSD: src/etc/sendmail/freebsd.mc,v 1.10.2.2 2000/11/20 21:17:28 lavr Exp $') OSTYPE(bsd4.4)dnl DOMAIN(generic)dnl FEATURE(relay_hosts_only) dnl dnl Lavr - use full e-mail address when use local-mail dnl FEATURE(always_add_domain) FEATURE(mailertable, `hash -o /etc/mail/mailertable')dnl dnl dnl Lavr - there are new advanced format in access-table/look at sendmail.net dnl FEATURE(access_db, `hash -o /etc/mail/access')dnl FEATURE(virtusertable, `hash -o /etc/mail/virtusertable')dnl dnl dnl LAVR - use blacklist for lock user via access.db dnl FEATURE(blacklist_recipients)dnl dnl FEATURE(stickyhost)dnl dnl FEATURE(nouucp,reject) dnl dnl Lavr - DNSBL is new replacement RBL, has many feature dnl FEATURE(`dnsbl')dnl dnl dnl Lavr - delay_checks, new feature for delay until CHECK rules done dnl FEATURE(`delay_checks') dnl dnl Lavr - new feature, defaul - mail.local, second arg=path_to_mail.local dnl FEATURE(local_lmtp)dnl define(`LOCAL_MAILER_FLAGS', LOCAL_MAILER_FLAGS`'P)dnl dnl dnl Lavr - don't allow user@host.dubna.ru dnl all outgoing mail should be user@dubna.ru dnl converting ALL OLDER cntc.dubna.su to dubna.ru dnl where - "your_main_domain.zone"==dubna.ru dnl "additional_domain_which_your_are_supported.zone"==cntc.dubna.su dnl see MASQUERADE and FEATURE(masquerade*) for other implementation dnl MASQUERADE_AS(`your_main_domain.zone')dnl MASQUERADE_DOMAIN(`your_main_domain.zone')dnl MASQUERADE_DOMAIN(`additional_domain_which_your_are_supported.zone')dnl FEATURE(`masquerade_entire_domain')dnl dnl Lavr - do envelope e-mail address for has chance to see it FEATURE(`masquerade_envelope')dnl dnl dnl Lavr - sendmail now implements RFC 2476 (Message Submission) and dnl may listen on several different ports, by default: 587 (try to check) dnl find "O DaemonPortOptions=Name=MSA, Port=587, M=E" in sendmail.cf dnl this activate Message Submission Agent (MSA) dnl dnl FEATURE(`no_default_msa') dnl dnl Lavr - comment new filename relay and use common sendmail.cw dnl define(`confCW_FILE', `-o /etc/mail/local-host-names')dnl dnl define(`confCW_FILE', `-o /etc/mail/sendmail.cw')dnl dnl dnl Lavr - don't allow EXPN,VRFY,RECEIPTS dnl define(`confPRIVACY_FLAGS', `authwarnings,noexpn,novrfy,noreceipts')dnl define(`confNO_RCPT_ACTION', `add-to-undisclosed')dnl define(`confMAX_MIME_HEADER_LENGTH', `256/128')dnl dnl dnl Lavr - permit 8bit-body 8bit=pass8 dnl define(`confEIGHT_BIT_HANDLING', `pass8') dnl dnl Lavr - set default Charset dnl dnl define(`confDEF_CHAR_SET', `koi8-r') dnl dnl Lavr - max-mail lenght in bytes dnl define(`confMAX_MESSAGE_SIZE', `50000') dnl dnl Lavr - max recepients for any maillist dnl define(`confMAX_RCPTS_PER_MESSAGE', `25') dnl dnl Lavr - max sendmail-daemon processes, seems 70 must be enough dnl dnl define(`confMAX_DAEMON_CHILDREN', `70') dnl dnl Lavr - don't send mail if max-hop more than 20/25-default dnl define(`confMAX_HOP', `20') dnl dnl Lavr - max mail-queue 64 and refused after achived number 128 dnl dnl define(`confQUEUE_LA', `64') dnl define(`confREFUSE_LA', `128') dnl dnl Lavr - max new numbers connection at second dnl dnl define(`confCONNECTION_RATE_THROTTLE', `5') dnl dnl Lavr - ignore such security level as GROUP and WORLD writeable dnl chmod go-w / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue dnl chown root / /etc /etc/mail /usr /var /var/spool /var/spool/mqueue dnl dnl 1. Allow .forward in Group-writeable DIRS: dnl - O DontBlameSendmail=forwardfileingroupwritabledirpath dnl 2. Allow .forward in both Group and World writeable dnl - O DontBlameSendmail=forwardfileinunsafedirpath dnl 3. Allow full-unsafe mode: dnl - O DontBlameSendmail=forwardfileinunsafedirpath, dnl forwardfileinunsafedirpathsafe dnl ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^- this for old-rules dnl DontBlameSendmail mode is very important for Majordomo use - "3". dnl define(`confDONT_BLAME_SENDMAIL', `forwardfileingroupwritabledirpath') dnl dnl Lavr - anti-spam sendmail prompt, may be corrected in sendmail.cf dnl define(`confSMTP_LOGIN_MSG',`$j Sendmail $v/$Z; $b\n"Use of this system for third party and non-authorized relaying is prohibited." ') dnl dnl Lavr - outgoing mail from inside-domain hosts must go via cntc.dubna.ru dnl define(`SMART_HOST', `where_to_deliver_mail_from_me') dnl MAILER(local)dnl MAILER(smtp)dnl ----------------------------------------------------------------------------- 5. Создание sendmail.cf на базе собственной заготовки filename.mc cd /path/where_is_SITE.MC_located установить переменную CFDIR=/path/sendmail/8.X.Y/cf и выполнить команду: m4 ${CFDIR}/m4/cf.m4 site.mc > sendmail.cf ньюанс: верхняя строчка зависима от операционки и версии m4, в старых OS, например в ConvexOS, необходимо: m4 -D_CF_DIR_=${CFDIR}/ ${CFDIR}/m4/cf.m4 site.mc > sendmail.cf или cd /path/where_is_SITE.MC_located m4 -D_CF_DIR_=/usr/ports/mail/sendmail/work/sendmail-8.11.1/cf/ /usr/ports/mail/sendmail/work/sendmail-8.11.1/cf/m4/cf.m4 site.mc > sendmail.cf Примечание: в версиях FreeBSD4.x - используются sendmail с 8.10.x - 8.11.1, однако стандартно запускаются через wrapper==/usr/sbin/sendmail который читает конфигурацию из /etc/mail/mailer.conf, если мы собрали последний из портов с PREFIX=/usr/local [первоначально для тестирования, то не забудьте выполнить `make mailer.conf` - или поправить его руками в случае запуска sendmail через wrapper. 6. Полезных изменений сделано много, разных feature & define для проверок, портов, авторизаций[в данном примере отсутствует], очередей, различных timeout и тд и тп. Кстати FreeBSD-Team готовит собственные изменения которые видимо будут рассмотрены и включены в sendmail8.11.2, по-крайней мере это было в переписке, если не ошибаюсь на предмет ОГРОМHЫХ почтовых ПОТОКОВ. Есть уже и дополнительные check для 8.11.1 которые видимо будут добавлены в 8.11.2? 7. Я проморгал когда появилась возможность vacation и потому мне она оченна понравилась `man vacation` и уехал в отпус, по делам и тд и тп: [alone]~ > cat .forward \lavr, "|/usr/bin/vacation lavr" [alone]~ > cat .vacation.msg I am on vacation until December 01. If you have something urgent, please contact Kirill Angelov <kirill@dubna.ru>. Best regards -- lavr/Andrey Lavrentyev [alone]~ > 8. Кто желает может дополнить UUCP'у, замену mail.local на procmail и тд и тп, думаю многим интересны навороченные sendmail'ы как у Hечаева, а-а-а? 9. Интересует - ETRN кто-нить пользовал для слива на M$? PS. Очень печалит ОДHО, то что большинство хочет ГОТОВЫХ решений и использует подход а-ля M$, мб я ошибаюсь, но сторожилы не только этой группы а и Релхъюмовских помнят что вопросов типа "дай готовое решение" было мало. > THX. > Малик. > > > Best regards, -- lavr --- ifmail v.2.15dev5 * Origin: OOO Contact company (2:5020/400) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/64145ba3d3aa.html, оценка из 5, голосов 10
|