Обновить
10
0
TTTOOOPPPTTT@script88

Linux system administrator

Отправить сообщение

Миграция с MDaemon на Exim+Dovecot

Время на прочтение14 мин
Охват и читатели32K
Приветствую Вас, жители Хабра.

Недавно на работе возникла ситуация: необходимо было поднять новый почтовый сервер и перенести на него все текущие учетные записи и структуру их почтовых папок со старого сервера. Эта необходимость возникла по нескольким причинам:
  1. Количество учетных записей было ограничено 250 аккаунтами;
  2. В последнее время сервер почты стал постоянно зависать так, что помогал только хард-ресет (в свое время подметил, что перед этим довольно-таки упорно используется HDD);

Вот что было на тот момент (на платформе SuperMicro):
  • PC: CPU Intel® Xeon® X3440 2.53GHz 2.53GHz, RAM 4GB, HDD 1TB
  • OS: Windows Server 2008 Enterprise Service Pack 2
  • MTA: Alt-N MDaemon (SMTP(S)/POP(S)/IMAP(S) server, SpamD, WorldClient)

Использовалось около 240 учетных записей и папка Users (здесь вся почта) весила около 200 GB.

Что получилось (платформа Dell PowerEdge 2850)
  • PC: CPUx2 Intel® Xeon® E5430 2.66GHz 2.67GHz, RAM 4GB, HDD 408GB (RAID: 0)
  • OS: FreeBSD 9.0
  • MTA: Exim+DoveCot+SpamAssassin

Ну а теперь все по порядку.
Читать дальше →

Оптимизация сложных запросов MySQL

Время на прочтение5 мин
Охват и читатели70K

Введение


MySQL — весьма противоречивый продукт. С одной стороны, он имеет несравненное преимущество в скорости перед другими базами данных на простейших операциях/запросах. С другой стороны, он имеет настолько неразвитый (если не сказать недоразвитый) оптимизатор, что на сложных запросах проигрывает вчистую.

Прежде всего хотелось бы ограничить круг рассматриваемых проблем оптимизации «широкими» и большими таблицами. Скажем до 10m записей и размером до 20Gb, с большим количеством изменяемых запросов к ним. Если в вашей в таблице много миллионов записей, каждая размером по 100 байт, и пять несложных возможных запросов к ней — это статья не для Вас. NB: Рассматривается движок MySQL innodb/percona — в дальнейшем просто MySQL.
Читать дальше →

Маршрутизация в Linux: VRF Lite

Время на прочтение6 мин
Охват и читатели63K
Обычно VRF (Virtual Routing and Forwarding, VPN Routing and Forwarding) используется совместно с MPLS, но без оной в терминологии Cisco называется VRF-Lite. Суть этой технологии в том, что маршрутная информация, принадлежащая различным классам (например, маршруты одного клиента) изолируется друг от друга. Считается, что такие возможности есть только у «взрослых» железных решений, но это не совсем так. Благодаря наличию множественных таблиц маршрутизации, гибких политик маршрутизации всё это можно сделать и в Linux. Кому интересно, добро пожаловать под кат.
Читать дальше →

Элементарный Bash скрипт для резервного копирования данных

Время на прочтение3 мин
Охват и читатели57K
Привет хабралюди, сейчас я расскажу как можно немного автоматизировать рутиную работу по подготовке бэкапов.

В данном случае, мы не будем использовать мощные программы, или даже целые системы для резервного копирования данных, ограничимся самым доступным что у нас есть. А именно — Bash скриптом.

Читать дальше →

Компактное складное рабочее место для ноутбука «своими руками»

Время на прочтение4 мин
Охват и читатели216K
В этой статье-инструкции я хочу рассказать, об одном из вариантов создания рабочего места дома, когда удобное место хочется, а для стола свободного пространства нет (или не хочется его занимать).



Как же это сделать всего за пару часов времени и вменяемые затраты я и хочу рассказать и показать на собственном примере.

Этот вариант в первую очередь будет инетресен людям, работающим дома (полностью или частично) и не имеющим нормального рабочего места или желающим увеличить свободное пространство в комнате заменив громоздкое старое рабочее место на такое компактное
Читать дальше →

Бета-версия modSecurity для Nginx

Время на прочтение2 мин
Охват и читатели13K
ModSecurity — популярный бесплатный Web Application Firewall (WAF) с открытыми исходными кодами. Долгое время существовал только в виде модуля к веб-серверу Apache.
Читать дальше →

OpenDKIM + Postfix = просто

Время на прочтение4 мин
Охват и читатели137K


В конце 2011 года разработчики проекта dkim-milter прекратили его поддержку и разработку. К счастью, на замену проекта dkim-milter пришел OpenDKIM, с помощью которого добавить DKIM-подпись в письма так же просто.

tl;dr: в наше время без DKIM-подписей ну никак нельзя
DKIM-подпись — это цифровая подпись, которая добавляется к заголовкам письма сервером отправителя, по которой сервер получателя может удостовериться, что отправитель письма соответствует полю From в заголовках письма. Если сервер получателя проверяет эту подпись, то по результатам проверки сервер может принять решение о том, как поступать с письмом: принять, отправлять в папку «Спам», отправить на дополнительную проверку или вовсе отказаться от приёма. Подписи DKIM проверяют и используют сами все ведущие почтовые службы, включая Яндекс и Mail.ru. Последняя открыто требует чтобы письма были подписаны с помощью DKIM.


