четверг, июня 29, 2006

ДДД: Спаму — хрен! (2 серия)

Заканчивается первая неделя работы спам-фильтра ASSP на почтовом сервере. Пользователи в панике. Звонят: Почта не работает!!! — С какой стати? — А где мой спам??

Я сам получил последнее спамерское сообщение позавчера. Вчера и сегодня пусто. Это после трёх-четырёх десятков в день.

Изучение логов открывает много интересного. Во-первых, списки RBL — очень эффективная штука! Больше половины спама блокируется по ним.

Во-вторых, спамеры — ленивые бакланы. Огромное количество спамерских соединений в HELO говорит 'friend' или даёт IP моего собственного почтового сервера. Оно, конечно, срабатывает на полностью демократичном почтовике, но таких остаётся всё меньше... думаю, мой был один из последних :-)

В-третьих, Bayes — сила. Когда обучен. Первое обучение я делал на базе из примерно 500 спамерских писем (документация ASSP советует от 400), но реально фильтр заработал сегодня, когда база спама выросла до порядка 4000 писем, а неспамом я его накормил вручную, переслав на сервисный адрес несколько сот писем из своих архивов — да выбирал подлиннее, чтобы было много букафак :-)

В принципе, сейчас, когда и чёрная, и белая база образцов пополняются автоматически (вся исходящая переписка идёт в белый архив, определившийся спам — в чёрный), можно уже записывать в crontab ежесуточное пересоздание словаря для Bayes-фильтра. До сих пор я это делал ежедневно вручную.

Вчера изъяли у основных почтописателей адресные книги и в четыре руки отправили технические сообщения по всем контактам. Смысл был в том, что сам факт отправки письма туда ставит контакт в белый список, а это важно.

Последний шаг — включение Penalty Box, штрафной скамейки. Прокосячившиеся IP получают очки в зависимости от тяжести косяка. Так, попытка воспользоваться сервером как релеем начисляет 15 очков, а подложное HELO — сразу 200. Набравший 150 очков IP ставится в список, на основании которого ему потом просто сразу отказывается в соединении, без затрат времени и сил. Список тоже обслуживается автоматом, через какое-то время очки снимаются, а если что — снова начисляются, и новый срок :-) Список Penalty Box уже довольно большой, но только ведётся, пока что без принятия мер. С понедельника попробую включить.

Ну и выдержки из статистики за последние три дня:

Totalled Statistics

SMTP Connections Received: 23099
SMTP Connections Accepted: 22920
SMTP Connections Rejected: 179
Envelope Recipients Processed: 39721
Envelope Recipients Accepted: 17020
Envelope Recipients Rejected: 22701
Messages Processed: 6032
Messages Passed: 1205
Messages Blocked: 4827

Итого на 23 тыщи соединений принято 1205 сообщений.

Messages Statistics

Bayesian Hams: 305
Bayesian Spams: 416
HELO Forged: 1322
RBL Failures: 3089

Оч-чень хорошие цифирки :-) Подумать только, раньше эти 416+1322+3089 сообщений проходили бы и загаживали ящики. А теперь... а теперь надо усиленно качать музыку, чтобы внезапно сократившийся трафик не вызвал недоумения начальства :-)

понедельник, июня 26, 2006

Посетив с утра кладовку

Достал постель, убрал постель. Достал постель, убрал постель. Достал постель, убрал постель. Достал постель, убрал постель. Достал постель, убрал постель. Достал постель, убрал постель.

Надо что-то в жизни менять. Начать спать без постели?

пятница, июня 23, 2006

ДДД: Юбилейная книга ОАО «Комплекс»

«Комплекс» — это грузовики, экскаваторы, всё такое. Если видите в городе оранжевый «КАМАЗ» (или сразу десять) — обратите внимание, там будет такая незатейливая «К» на дверце. Контора большая и старая. 60 лет, шутка ли.

К своему юбилею в октябре 2005 года они решили издать книгу, для чего вышли на редакцию «Находкинского рабочего», а оформительская работа окольным путём (из-за загруженности мэтра ;-) городского дизайна Мао) попала ко мне.

Книжка формата А5 в твёрдом переплёте, 64 страницы: частью цветные, частью чёрно-белые.

Работать с ними было одно удовольствие — потому что журналисты. Это значит: все фотографии были отсняты в изобилии и опытной рукой, а тексты — ясно изложены, структурированы и вычитаны. Сиди себе да занимайся чистым искусством... хм, прикладным :-).

В итоге получилась красивая и в срок испечённая книжка, а плюс к этому — познания в искусстве кройки переплётов и глубокое взаимное удовлетворение удачно сделанной работой.

Сегодня, по совпадению, эта книжка мне аукнулась: позвонили из другой организации-юбиляра и предложили сделать нечто подобное. Выйдет или нет — не знаю, жизнь немножко расписана :-) но если не выйдет — мне точно будет очень обидно. Такие вещи интересно делать.

ДДД: Годовой отчёт ОАО «Синергия»

Это было в те времена, когда «Синергия» ещё не перебралась в Москву, а располагалась вместе со всем руководством на втором этаже бизнес-центра «Колизей». Сейчас их годовые отчёты, наверное, намного толще ;-) но тогда это была тоненькая брошюрка с требованием «просто и строго» (ну везёт на таких заказчиков). Печаталась чёрным и тёмно-синим, обложка — серебром на тёмно-синем.



Чтобы оценить степень их приверженности простоте, вот два варианта обложки (красивый и концептуальный), которые были отвергнуты из-за излишеств:



