компьютерное

warning: Creating default object from empty value in /usr/data/www/drupal6/modules/taxonomy/taxonomy.pages.inc on line 33.

nginx как прокси для почты

Захотелось немного поиграть в отказоустойчивость почтового сервера.

Одним из необходимых моментов оказалось перенаправление запросов на нужный бэкенд. Заниматься этим умеет Nginx. Статьи по этому поводу в нете присутствуют, но при реализации, как всегда, появляются подводные камни. :-(

Нужно учесть:

  • nginx с бекэндом соединяется исключительно без SSL (или я не понял как настроить подругому)
  • на smtp сервере nginx не авторизуется, соответственно, всякие ограничения на кол-во писем и прочее нужно реализовывать или средствами nginx или с привязкой не к сессии отправителя ($authenticated_id), а к его адресу $sender_address
  • если используется сетевая/кластерная файловая система для хранения почты у Dovecot, то нужно поправить настройки conf.d/10-mail.conf
    mmap_disable = yes
    mail_fsync = always
    mail_nfs_storage = no
    mail_nfs_index = no

     

Долго бился с подключеним модуля mail:

unknown directive "mail"

Оказалось, что нужно его подключать следующим образом:

load_module /usr/local/libexec/nginx/ngx_mail_module.so;

Следующий шаг был скрипт авторизации. Во всех инструкциях он был на перле и мне казался слишком сложным.

В итоге нашел на php и попроще.

0
Your rating: Нет

Подитог 2016

Какие умные слова выучил за 2016 год:

0
Your rating: Нет

Уря!! Сайтег восстал из пепла.

Жили были, не тужили
Тихо сайтик уронили.

Уронили, блин, с винтом,
Щаз об этом и споем.

Стандартная постройка:

  • FreeBSD
  • ZFS
  • VirtualBox
  • Система с сайтегом.

Что-то с винтом не заладилось, и VirtualBox решил, что образ не кошерный:

 Power up failed (vrc=VINF_SUCCESS, rc=NS_ERROR_FAILURE (0X80004005))

Великий и ужасный гугль, послал в сад раскапывать самый свежий бэкап, т.к. файл побился. На это так же без застенчиво намекал zpool status -v.

errors: Permanent errors have been detected in the following files:
        /usr/data/virtual/web/web_100gb.vdi

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

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

dd if=backup/web_100gb.vdi of=web_100gb.vdi conv=notrunc bs=1m seek=0 count=1

И, ура!!! мы в дамках. Виртуалка поднялась, идем делать бэкапы. :-)

0
Your rating: Нет

Работа с архивом фотографий.

В очередной раз захотелось навести порядок с фотографиями.

На данный момент набралось что-то около 100 тыс. файлов примерно на 700 гб.

Что не нравится в текущих:

  1. Нет возможности работы на сервере
  2. Нельзя работать из нескольких мест
  3. Нет работы с несколькими местами хранения файлов (т.е. что-то мы положили на внешний винт, что-то на нашем винте и все это слить в экстазе)

Какие программы для фотоархива нашел:

Для сортировки файлов по папкам год/месяц день:

  • скрипт с каким-то просмотрщиком - Wita
  • под Windows - FotoSort

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

0
Your rating: Нет

Совместимость MooseFS 2 и 3

Продолжая играться с MooseFS решил посмотреть, на сколько совместимы 2 и 3 версии:

  • Chunk сервер 3 версии без проблем подключился и начал работать с MFSMaster 2 версии. Downgrade прошел безболезненно.
  • mfsmount 3 не захотел подключаться к MFSMaster 2 версии
  • mfsmetalogger 3 нормально подключился к MfsMaster 2 версии. Downgrade прошел безболезненно.
0
Your rating: Нет

Вспоминаем учителя Инь Фу Во

Некоторые события напомнили мне о Дао информационной безопасности. Рекомендую ознакомиться с полной версией.

2.2
Инь Фу Во два дня настраивал VPN-туннель для своего персонального компьютера. Когда туннель заработал, Инь уселся, почтительно повернувшись лицом к югу, и стал читать свою френдленту.
– О, Учитель, – спросил его Сисадмин, – я не могу понять, зачем вам VPN?
– Ты разве не знаешь, что в VPN-туннеле весь трафик шифруется? – удивился Инь.
– Знаю. Но ваш туннель терминируется на обычном сервере в стране западных варваров. А далее весь ваш яшмовый трафик идёт по Сети в открытом виде.
– Сети нет дела до моего трафика, чего не скажешь о провайдере, – ответил Учитель. Видя, что Сисадмин не понял, он добавил. – Вот, например, ты доверил свои деньги банку.
Сисадмин кивнул.
– Но ты не можешь доверить все свои деньги собственной супруге, – продолжал мудрый Инь. – Почему? Потому что она может посчитать эти деньги своими. А с банком такого не случится.
Просветлённый Сисадмин ушёл поднимать себе VPN-туннель.

2.10
Директор сказал:
– Зачем нам шифровать содержимое дисков? Зачем нам VPN? У нас нет противозаконной информации.
Мудрый Инь Фу Во ответил:
– Безгрешность – не результат праведности, а результат наивности.

Соответственно, для принятия некоторых привентивных мер нужно поднять тунель в "страны западных варваров".

Задачка из двух частей:

0
Your rating: Нет

Автоматическая установка и обновление 2gis под nix'ами

Возникла необходимость у людей в использовании 2gis. Он поддерживает установку в сетевую папку и использование без установки чего либо на каждом компьютере. Одна беда, для обновления требуется запускать отдельную службу, которая работает или под Windows или под Wine.

Сервер у меня под FreeBSD без Xов и прочего, соответственно, Wine отстутствует. А все настраивать под Windows очень не хочется.

Пришлось придумывать скрипт, который бы полностью установил 2gis со всеми плагинами и городами в определенную папочку на сервере.

Задача разделилась несколько подзадач:

  1. Получение и установка оболочки 2GisShell
  2. Получение и установка плагинов. Т.к. часть плагинов в архивах zip, а часть в виде MSI файликов задача разделилась на:
    1. Получение zip архивов плагинов и распаковка их в нужный каталог
    2. Получение MSI файлов плагинов, их распаковка, переименование файлов и копирование в нужный каталог
  3. Выбор, получение и установка карт городов.

Из-за того, что несколько подзадач, скрипт получился несколько больше чем расчитывал, но надеюсь, достаточно полный и надежный. Т.к. нужно было выдергивать файлы из MSI, как архиватор решил использовать 7zip, т.к. он справляется и с архивами и с MSI.

Пробовал использовать cabextract и unshield, но ни тот ни другой не смогли нормально распаковать MSI - получались какие-то невнятные файлы.

0
Your rating: Нет

Учимся ронять и поднимать MooseFS

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

0
Your rating: Нет

Блокировка исполняемых вложений во всех архивах в exim

Как выяснилось, clamav не умеет распаковывать разные архивы, типа 7-zip, rar старше 3-й версии и возможно еще что-то.

И соответственно, вирусы и прочие вредные файлы могут пройти через почтовый сервер, что к сожалению и произошло. angry

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

Плюс 7-zip поддержка кучи форматов:

0
Your rating: Нет
Ленты новостей