Инструкция по настройке связки Postfix и OpenDKIM

Терабайты файлов веб-проекта — храним и раздаем

Время на прочтение5 мин
Охват и читатели23K
Всем привет!

В последнее время наметился интересный тренд — быстрое «распухание» веб-проектов до бесконечности. Объем данных многих популярных сайтов растет все быстрее и быстрее, их нужно куда-то девать, при этом эффективно бэкапить (весело будет, если файлы на 500Т потеряются :-) ), и конечно супербыстро раздавать клиентам, чтобы все их могли качать, качать, качать… на высокой скорости.

Для системного администратора задача даже редкого, ежедневного резервного копирования такого объема файлов навевает мысли о суициде, а менеджер веб-проекта просыпается в холодном поту от мысли о предстоящей профилактике датацентра на 6 часов (чтобы файлы перевести из одного датацентра в другой нужно пару раз загрузить багажник автомобиля винчестерами :-) ).

Коллеги с умным видом советуют приобрести одно из решений от NetApp, но, жаль, что бюджет у проекта в 1000 раз меньше, это вообще стартап… что делать будем?

В статье хочу разобрать частые кейсы дешевого и дорогого решения данной задачи — от простого к сложному. В конце статьи расскажу как задача решена в нашем флагманском продукте — всегда полезно сравнивать opensource-решения с коммерческими, мозгам нужна гимнастика.
Читать дальше →

Переезд с PostgreSQL 9.0 на 9.2 под нагрузкой

Время на прочтение6 мин
Охват и читатели10K
Всем доброго времени суток!
Как известно, недавно вышел PostgreSQL 9.2 с массой интересных и полезных вещей. Недолго думая мы решили обновить наш кластер потоковой репликации с 9.0 на 9.2. Все бы ничего, если бы не несколько обстоятельств:
  • это продакшен с большой суточной посещаемостью.
  • даунтайм исключен.

Чтож, так даже интересней… Как мы это делали и что из этого вышло читайте дальше.
Детали операции

Облачный PHP хостинг в один клик!

Время на прочтение2 мин
Охват и читатели15K
Рады сообщить, что платформа Jelastic становится «полиглотом» — в четвертом квартале 2012 года планируется запуск PHP облака. Уникальная фишка сервиса Jelastic PHP — это вертикальное масштабирование: больше не нужно переплачивать за большие сервера или страдать от нехватки ресурсов. Благодаря данной фиче с увеличением нагрузки, приложение автоматически получает необходимые ресурсы, с уменьшением соответственно — наоборот. Это действительно новый подход к облачному хостингу: платформа очень проста и удобна в использовании, так что даже новички смогут легко развернуть свои приложения, вместе с тем поддерживаемый функционал очень широк, так что платформа придётся по вкусу даже самым продвинутым PHP разработчикам.

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

image
Читать дальше →

Поднимаем собственный git сервер GitBlit на хостинге Openshift

Время на прочтение4 мин
Охват и читатели26K


Привет, Хабр!
Все программисты делятся на тех, кто использует систему контроля версий, и тех кто ещё ёё не использует. Одной из самых популярных на сегодняшний день, является git. И хотя его структура направлена на децентрализованное хранение данных, все мы пользуемся github, assembla, bitbucket или githost. Главный недостаток этих хостингов, в том, что это чужие проекты, которые в любой момент могут прикрыть ваш аккаунт или слить данные налево. И тут на сцене появляется GitBlit! Git сервер на Java, полностью контролируемый вами, с множеством плюшек и веб-интерфейсом. Сегодня будем запускать его на бесплатном хостинге от Redhat.

Хочу халявный git-сервер!

Найди пять маркеров – и Ultrabook™ твой!

Время на прочтение2 мин
Охват и читатели9.1K
Друзья, суровая реальность такова: лето прошло, отпуска теперь ждать и ждать, а впереди – дожди, холода и работа- работа-работа… Нравится вам такая реальность?.. Нам тоже нет! Потому мы придумали и запустили квест «Дополни реальность!» и весь первый месяц осени намерены всерьез заниматься вашим досугом. А в начале октября мы планируем выяснить, кто из вас самый везучий, и подарить троим счастливчикам по Ultrabook, а еще тысяче участников – по сертификату ozon.ru.

image

Интересно? Тогда рассказываем, как принять участие в акции.

В новый микроскоп IBM видно межатомные связи в молекуле

Время на прочтение2 мин
Охват и читатели145K

Научно-исследовательское подразделение IBM Research в Цюрихе опубликовало картинки, которые удалось сгенерировать с помощью сканирующего атомно-силового микроскопа (АСМ). На изображениях можно различить отдельные атомы углерода в шарообразной молекуле C60. Видны даже химические связи между атомами, то есть перекрывающиеся электронные облака («размазанные» электроны, в терминологии Шрёдингера).