Логотип «Синергии» — SY с загогулиной — тоже пришлось придумывать где-то в это время (чуть ранее). На самом-самом первом буклете в их истории, срочно отпечатанном в нескольких экземплярах на принтере к какой-то московской выставке, логотип был построен на большой и жирной e, символизирующей енергию, как мы помним из физики :-) Но этот вариант зарубили по причине того, что жирная «е» ассоциируется с интернет експлорером.

Кстати, вот сейчас уже сомневаюсь... возможно, нынешний логотип как раз и был срочно-срочно придуман для срочного-срочного буклета.

Как бы то ни было, на сайте «Синергии» сейчас можно видеть слегка переработанный вариант этого же SY-лого... а прежний вариант вы всегда найдёте хотя бы на пачке кефира Уссурийского молокозавода.

ДДД: Спаму — хрен.

Спам одолел. Почтовые клиенты (Thunderbird особенно) его частью отсеивают, но траффик-то жрётся. Надо что-то делать.

Почтовый сервер под Линуксом.

Немного помогло включение в Postfix проверки домена отправителя. Отсекло тех спамеров, кто указывает фонарный обратный адрес (процентов 20 навскидку).

Всевозможные чёрные списки пришлось отключить из-за жалоб на недоставку почты. Да я и на собственном опыте знаю, как легко можно попасть в чёрный список и как непросто из некоторых выбраться.

Нужна фильтрация содержимого почты — Bayes-анализатор.

Spamassassin я уже пробовал и отказался по двум причинам: тормоза и сложность обслуживания.

Быстро набрёл на хорошую альтернативу: ASSP. Главные плюсы:

  1. Установка тривиальная.
  2. Веб-интерфейс.
  3. Автоматическое обслуживание чёрных, белых, красных — всевозможных списков. Поставил и забыл. Все, кому ты пишешь, оказываются в белом списке.
  4. Кодовое слово. Сообщаешь его адресату, он вставляет где-то в письме — хоть в подпись — и оно никогда не попадёт в спам.
  5. Ловушки спама. Засвечиваешь в вебе специально созданный ничейный почтовый адрес. Хоба-на: через недельку он уже попал в базы спамеров. Всё, что туда идёт, обучает анализатор.
  6. Работает как SMTP-прокси. Реальный почтовый сервер переводишь на другой порт с приёмом только от локального хоста. Вся почта сперва попадает в лапы ASSP, а там уж он решает, принимать письмо или бросить его на полпути или в самом начале сеанса.
  7. Пересылкой на служебные адреса можно указывать спам/неспам, пополнять разрешительные и запретительные списки.
В общем, вещь. Заодно приделал POP/IMAP перед SMTP, чтобы нелокальные юзеры не были обижены сервисом. Оказалось просто: ставится демон, написанный на Перле. Он ищет в логах почты недавно вошедших по POP/IMAP юзеров и пишет их IP в файл. Через какое-то (настраивается) время их оттуда стирает. Пока они там, SMTP их обслужит как родных.

ASSP умеет читать базу pop-before-smtp напрямую, то есть для обозначивших себя удалённых юзеров все сервисы будут доступны.

Пока что пополняю базы спама/неспама для грядущего обучения фильтра. На выходных попробую переставить ASSP на линию огня и посмотреть, что будет. Со своими способностями он и без обученного фильтра много спама должен отсекать.

ДДД: Календарь «Колизея» до конца июля.

См. также.

четверг, июня 22, 2006

ДДД: Календарь «Колизея» — 15—26 июля

См. также.

Топ-3 каверзных вопроса недели

  1. Почему у всех живых тварей голова и задница резнесены на разные концы тела, и только моллюсков словно через мясорубку пропустили?
  2. Для чего японцы пишут на чехлах джиповских запасок потрясающе тупые фразы?
  3. Почему мы всегда хотим не того, чего мы хотим?

Загадки, блин.

понедельник, июня 19, 2006

ДДД: Календарь «Колизея» — 27 июня — 14 июля

Листочки календаря до середины июля — до самого дня взятия Бастилии (см. также).

четверг, июня 15, 2006

ДДД: Проект обновления памятника

Памятник с Вечным огнём замечают, наверное, только когда возле него тусуется свадьба. Что происходит, при режиме работы наших загсов, два раза в неделю. В остальное время он взгляд не задерживает — нечем ему.

Некие люди решили его слегка отремонтировать: перелицевать, подкрасить, выложить гранитом лестницу и площадку. Деньги нужно было вытрясти из городских депутатов. Для этого надо показать, что будет.

Диск с фотками памятника со всех возможных ракурсов мне дали, схему переделки объяснили на пальцах. Остальное надо самому.

В солнечный денёк выехал на место с большим листом бумаги и карандашом. Набросал план, промерил шагами всё, что можно. Вертикальные размеры пришлось прикидывать по фотографиям, зная в шагах горизонтальные.

Потом модель памятника нарисовалась в Блендере:



После этого её уже можно было вертеть как хочешь, подстраивая под снимки местности. В этой версии Блендера как раз появился ambient occlusion, что очень сильно помогло реалистичности картинки:



Осталось только наложить новую картинку на фотоснимок, предварительно подтерев там реальный памятник:



Вышло не без косяков, но в общем неплохо. Памятник, впрочем, так и стоит облезлый. Надеюсь, не из-за меня :-)

ДДД: Календарь «Колизея» — 14—26 июня

Очередная партия листочков (см. также). Сказали, что Обеликс в «Колизее» уже стоит. Надо будет съездить глянуть.



Этот листочек я, конечно, не отдал заказчику ;-) но не сделать не мог :-D

Поиск по этому блогу