Pull to refresh
56
0
Shader, a.k.a @Hesed

Администратор, программист

Send message
Soundex не всегда давал нужный результат в моём случае, пришлось переделать велосипед — сочетание алгоритмов Beider-Morse и Daitch-Mokotoff. Сработало для случаев, когда одно и то же название (или фамилия) транслитерировались по-разному: Железный, Železnij (латышский), Zeleznij (обрезанная диакритика) и Zheleznij (фонетическое транслитерирование). В данном конкретном примере общим ключом становится 484600. Форк доступен на гитхабе
До технологии, позволяющей бить лицо через Интернет, остаётся всего ничего.
Динамика, конечно, есть, но ещё не один и не два релиза пройдут, прежде чем моя любимая Опера перестанет «хромать». И как операфил со стажем, я очень давно ждал поддержки autocomplete в формах. Это единственное, чего мне не хватало в опере. Дорогой Боженька, я ведь просил совсем не это…
*хлопнул себя по лбу* вот я краб. Теперь да, защищаю. Добавил третье правило в jail.conf для fail2ban. Думал руками написать, но родной filter.d/sasl.conf полностью подошёл.

Позор на самом деле, потому что в последний инцидент со спамом через почтовик была вовлечена авторизованная учётка (у пользователя test был гениальный пароль). Радость эта шла извне сети и поэтому не попадала под внутренний антиспам на SNORT'е. После такого забыть поставить проверку — просто непростительно. Спасибо за напоминание :)
Авторизацию не поддерживают некоторые пользователи :) Точнее они не поддерживают изменения привычного уклада вещей и оборвут телефоны техподдержке, когда их привычный ламповый мейл вдруг перестанет принимать почту, требуя аутентификацию. К сожалению, даже древняя аппаратура в этом плане посговорчивее будет. Впрочем, я взял на заметку этот совет, попробую провести методичную артподготовку — менять к лучшему, так на всех фронтах.

Но это чревато, да и не тривиально. И вообще — из пушки по воробьям.

Не совсем — воробьёв очень уж много :). Поэтому в системе задействован snort, на который миррорится smtp трафик и который чутко его слушает. В случае превышения допустимого значения (найденного в своё время эмпирическим путём), по SNMP засылает команду на коммутатор или на модем (не к ночи будь помянут), выставляя на порту соответствующий CoS. Блокировка smtp трафика происходит на маршрутизаторах по соответствующему ip access-list.

На практике получается, что боты не умеют не жадничать и моментально попадают в блокировку. False positive срабатывания крайне редки и укладываются в статистическую погрешность :). Разумеется, есть политики исключений для определённых категорий клиентов, которым действительно нужен большой поток исходящей почты (например, охранка + sms) — они проверяются по-другому. В целом, abuse ящик очень чутко реагирует на любой срач в сети. Последняя жалоба на спам была забавной — спам шёл с нормально авторизующегося аккаунта — у пользователя test был гениальный пароль, его только идиот бы не подобрал. В остальном спам-боты не проходят, а вот жалобы на брутфорс из сети последнее время зачастили, ну не читать же HTTP запросы теперь…
1. Увы, но SMTP без авторизации в моём случае — необходимость и mynetworks являются действительно trusted подсетками. Борьба с абьюзом и вообще спамом осуществляется на уровне ACL и QoS на коммутаторах, так что спам-сервера из такой конфигурации не получится, это всё же не open relay. В блэк-листах не сидели отродясь :) Но Вы правы, я внесу соответствующие правки, обозначив, что такой подход мм… опасен.
2. Если классы не пересекаются, то проблемы быть не должно, но да, можно исключить вообще. Пытаться перенести что-то из старой конфигурации было довольно дурной идеей…

По Вашему предыдущему комментарию: virtual_mailbox_base указан в секции «virtual» только чтобы логически разделить секции настроек по группам. Выглядит «немного» некорректно, там из «дружбы» только virtual_transport и есть. Подумаю над изменением формулировок. Спасибо за конструктивную критику.
Изначальная причина — миграция с существующего сервера courier. А в остальном пока не возникло необходимости в конвертации в *dbox. Наверное, Вы правы — с нуля имело бы смысл и в родном формате dovecot'а держать.
Я ждал этого вопроса :)
График сделан системой OpenNMS. Данные собираются по SNMP. На почтовом сервере в snmpd.conf указываются extend'ы
extend mailbounced /bin/cat /var/tmp/mailbounced
extend maildeferred /bin/cat /var/tmp/maildeferred
extend mailexpired /bin/cat /var/tmp/mailexpired
...