Читать дальше →

Разукрашиваем вывод mysql-client в консоли

Время на прочтение4 мин
Охват и читатели31K
Цвет и звук — это те небольшие радости, которые могут разукрасить и облегчить будние администратора при постоянной работе с консолью. Вывод цветовой информации регулируется так называемым escape-последовательностями, определяющими среди прочего цвет текста и цвет фона.

Общий вид: \033[Xm, где X — это значение параметра (цифра). Например, echo -ne "\033[34mHELLO" выведет синим цветом «HELLO». Таблицу цветов и других доступных параметров (подчеркивание, мигание и т.п.) можно получить в документации man console_codes в разделе «ECMA-48 Set Graphics Rendition». Обычно поддержка цвета интегрирована в само приложение, но mysql-client не входит в число таких программ.

В интернете не раз был встречен вопрос о разукрашивании консоли mysql, но нигде не нашлось рецепта. Только общие слова «может быть состряпать обертку» или «посмотрите в исходном коде». Такой вопрос на StackOverflow жил без ответа более 2 лет! «Жил» было специально употреблено в прошедшем времени, потому что ответ нашелся.

Поможет нам утилита grc. Она доступна в большинстве дистрибутивов и о ней многие знают. Но как обернуть в нее вывод mysql-client?


Читать дальше →

jQuery plugin для форм с динамической структурой

Время на прочтение5 мин
Охват и читатели33K
Хочу поделиться с обществом собственным плагином, который упрощает работу с динамическими формами и называется jqDynaForm. Под динамическими формами я подразумеваю формы, в которые при заполнении пользователь может добавлять по необходимости дополнительные поля или блоки полей. Разумеется, в каждом месте разрешено добавлять только заранее разрешенные виды блоков. Вот примеры подобных простейших форм:

1. Контактная форма, в которой есть поле «телефон». Пользователь может добавить еще несколько дополнительных полей для телефонов, если возникнет желание.

2. Счет на оплату. Есть фиксированный набор полей, таких как «имя плательщика» и «номер счета». Кроме того, есть таблица с позициями. Каждая позиция состоит следующих полей: «наименование», «количество», «цена». Пользователь может добавлять произвольное количество дополнительных позиций.

Давайте рассмотрим работу с jqDynaForm на примере такого счета. Вот пример такой формы:



Читать дальше →

Выводим деньги с PayPal на карту: Инструкция для чайников

Время на прочтение3 мин
Охват и читатели500K
Потребовалось мне вывести деньги с PayPal в России, только вот через посредников работать не хотелось.
Пришлось получить карту Payoneer для вывода PayPal на эту карту. Сколько не искал, так и не нашел полноценной, пошаговой инструкции.
Поэтому пишу сам.



ВНИМАНИЕ! Все ниженаписанное является де-юре нарушением законодательства РФ и Украины, и вообще выдумкой автора и плодом работы в фотошопе. Применяя описанное на практике, вы действуете на свой страх и риск, и ни автор, на администрация сайта не несет ответственности за ваши действия.
Читать дальше →

Цифровые SSL сертификаты. Разновидности, как выбрать?

Время на прочтение13 мин
Охват и читатели492K
Существует достаточно много цифровых сертификатов, каждый из которых служит для своих целей. Самые распространенный тип сертификатов это естественно SSL сертификаты, которые также имеют несколько подвидов. Также существуют Code Signing сертификаты, Website Anti Malware Scanner сертификаты и Unified Communications сертификаты.

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

Так что если у вас стоит задача поднять защищенное https соединение для вашего сайта, то в этом посте я постараюсь раскрыть все тонкости и особенности SSL сертификатов, чтобы сделать правильный выбор было проще.
Как выбрать SSL сертификат

Защищаем SSH от брутфорса на любом порту

Время на прочтение3 мин
Охват и читатели119K
Сегодня меня заинтересовал опрос надо ли перевешивать SSH на нестандартный порт. Сам опрос не так интересен как способ автора zivot_je_cudo защищать SSH от подбора пароля: после неверной попытки подключения блокировать новые попытки в течение 20 секунд. Задержка, видимо, выбрана эмпирически, исходя их двух противположных пожеланий: чтобы не заблокировать в случае опечатки себя надолго, и в тоже время усложнить жизнь подбиральщика. Я хочу поделиться своим способом противодействия брут-форсу, который применяю уже несколько лет. Он имеет два преимущества:
— дает мне больше попыток для набора правильного пароля
— но при этом блокирует брутфорсеров «навечно».

Как можно достичь этих двух противоположных целей?
Читать дальше →

Windows 8 — произведение искусства. Но это не Linux

Время на прочтение2 мин
Охват и читатели24K
На просторах англоязычной сети мной был найден опыт использования Windows 8 одним из людей, обычно сидящих на Linux. Хочу поделиться с вами некоторыми впечатлениями из той заметки. Нет, тут не будет вечных наездов на винду, пророчества вендекапца и прочего угара. Всё довольно мило.

Итак
Читать дальше →

Информация

В рейтинге
Не участвует
Откуда
Москва, Москва и Московская обл., Россия
Дата рождения
Зарегистрирован
Активность