РУССКИЙ PRIVOXY |
|||
|
Навигация
Сервис
Креатив
Загрузки
Цитата...
Женись, несмотря ни на что. Если попадется хорошая жена, будешь исключением, а если плохая - станешь философом. (Сократ)
|
Статья о P3Scan - почтовом прокси-сервере, фильтрующем почтовые вирусы и спам
P3Scan - это простой, удобный и многофункциональный сканер почты, специально заточенный для работы в качестве прозрачного прокси. Умеет проверять на вирусы и спам как входящую (по протоколам POP3/POP3S), так и исходящую (по протоколу SMTP) корреспонденцию. P3Scan поддерживает такую полезную и удобную функцию протокола POP3, как возможность закачки заголовков и первых строк сообщения (top mode) без получения всего письма, что может быть удобно при работе с теми почтовыми ящиками, в которые ежедневно льются нескончаемые потоки спама и прочей "нежелательной корреспонденции" К сожалению, top mode поддерживают далеко не все почтовики: по сути единственным известным мне почтовым клиентом, активно использующим этот режим, является популярный в нашей стране The BAT! Отличительной чертой P3Scan является его ненавязчивость: в отличие от монстроидных решений, требующих кропотливой работы по настройке и отладке полноценного почтового сервера даже на обычном домашнем компьютере, весь процесс установки и настройки P3Scan сводится буквально к нескольким простейшим операциям, выполнить которые вполне по силам даже начинающему пользователю Linux, не являющемуся специалистом в области сетевых технологий и тем более - в области противоречивой и запутанной хакерской философии UNIX-систем (в качестве классического образчика которой может служить файл sendmail.cf Основной функцией программы P3Scan является сканирование почтовых вложений на предмет наличия в них вирусов. В настоящий момент P3Scan поддерживает без дополнительной настройки следующие широкораспространённые (и не очень) антивирусы: ClamAV, F-prot, Trophie, Kaspersky Antivirus, при чём этот прокси свободно "общается" как с демонами через интерфейс TCP-сокетов, так и с автономными программами-сканерами. Разумеется такой подход, при котором для каждого отправляемого/получаемого письма загружается одна копия программы-сканера и, соответственно, число её копий в памяти оказывается прямо пропорциональным объёму корреспонденции, не приемлем для любых более-менее крупных серверов, но для домашних пользователей способность P3Scan работать с внешними программами может оказаться очень полезной, поскольку для многих коммерческих антивирусов программы-сканеры предоставляются бесплатно, а вот "демоны" уже продаются за немалые деньги, при чём зачастую ещё и по подписке, когда коммерческие версии антивируса можно лишь "арендовать", но не купить целиком. P3Scan без проблем будет работать с любыми программами-сканерами, для этого в конфигурационном файле p3scan.conf нужно правильно установить следующие опции:
Установка и настройка P3ScanИтак, перво-наперво скачиваем P3Scan отсюда. Практически без опасений можно брать developers'кий дистрибутив программы: разработчик P3Scan, Джэк Лэй, больше известный в кругах широкой интернет-общественности как laitcg, придерживается вполне надёжной схемы тестирования и прежде, чем выложить новую девелоперскую версию на SourceForge, он сначала тщательно "шлифует" программу, занимаясь скурпулёзной отладкой кода, а после того, как убеждается в том, что на его собственной конфигурации P3Scan работает абсолютно стабильно, даёт ссылку на конференции, некоторое время ждёт сообщений о выявленных ошибках от своих добровольных помощников, и если таковых в течение 3-х - 4-х дней не поступает, представляет сборку на суд широкой общественности, т.е. на наш с вами суд![]() Затем собираем программу либо стандартной комбинацией Code: ./configure && make && make install
, либо так, как это делал я:
Code: ./configure --with-doc=/usr/share/doc --with-lang=ru --prefix=/usr --sysconfdir=/etc --localstatedir=/var
Далее редактируем главный (и пока что единственный) конфиг P3Scan'а, где устанавливаем тип используемого сканера, указываем, как именно программа должна получать доступ к антивирусу, какой шаблон следует использовать P3Scan для формирования сообщения об инциденте при получении заражённого письма, от имени какого пользователя будет работать демон и все его дочерние (порождаемые) процессы и т.д. Кстати, по поводу шаблона: разумеется, нам, русскоязычным, удобнее читать перевод Максима Бритова, а не английский оригинал make && make install , так что смело прописывайте путь к локализованному варианту "уведомления о получении вируса", который находится в одном каталоге с p3scan.conf, в файле шаблона p3scan-ru.mail. Заодно уж не поленитесь залезть в этот файл и поменять там слово с очепяткой "выполнятся" на "выполняется"...
Снова для пущей наглядности приведу свой пример:
Code: scannertype = clamd
scanner = 127.0.0.1:3110 template = /etc/p3scan/p3scan-ru.mail user = clamav
Соответственно, в моей конфигурации P3Scan взаимодействует с демоном антивируса ClamAV через TCP-сокет (не путать с файлом сокета), ClamD привязывается к адресу 127.0.0.1:3110, что задаётся настройками антивирусного демона в файле /etc/clamd.conf или /usr/local/etc/clamd.conf (TCPAddr 127.0.0.1, TCPSocket 3110), в зависимости от того, собирали ли вы ClamAV из исходников с дефолтными установками (configure без параметров) или просто поставили бинарный rpm. В моём примере параметру user присвоено значение clamav вместо mail, использующегося по умолчанию. О том, почему я предпочёл нестандартное значение user, смотрите выше по тексту (заниматься самоцитированием - последнее дело), могу лишь сказать, что у меня были на то очень веские основания
Для нормальной работы P3Scan в качестве прозрачного прокси опция TargetIP должна быть закомментирована или равна 0.0.0.0, а TergetPort... при необходимости можете поменять, разумеется, но пока оставим как есть, тем более что значение по умолчанию назначается в соответствии с неким негласным стандартом для прокси-серверов: номер_порта=номер_порта_целевого_сервиса+8000. Поскольку P3Scan изначально разрабатывался как POP3-прокси, то и слушает он порт 8110 - всё правильно, всё логично, придраться не к чему
Далее: значение параметра virusregexp имеет смысл менять только в том случае, если вы используете что-то отличное от Clam'а То же относится к goodcode и viruscode. Раскомментировать параметр-ключ demime, возможно, придётся тем убеждённым сторонникам нестандартных решений, кто использует для сканирования почты на предмет наличия вирусов некий "альтернативный" ClamAV'у движок, не умеющий самостоятельно выделять вложения из контента e-mail собщений. С помощью библиотеки ripMIME P3Scan извлекает вложения из e-mail собщения и передаёт их на проверку антивирусу, как обычный файл со всеми сопутствующими атрибутами (имя, расширение). Для того, чтобы использовать возможность автоматического преобразования любых сообщений в понятный любому антивирусу вид вам нужно установить библиотеку ripMIME (по умолчанию при её отсутствии P3Scan просто откажется собираться).Если же вы так же, как и я, предпочитаете пользоваться ClamAV или любым другим антивирусом, способным самостоятельно осуществлять проверку почтовых сообщений, то для вас имеет полный смысл отключить поддержку P3Scan'ом совершенно лишней библиотеки, передав скрипту configure параметр --disable-ripmime. В этом случае, разумеется, P3Scan нормально соберётся и при отсутствии установленной в системе ripMIME
Поскольку P3Scan уже давно поддерживает простой и эффективный механизм так называемых "чёрных" и "белых" списков адресов, вас могут заинтересовать параметры, связанные с отображением сообщений о получении письма от адресата, занесённого в чёрный список (blackshort и blacksubj). Если кто-либо из клиентов локальной сети или вы сами пользуетесь одной из устаревших версий почтовика Outlook/Outlook Express и при использовании P3Scan у вас возникают какие-либо проблемы при получении писем с "большими" вложениями (в документации к P3Scan не поясняется, начиная с какого размера вложения следует считать большими В P3Scan оригинально реализована поддержка протокола POP3S: инциализирующий соединение с почтовым сервером IP-пакет, у которого в качестве целевого порта указано значение параметра sslport (по умолчанию - 995), открывает шифрованное SSL-соединение между почтовым сервером и P3Scan. Причём от клиента до P3Scan и обратно трафик не должен шифроваться (во всяком случае, на входе P3Scan со стороны клиента может быть только plain text), т.е. для того, чтобы обеспечить защиту от прослушки почтового трафика в сетях, лежащих между компьютером, на котором запущен P3Scan и удалёнными почтовым серверами, вам необходимо прописать в настройках почтовых программ порт 995 (pop3s) вместо 110 (pop3), но при этом любые формы SSL-шифрования на стороне клиента должны быть отключены! Очевидно, что при работе P3Scan в режиме локального прозрачного прокси найстройки должны быть полностью аналогичными: SSL-соединение устанавливает не клиентская программа-почтовик, а сам P3Scan, создающий таким образом классический шифрованный туннель между "внутренней зоной доверия" (loopback-интерфейс локального компьютера или адресное пространство локальной сети) и "агрессивной средой".
Если вы не планируете эксплуатировать P3Scan в связке со спам-чекером (поддерживаются SpamAssassin и DSPAM), то для настройки P3Scan представленного выше краткого описания вам должно быть более, чем достаточно, поскольку менять что-либо ещё в конфиге этой в общем-то довольно простой программы, на мой взгляд, не имеет смысла: не подумайте, конечно, что это опасно для жизни, ни в коем разе, - просто все "потенциально интересные" опции я уже перечислил, а остальное нужно либо для настройки фильтрации спама (сам я этим не занимался... пока, так что, к сожалению, не могу поделиться с вами каким-либо ценными соображениями на сей счёт), либо для отладки, либо оставлено "в информационных целях" (пути к каталогам), либо просто представляет собой своеобразный "задел на будущее" (опции, связанные с работой через протокол IMAP)
Настройка P3Scan для работы в качестве локального прозрачного прокси на домашнем компьютере ("для индивидуального пользования", хотя домашним PC, безусловно, могут и несколько человек пользоваться):
Настройка P3Scan для работы в качестве обычного прозрачного прокси (т.е. прозрачного только для клиентов LAN, но не для самого сервера, на котором P3Scan запущен):
К сожалению, сейчас по непонятным (лично мне) причинам, P3Scan работает в качестве локального прозрачного прокси крайне нестабильно. Например, на моём компьютере установлена его бэта-версия 2.9.04d.b8, которая при тестировании в режиме периодической проверки получения новых email-сообщений с коротким временным шагом в 2 минуты, умудряется нормально работать порядка одного-полутора часов (я отсылаю письма "прозрачно" и также их принимаю, вирусы P3Scan без проблем находит и присылает соответствующее оповещение), но по прошествии такого довольно продолжительного периода времени программа вдруг даёт сбой и впадает в полный ступор, из которого её даже Ctrl+C при запуске в отладочном режиме с перехватом консоли вывести невозможно (т.е. фактически P3Scan просто "умирает"), при этом в логах/на консоли появляется сообщение об ошибке "зацикливания" программы. Я уже сообщил об этой ошибке разработчику, пока что он работает над проблемой перехвата нажатия комбинации клавиш Ctrl+C в какой-то критической секции (видимо, там блокируются обработчики прерываний по внешним сигналам). Так что, если и у вас P3Scan в режиме локального прозрачного прокси будет систематически давать сбои (в качестве обычного transparent proxy для клентов локальной сети P3Scan работает как швейцарские часы, в этом отношении у меня абослютно никаких претензий к нему нет), используйте более традиционную схему:
Вот, собственно, и всё, что мне хотелось бы поведать вам о замечательном почтовом фильтре P3Scan. "За бортом" остались вопросы настройки этой программы для интеграции с популярными спам-фильтрами и тонкие моменты взаимодействия P3Scan с "нестандратными" антивирусами (например, для меня представляет немалый интерес возможность P3Scan вызывать в качестве антивирусного сканера любые программы, возвращающие достаточно информативные и, главное, предсказуемые коды, что позволяет фильтровать корреспонденцию с помощью полноценных сценариев на BASH, которые, разумеется, совершенно не обязательно должны проверять почту именно на предмет наличия вирусов во вложениях
2.09.2006 07:32 Добавил: Greignar
Комментарии
Выкладываю ее здесь...
Ссылка на статью не рабочая! Выложите пожалуйста статью по другому адресу! Очень интересно почитать.
15.06.2008 14:47
ProxyUser
Страницы: 0
Уважаемые посетители!При публикации Ваших отзывов рекомендуется придерживаться следующих правил:
И маленькая просьба - не превращайте страницы отзывов, форума и гостевую в чат, воспользуйтесь специально предназначенными для этого протоколами (icq, jabber...) Примечание: основная масса сообщений фильтруется силами программного обеспечения сайта. Если Вас заблокировали, но Вы считаете, что произошло досадное недоразумение - обратитесь к администратору сайта и вопрос будет решен.Добавление комментария
|
||
|
|||