А сами файлы в /var/tmp/ пишутся через syslog-ng, который пишет их на основании логов. Статья по этой системе у меня пока лежит в виде опорных планов и кусков кода. Соберу камни и критику по этому туториалу, извлеку урок и возьмусь с новыми синяк силами.
Мне по старой привычке удобнее puppet, но кто использует SCM, тем этот туториал не нужен :)
А для обучалки хорошо подходит git+gitlab или redmine, позволяя отслеживать и наглядно отображать изменения конфигураций в привычном интерфейсе.
Когда я начал превращать внутреннюю вики-документацию в статью, то ужаснулся от объёма только лишь опорного плана и листингов конфигурационных файлов. Поэтому пришлось пожертвовать деталями. Процесс настройки до боевых условий будет разниться в зависимости от нужд (корпоративный сервер, провайдерский, для личного использования или для публичного хостинга и т.п.). Охватить всё просто не представлялось возможным. Равно как не увидел необходимости пытаться систематизировать какие-то best practicies — они для всех разные будут.

Поэтому я поставил цель показать последовательность настройки основных систем почтового сервера с нуля в рамках единой статьи, ориентируясь на начинающих.

Fail2ban у меня крутится на многих серверах, защищая даже от любопытных глаз, которые ищут всякие phpmyadmin, пытаются залогиниться в OTRS систему и т.п. Ну не люблю я грязные error_log'и =). Кастомные правила для него пишутся очень легко и инструмент для тестирования весьма удобен (fail2ban-regex).
Патч для amtlib появился раньше и успешно позволял «продлевать» триальный режим. Однако, после amtlib пункт обновления программы становился неактивным и, например, Camera Raw 8.1 уже поставить было нельзя. Новый патч обходит эту неприятность. Хм… непонятно, откуда я всё это знаю…
«Цифровое бессмертие» неплохо показано в первой серии второго сезона «Чёрного зеркала» (e01s02 Black Mirror «Be Right Back»).
Я знал, что так будет. Это всё из-за меня — стоило решиться начать основательный проект на Yii и дописать его скелет, как анонсировали Yii2.
Скидки — это всегда хорошо, но поблагодарю в первую очередь за очень лояльную политику лицензирования для индивидуальных разработчиков. На фоне лицензий, вцепляющихся в компьютер мёртвой хваткой, работать с вашим ПО исключительно приятно.
Эх, если бы была родная поддержка многоязычности… На сегодняшний день логичнее писать с нуля, чем допиливать какие-то существующие движки, а для некоторых клиентов важен быстрый старт, чтобы попробовать «а нужно ли им это». Для этой цели хорошо подходят Simpla и Shop-Script, в управлении которыми (не в кодинге, а именно в управлении) легко может разобраться не шибко подготовленный человек. Но родной поддержки многоязычности в них нет, а для части стран — это насущная необходимость.
Читается на одном дыхании. Принимая во внимание гладкость изложения, отличные социальные навыки и умение манипулировать ситуацией, почему-то мне кажется, что Вы очень уж принижаете свои технические навыки.
Кстати, «добавлять новости на сайт» я тоже не умею. ;)

Поднять сервер, систему и бэкап куда проще, чем заставить эту конструкцию работать. Разобравшись с таким внедрением, освоить какую-то новую систему и восполнить недостающие технические навыки должно быть раз плюнуть.
Server: HrenDogonish/0.9
Date: Mon, 20 Aug 2012 15:52:32 GMT
Connection: Close


Не X-header, конечно, но ведь заголовок же. Когда-то этот сервер стоял и на хабре, сейчас нашёл только один живой сайт на нём.
В далёком 2001, выпустив Office XP, майкрософт нанёс травму моей невинной детской душе, оставив нецензурный комментарий в коде /Program Files/Common Files/Microsoft Shared/Grphflt/cdrimp32.flt. [Uncensored screenshot].

Information

Rating
Does not participate
Location
Даугавпилс, Латвия, Латвия
Registered
Activity

Specialization

System Software Engineer, DevOps
Lead
Software development
Database
PHP
Python
DevOps
System administration
Linux
Network technologies
Designing application architecture