The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

Проверка вирусов используя ClamAV и Postfix (postfix mail virus spam)


<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>
Ключевые слова: postfix, mail, virus, spam,  (найти похожие документы)
From: greenh Newsgroups: email Date: Mon, 18 Nov 2004 14:31:37 +0000 (UTC) Subject: Проверка вирусов используя ClamAV и Postfix Диалог у телевизора или как мы к postfix-у clamav прикручивали frend> Привет greenh> я кажется спарвился с clamav frend> Через что? greenh> amavis-new frend> Ну да, я тоже пытался через него. greenh> и что получается? greenh> что пишет? greenh> в общем если что - могу попробовать подсказать frend> М-м-м... интересно. greenh> :) frend> Я сейчас запустил amavisd-new на make install. Пока ставит всякие перловые кусочки. greenh> ок greenh> а clamav стоит? frend> Да. greenh> запускается? greenh> не матерится влогах? frend> Пока не запускал. greenh> запусти clamav-clam.sh rcvar greenh> сорри clamav-clamd.sh rcvar должен быть в usr/local/etc/rc.d greenh> ты под чем? freebsd? frend> да. frend> Там есть только clamav.sh greenh> если его запустить без параметров, что он говорит? frend> Собственно, он у меня уже запущен. frend> bash# ps -ax | grep clam 3 ?? Ss 0:00,91 /usr/local/bin/freshclam -d -c 2 -l /var/log/freshcla greenh> нет freshclam - это обновление frend> Ничего не говорит. Запустился еще один freshclam greenh> а что ты ставил из портов? frend> В смысле? greenh> там три варианта clam greenh> и какой clam стоит? frend> М-м-м... frend> Не из портов. frend> Поставить из портов? greenh> поставь из портов он в security живет frend> [ ] MILTER Compile the milter interface Это не надо? greenh> я ставил, но по моему не использовал поставь, гне помешает greenh> только предыдущий грохни frend> Угу. frend> Компилится. greenh> ок скажешь когда, ок? frend> ОК frend> make install greenh> сделал? frend> да greenh> ок rehash и смотри что там в /usr/local/etc/rc.d/ greenh> и make clean ^) frend> rehash - это что? greenh> обновление всяких системных переменных типа pach и тп frend> Не знает такой команды :) frend> bash# ./clamav-clamd.sh rcvar # clamav_clamd $clamav_clamd_enable=NO greenh> как так:??? ну и пес с ним ага теперь в rc.conf пишеим clamav_clamd_enable='YES' greenh> это была первая пакость :) frend> Мнда. frend> Что дальше? greenh> теперь запускай clamav_clamd.sh start frend> На конфиги ругается. greenh> что говрит? frend> bash# ./clamav-clamd.sh start Starting clamav_clamd. ERROR: Please edit the example config file /usr/local/etc/clamav.conf. ERROR: Can't open/parse the config file /usr/local/etc/clamav.conf greenh> ага ясно сейчас, 1 сек frend> При том, что он там есть :) greenh> 2 мин, ща приду greenh> там есть .conf или .conf.default? frend> Собственно, я его запустил. greenh> т.е.? frend> Tue Sep 7 15:51:27 -> +++ Started at Tue Sep 7 15:51:27 Tue Sep 7 15:51:27 -> clamd daemon 0.75.1 (OS: freebsd4.9, ARCH: i386, CPU : i386) frend> Tue Sep 7 15:51:36 -> Archive support enabled. Tue Sep 7 15:51:36 -> RAR support disabled. Tue Sep 7 15:51:36 -> Mail files support disabled. Tue Sep 7 15:51:36 -> OLE2 support enabled. Tue Sep 7 15:51:36 -> Self checking every seconds. greenh> ага ок теперь запускай в отдельной консоли freshclam просто, без .sh greenh> он должен начать обновлятся frend> bash# bash# freshclam ClamAV update process started at Tue Sep 7 15:57:38 Reading CVD header (main.cvd): OK main.cvd is up to date (version: 26, sigs: 5, f-level: 2, builder: tomek) Reading CVD header (daily.cvd): OK daily.cvd is up to date (version: 481, sigs: , f-level: 2, builder: tomek) frend> Правда, в лги ничего не написалось. greenh> вот и замечательно amavis-new стал? frend> Я его еще не запускал. greenh> и не запускай стал? frend> Ну да. greenh> $mydomain = 'kristall-service.net'; $daemon_user = 'vscan'; $file = '/usr/bin/file'; $daemon_group = 'wheel'; $TEMPBASE = \"/tmp\"; $ENV{TMPDIR} = $TEMPBASE; $max_servers = 5; $max_requests = 10; $child_timeout=5*60; $unix_socketname = \"$MYHOME/amavisd.sock\"; $inet_socket_port = 4; $inet_socket_bind = '127.0.0.1'; @inet_acl = qw( 127.0.0.1 ); $DO_SYSLOG = 0; $LOGFILE = \"/var/log/amavis.log\"; $log_level = 2; # (defaults to 0) $hdr_encoding = 'koi8-r'; # (default: 'iso--1') $bdy_encoding = 'koi8-r'; # (default: 'iso--1') @av_scanners = ( ['ClamAV-clamd', \\&ask_daemon, [\"CONTSCAN {}\\n\", \"/var/run/clamav/clamd\"], qr/\\bOK$/, qr/\\bFOUND$/, qr/^.*?: (?!Infected Archive)(.*) FOUND$/ ]); $virus_admin = \"greenh\\@kristall-service.net\"; $spam_admin = \"abuse\\@$mydomain\"; $mailfrom_notify_admin = \"postmaster\\@$mydomain\"; $mailfrom_notify_recip = \"postmaster\\@$mydomain\"; $mailfrom_notify_spamadmin = \"postmaster\\@$mydomain\"; $QUARANTINEDIR = '/var/mail/virtual/kristall-service.net/virus/new'; $virus_quarantine_to = 'virus-quarantine'; # traditional local quarantine $spam_quarantine_to = 'spam-quarantine'; greenh> это amavisd.conf первую строчку пофикси greenh> есть? frend> Это полный конфиг? greenh> то, что работает у меня а в полном конфе столько всего..... frend> Сделал frend> Опять Rc.conf править? :) greenh> ага запусти amavis.sh rcvar и если нужно.... greenh> блин... :) amavisd.sh rcvar frend> Так. frend> bash# ./amavisd.sh start Starting amavisd. ERROR: MISSING REQUIRED BASIC MODULES: IO::Wrap IO::Stringy Unix::Syslog Mail::Field Mail::Address Mail::Header Mail::Internet MIME::Head MIME::Body MIME::Entity MIME::Parser MIME::Decoder::Base64 MIME::Decoder::Gzip64 MIME::Decoder::QuotedPrint BEGIN failed--compilation aborted at /usr/local/sbin/amavisd line 138. greenh> стоп а что у на с перлом? какой стоит? frend> Вроде, обновлял. greenh> до 5,8? frend> да greenh> странно а посмотри в/var/db/pkg модули есть? frend> This is perl, v5.8.5 built for i386-freebsd-64int frend> До хрена там. frend> Может, из-за того, что я не перебутился после обновления перла? greenh> а сделай к примеру в /var/db/pkg а ты делал use.perl port greenh> ???? frend> Да, делал. greenh> а сделай к примеру в /var/db/pkg portupgrade p5-MIME-Base64-3.01 frend> мнда frend> bash# portupgrade p5-MIME-Base64-3.01 bash: portupgrade: command not found greenh> cd /usr/ports/sysutils/portupgrade make make install clean frend> Stop in /usr/ports/lang/ruby18. *** Error code 1 frend> Dependency warning: used OpenSSL version contains known vulnerabilities Please update or define either WITH_OPENSSL_BASE or WITH_OPENSSL_PORT *** Error code 1 greenh> а ну так идм в порт с ruby и делай make WITH_OPENSSL_BASE=yes frend> угу greenh> там же make install clean и потом собирай portupgrade frend> Это ясно :) greenh> ну как? frend> идет... frend> bash# portupgrade p5-MIME-Base64-3.01 [Rebuilding the pkgdb <format:bdb1_btree> in /var/db/pkg ... - 140 packages found (-0 +140) ...................................................................... ...................................................................... done] ** No such installed package: p5-MIME-Base64-3.01 greenh> что и требовалось доказать portupgrade -f p5-MIME-Base64-3.01 frend> bash# portupgrade -f p5-MIME-Base64-3.01 ** No such installed package: p5-MIME-Base64-3.01 greenh> ясно cd //usr/ports/converters/p5-MIME-Base64 и вперед frend> А вот нифига. frend> bash# cd //usr/ports/converters/p5-MIME-Base64 bash# make bash# make install Для продолжения нажмите любую клавишу... bash# frend> Оно уже стоит :( greenh> правильно greenh> он стоял, но после пересборки перла его не стало из var/db/pkg руками удаляешь его greenh> а потом собираешь frend> Только его? Или еще что-то надо? greenh> а все, на что ругается amavis по одному frend> Ни фига себе greenh> можно сделать portupgrade для всех установленных пакетов, но вопервых это долго, а во вторых я этой манупуляции побаиваюсь greenh> так что лучше так а что, там полтора десятка модулей frend> А что значит \"руками удалять\"? Удалить соответствующую директорию? greenh> они маленькие, собираются быстро greenh> да frend> То есть, удаляю директорию, а потом - make install? Так? greenh> да frend> Попробуем greenh> давай greenh> я именно так и делал frend> Поставил. Директория появилась. Делаю bash# portupgrade p5-MIME-Base64-3.01 [Updating the pkgdb <format:bdb1_btree> in /var/db/pkg ... - 140 packages found (-0 +1) . done] ** No such installed package: p5-MIME-Base64-3.01 greenh> я мин через 10 буду frend> Это нормально? greenh> нет greenh> а ты что переставлял? frend> Именно его. greenh> странно greenh> погоди greenh> тогда portupgrade -a -f только внимательно следи, что он делает а то он может с дуру начать squid или XFree обновлять frend> И что тогда - прерывать? :) greenh> ctrl-c frend> bash# bash# portupgrade -a -f Stale dependency: amavisd-new-2.1.1,1 --> unrar-3.30_1,3 -- manually run 'pkgdb -F' to fix, or specify -O to force. greenh> cltkfq frend> ? greenh> сделай frend> bash# pkgdb -F ---> Checking the package registry database Missing origin: postfix-2.0.7,1 Skip this for now? [yes] ? greenh> y greenh> ну как? frend> Блин. Поругался... greenh> кто на кого? frend> Там до хрена всего было. greenh> ну pkgdb выполнился? frend> Stale dependency: amavisd-new-2.1.1,1 -> unrar-3.30_1,3 (archivers/unrar): New dependency? (? to help): greenh> y а потом более новую версию frend> Так. frend> bash# pkgdb -F ---> Checking the package registry database [Updating the pkgdb <format:bdb1_btree> in /var/db/pkg ... - 139 packages found (-0 +1) . done] Missing origin: postfix-2.0.7,1 Skip this for now? [yes] To skip it without asking in future, please list it in HOLD_PKGS. Missing origin: screen-3.9.15 Skip this for now? [yes] To skip it without asking in future, please list it in HOLD_PKGS. frend> Всё. greenh> попробуйтеперь portupgrade для одного пакета frend> Для какого? greenh> для того же frend> bash# portupgrade p5-IO-stringy-2.108 Вроде, прошло. greenh> а ты ж не для него делал greenh> и вообще, попробуй amavis, может запустится greenh> хотя врятли frend> Пробовал. greenh> ну и? frend> ERROR: MISSING REQUIRED BASIC MODULES: IO::Wrap IO::Stringy Unix::Syslog Mail::Field Mail::Address Mail::Header Mail::Internet MIME::Head MIME::Body MIME::Entity MIME::Parser MIME::Decoder::Base64 MIME::Decoder::Gzip64 BEGIN failed--compilation aborted at /usr/local/sbin/amavisd line 138. greenh> portupgrade -f p5-MIME-Base64-3.01 пробуй greenh> или какая у твоего версия frend> Так. Один пакет руками поставил. Теперь: ERROR: MISSING REQUIRED BASIC MODULES: Unix::Syslog Mail::Field Mail::Address Mail::Header Mail::Internet MIME::Head MIME::Entity BEGIN failed--compilation aborted at /usr/local/sbin/amavisd line 138. greenh> это лучше а руками - это как? frend> Из портов greenh> ставь таким же макаром остальные frend> Угу. greenh> поставил этот? p5-MIME-Base64- frend> Неа. p5-IO-stringy-2.108 greenh> ну и замечательно а p5-MIME-Base64 ты поставил до этого frend> Потихоньку. frend> :) greenh> остальное ставится? frend> А там же придется прописывать конфиги постфикса? greenh> придется но позже а пока нада amavis запустить frend> Теперь новая напасть: bash# bash# ./amavisd.sh start Starting amavisd. Problem in the Amavis::Unpackers code: Can't locate Convert/TNEF.pm in @INC (@INC contains: lib /usr/local/lib/perl5/site_perl/5.8.5/mach /usr/local/lib/perl5/site_perl/5.8.5 /usr/local/lib/perl5/site_perl /usr/local/lib/perl5/5.8.5/BSDPAN /usr/local/lib/perl5/5.8.5/mach /usr/local/lib/perl5/5.8.5) at (eval 60) line 17. BEGIN failed--compilation aborted at (eval 60) line 17. bash# greenh> бля ща, посмотрю, кто это такой greenh> /usr/ports/converters/p5-Convert-TNEF greenh> посмотри, нет ли его установленного в /var/db/pkg greenh> есть? frend> Да. frend> Снести? greenh> да greenh> и поставить :) greenh> ставится? frend> Там уже следубщий пошел :) frend> Problem in the Amavis::Unpackers code: Can't locate Convert/UUlib.pm in @INC (@INC contains: lib /usr/local/lib/perl5/site_perl/5.8.5/mach /usr/local/lib/perl5/site_perl/5.8.5 /usr/local/lib/perl5/site_perl /usr/local/lib/perl5/5.8.5/BSDPAN /usr/local/lib/perl5/5.8.5/mach /usr/local/lib/perl5/5.8.5) at (eval 60) line 18. BEGIN failed--compilation aborted at (eval 60) line 18. greenh> ну, и дальше тоже самое.... greenh> не понятно, но почекму-то при перестановке перла такие грабли происходят или я что-то не понимаю? frend> Угу :( frend> Всё. bash# ./amavisd.sh start Starting amavisd. bash# frend> bash# ps -ax | grep ama 3 ?? Ss 0:04,57 amavisd (master) (perl) 4 ?? S 0:00,03 amavisd (virgin child) (perl) 5 ?? S 0:00,02 amavisd (virgin child) (perl) 6 ?? S 0:00,03 amavisd (virgin child) (perl) 7 ?? S 0:00,03 amavisd (virgin child) (perl) 8 ?? S 0:00,03 amavisd (virgin child) (perl) greenh> ок а теперь amavis.log в студию.... frend> Весь? :) frend> Sep 7 17:49:31 sibproject.com /usr/local/sbin/amavisd[8]: starting. /usr/local/sbin/amavisd at sibproject.com amavisd-new-2.1.1, Unicode aware, LC_ALL=ru_RU.KOI8-R, LANG=ru_RU.KOI8-R Sep 7 17:49:31 sibproject.com /usr/local/sbin/amavisd[8]: user=vscan,EUID: (); group=, EGID: ( ) Sep 7 17:49:31 sibproject.com /usr/local/sbin/amavisd[8]: Perl version 5.05 Sep 7 17:49:32 sibproject.com /usr/local/sbin/amavisd[3]: Net::Server: Process Backgrounded Sep 7 17:49:32 sibproject.com /usr/local/sbin/amavisd[3]: Net::Server: /09/07-17:49:32 Amavis (type Net::Server::PreForkSimple) starting! pid(3) Sep 7 17:49:32 sibproject.com /usr/local/sbin/amavisd[3]: Net::Server: Binding to UNIX socket file /var/amavis/amavisd.sock using SOCK_STREAM Sep 7 17:49:32 sibproject.com /usr/local/sbin/amavisd[3]: Net::Server: Binding to TCP port 4 on host 127.0.0.1 Sep 7 17:49:32 sibproject.com /usr/local/sbin/amavisd[3]: Net::Server: Group Not Defined. Defaulting to EGID ' ' Sep 7 17:49:32 sibproject.com /usr/local/sbin/amavisd[3]: Net::Server: User Not Defined. Defaulting to EUID '' Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: Module Amavis::Conf 2.031 Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: Module Archive::T greenh> да он же пока небольшой должен быть frend> 5К greenh> это все? frend> Нет. greenh> меня интересуют последние строки greenh> ~10 frend> Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: Found $file at /usr/bin/file Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: No $arc, not using it Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: No $gzip, not using it Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: No $bzip2, not using it Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: No $lzop, not using it Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: No $lha, not using it Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: No $unarj, not using it Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: No $uncompress, not using it Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: No $unfreeze, not using it Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: No $unrar, not using it Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: No $zoo, not using it Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: No $cpio, not using it Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: No $rpm2cpio, not using it Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: No $cabextract, not using it Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: No $dspam, not using it Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: Using internal av scanner code for (primary) ClamAV-clamd Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: SpamControl: initializing Mail::SpamAssassin Sep 7 17:49:51 sibproject.com /usr/local/sbin/amavisd[3]: SpamControl: done greenh> отлично!!!!!!!!!!! greenh> Sep 7 17:49:33 sibproject.com /usr/local/sbin/amavisd[3]: Using internal av scanner code for (primary) ClamAV-clamd greenh> теперь greenh> идем в /usr/local/etc/postfix/main.cf frend> угу greenh> в конец пишем content_filter = smtp-amavis:[127.0.0.1]:4 greenh> потом в master.cf smtp-amavis unix - - n - 5 smtp -o smtp_data_done_timeout= -o disable_dns_lookups=yes 127.0.0.1:5 inet n - n - - smtpd -o content_filter= -o local_recipient_maps= -o relay_recipient_maps= -o smtpd_restriction_classes= -o smtpd_client_restrictions= -o smtpd_helo_restrictions= -o smtpd_sender_restrictions= -o smtpd_recipient_restrictions=permit_mynetworks,reject -o mynetworks=127.0.0.0/8 -o strict_rfc821_envelopes=yes greenh> я через 2 мин буду frend> Вроде, работает. greenh> постфикс переставил? frend> Конечно. greenh> вирусы ловит? frend> Проверряю :) greenh> кинуть что-рить? frend> Там же есть в дистрибутиве :) frend> Пока не надо. greenh> что есть? frend> Sep 7 18:02:40 sibproject.com /usr/local/sbin/amavisd[6]: (6-01) WARN: all primary virus scanners failed, considering backups Sep 7 18:02:40 sibproject.com /usr/local/sbin/amavisd[6]: (6-01) TROUBLE in check_mail: virus_scan FAILED: virus_scan: ALL VIRUS SCANNERS FAILED: ClamAV-clamd av-scanner FAILED: Too many retries to talk to /var/run/clamav/clamd (Can't connect to UNIX socket /var/run/clamav/clamd: No such file or directory) at (eval 51) line 243. frend> Это из лога. greenh> clamav запущен? frend> В дистрибутиве amavisd-new есть каталог test-messages: <sample-virus-simple.txt $ sendmail -i your-address@example.com <sample-virus-nested.txt $ sendmail -i your-address@example.com <sample-nonspam.txt $ sendmail -i your-address@example.com <sample-spam-GTUBE-junk.txt $ sendmail -i your-address@example.com <sample-spam-GTUBE-nojunk.txt $ sendmail -i your-address@example.com <sample-spam.txt # old sample $ sendmail -i your-address@example.com <sample-42-mail-bomb.txt frend> bash# bash# ps -ax | grep clam 9 ?? Ss 0:00,01 /usr/local/sbin/clamd greenh> посмотри, что clamav в логах пишет? greenh> /var/run/clamav/clamd: папка есть? greenh> ау frend> ага. greenh> а что в логах пишут? frend> Tue Sep 7 18:07:15 -> Log file size limited to bytes. Tue Sep 7 18:07:15 -> Reading databases from /usr/local/share/clamav Tue Sep 7 18:07:21 -> Protecting against 8 viruses. Tue Sep 7 18:07:23 -> ERROR: Socket file /tmp/clamd is in use by another process. Tue Sep 7 18:07:24 -> No stats for Database check - forcing reload Tue Sep 7 18:07:28 -> Reading databases from /usr/local/share/clamav Tue Sep 7 18:07:33 -> Database correctly reloaded (8 viruses) greenh> А ЧТО В ПАПКЕ /var/run/clamav/clamd frend> А ничего. :( greenh> ЯСНО frend> И мне ясно :) greenh> в clamav.conf должно быть такое PidFile /var/run/clamav/clamd.pid есть? frend> Нету. greenh> вообще про PidFile ничего не сказано? frend> В логе? greenh> в rjyat greenh> в конфе frend> PidFile /var/run/clamav/clamd.pid frend> LocalSocket /var/run/clamav/clamd greenh> а их там нету? frend> неа frend> Похоже, что-то с правами доступа. greenh> а проверь права greenh> :) frend> Угу. Всё есть. И сокет и pid greenh> отлично перезапускай постфикси пробуй :) frend> Gkj[j ^( greenh> что такое? frend> Fuf/ frend> Ага. :) greenh> ??? greenh> ну? frend> Ща frend> Ловит :) greenh> отлично что и требовалось доказать шлифовку уже сам, а то я еще не разбирался frend> Угу. Спасибо! Пока! greenh> пока

<< Предыдущая ИНДЕКС Поиск в статьях src Установить закладку Перейти на закладку Следующая >>

Обсуждение [ RSS ]
  • 1, Jorj_K (?), 17:00, 21/08/2005 [ответить]  
  • +/
    НЕ РАБОТАЕТ
     
     
  • 3, greenh (??), 22:25, 09/10/2005 [^] [^^] [^^^] [ответить]  
  • +/
    что именно?
     

  • 2, Jorj_K (?), 17:51, 21/08/2005 [ответить]  
  • +/
    заработало спасибо

    -o smtp_data_done_timeout=1200
    amavis и clamav надо упскать от одного пользователя, в /usr/local/etc/postfix/main.cf
    оставить
    smtp inet n - n - - smtpd

     

     Добавить комментарий
    Имя:
    E-Mail:
    Заголовок:
    Текст:




    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2024 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру