|
|
ru.unix.bsd- RU.UNIX.BSD ------------------------------------------------------------------ From : Roman Y Bogdanov 2:5090/94.37 14 Feb 2001 19:32:44 To : Denis Mikhailov Subject : Re: AVP для Sendmail -------------------------------------------------------------------------------- DM> Задумал тут поставить AVP на FreeBSD 3.4, скачал его с AVP.ru - а там ни DM> доки ни пояснений как, что и чего ? Может кто-нибудь его ставил себе ? ДДД хочешь режь, а хочешь куй [ new imap here ] ДДД Д RU.UNIX.BSD (2:5090/94.37) ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД RU.UNIX.BSD Д Msg : 16319 of 17525 Scn From : Eugene Vasilchenko 2:5020/400 Thu 01 Feb 01 19:56## To : All Fri 02 Feb 01 10:57 Subj : Re: AVPKeeper (FreeBSD, sendmail) + Cyrus IMAP ДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДДД From: "Eugene Vasilchenko" <eugenev@computerra.ru> Привет всем ! Вот как я поборол AVPKeeper. У меня почта падает в Cyrus IMAP 1.6.24, поэтому локальный мэйлер у меня /usr/cyrus/bin/deliver С другими локальными мэйлерами нужно поступать примерно аналогично. Мужики, сразу скажу - ключом к AVP поделиться не могу. Он у нас именной от Касперского. Стоит AVP для серверов с лицензией на 2 года $845. Да забыл - ОС FreeBSD 4.1, sendmail 8.11.0 Вообщем - начали: 1) Установил AVP для FreeBSD # pkg_add avp-ServerSuit-3.0.135-FreeBSD-4.x.tar # pkg_add avp-WorkStationSuit-3.0.135-FreeBSD-4.x.tar Он устанавливается по дефолту в /usr/local/share/AVP/ и AVPkeeper соответственно в /usr/local/share/AVP/avpkeeper 2) Отредактировал /usr/local/share/AVP/AvpUnix.ini --- [AVP32] DefaultProfile=/usr/local/share/AVP/defUnix.prf [Configuration] KeyFile=0000c3a1.key KeysPath=/usr/local/share/AVP SetFile=avp.set BasePath=/usr/local/share/AVP/Bases --- 3) Создал каталог /usr/local/share/AVP/Bases и обновил базы AVP (вернее скачал их с нуля) # ./AVPUpdater -o -ui=ftp://ftp.kasperskylab.ru/updates Ключик -o нужен для приведения имен файлов антивирусных баз в нижний регистр. Запускать с этим ключом нужно только один раз, дальше не нужно. 4) Отредактировал различные опции в файле defUnix.prf. Самое главное в этом файле (в контексте проверки почты) это параметр List в секции [Location]. Здесь нужно указать директорию в которой AvpBSDDaemon будет искать (и лечить если скажут) файлы передаваемые ему avpkeeper. Эта директория _обязательно_ должна предварятся символом "*", иначе avpkeeper на все письма будет говорить "ОК" - это проверено. Hесколько директорий указываются через точку с запятой. Вообщем-то все параметры можно выставить через программу AVPTuner. Вот пример: --- [Location] List=*/dat/temp SubDirectories=Yes ScanSubDirAtEnd=Yes --- 5) Запустить демон AvpBSDDaemon, с ключом -Y , что бы он не задавал лишние вопросы. 6) Редактируем /cf/cf/sendmail.mc. Привожу только строки относящиеся к Cyrus IMAP и AVP --- FEATURE(cyrus_avp)dnl define(`CYRUS_MAILER_FLAGS',`SA5@w/:|')dnl MAILER(cyrus)dnl define(`confLOCAL_MAILER',`cyrus') --- 7) Файл /usr/local/share/AVP/avpkeeper/avpkeeper.ini Здесь самое важное это секции [link] и [mailer] --- avpkeeper.ini --- [mailer] sendmail=/usr/sbin/sendmail -oi -f$f $u cyrus=/usr/cyrus/bin/deliver -e -m $h -- $u cyrusbb=/usr/cyrus/bin/deliver -e -m $u [link] connect=file temppath=/dat/temp --- avpkeeper.ini --- 8) Файл /cf/feature/cyrus_avp.m4 Переписан из оригинального local_avp.m4 что идет в комплекте с AVPKeeper Идея в том, что мы заменяем вызов локального мэйлера от Cyrus IMAP на вызов avpkeeper с нужными ключами. Он получая мыло от sendmail, пишет его во временную директорию определяемую в секции [link] файла /usr/local/share/AVP/avpkeeper/avpkeeper.ini Естественно, что этой директорией должна быть директория также определенная в defUnix.prf (см. п.4), иначе AvpBSDDaemon не найдет файла. После проверки файла на вирус avpkeeper вызывает локальный мэйлер определенный ключом -m, в файле cyrus_avp.m4 и соединяет свой stdout с stdin локального мэйлера, а через ключи передает ему отправителя письма и имя mailbox получателя. Вот пожалуй и все. - --- cyrus_avp.m4 --- define(`LOCAL_MAILER_PATH', ifelse(_ARG_, `', ifdef(`AVPKEEPER_MAILER', AVPKEEPER_MAILER, `/usr/local/share/AVP/avpkeeper/avpkeeper'), _ARG_)) define(`AVP_CONF_ARG', ifdef(`AVPKEEPER_CONFIG', `-c AVPKEEPER_CONFIG', `')) define(`CYRUS_MAILER_PATH',`/usr/local/share/AVP/avpkeeper/avpkeeper')dnl define(`CYRUS_MAILER_ARGS',`avpkeeper -s $f -r $u -m cyrus AVP_CONF_ARG')dnl define(`CYRUS_BB_MAILER_ARGS',`avpkeeper -s $f -r $u -m cyrusbb AVP_CONF_ARG')dnl - --- cyrus_avp.m4 --- 9) Пересобрать sendmail.cf и перезапустить sendmail. Все должно работать. Да чуть незабыл - конкретно для Cyrus IMAP - deliver должен запускаться только от cyrus:mail (или от кого вы там определили при сборке IMAP), поэтому мне пришлось сделать chowh cyrus:mail avpkeeper. Hу да и фиг с ним - работает все нормально. Маленькая просьба - если будете пересылать, укажите авторство. Хотя я скоро наверно страничку свою сделаю - надоело в башке держать как что собирается. Все удачи, пишите если что. Евгений. -+- ifmail v.2.15dev5 + Origin: Demos online service (2:5020/400) ДДД все равно получишь файл [ end imap here ] ДДД ... np: 06 DJ Bobo - Love Is All Araund --- http://peps37.ktk.ru/ щ email: peps37#ktk.ru щ icq:5535950 * Origin: IP only point, binkd & ifcico; [team SCSI] (2:5090/94.37) Вернуться к списку тем, сортированных по: возрастание даты уменьшение даты тема автор
Архивное /ru.unix.bsd/242623a8acf71.html, оценка из 5, голосов 10
|