Как стать автором
Обновить
83
0
Сергей Петриков @RicoX

Системное и сетевое администрирование

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

Я построю свой почтовый сервер с Postfix и Dovecot

Время на прочтение20 мин
Количество просмотров308K
image

В рамках программы по унификации установленных серверных систем встала задача по переделке почтового сервера. Вдумчивое изучение мануалов и руководств показало довольно любопытный факт – нигде не было найдено однозначно достоверного руководства или подобия Best Practice по развёртыванию почтовика.

Мануал пошаговый, основывается на внутренней документации компании и затрагивает совершенно очевидные вопросы. Гуру могут не тратить время, ноу-хау здесь нет – руководство является сборной солянкой и публикуется только потому, что все найденные руководства по развёртыванию почтовика напоминали картинку о том, как рисовать сову.
Очень много текста
Всего голосов 78: ↑74 и ↓4+70
Комментарии65

Масштабируя Zabbix

Время на прочтение11 мин
Количество просмотров154K
Zabbix logoТех, кто использует или собирается использовать Zabbix в промышленных масштабах, всегда волновал вопрос: сколько реально данных сможет Заббикс «переварить» перед тем как окончательно поперхнется и подавится? Часть моей недавней работы как раз касалось этого вопроса. Дело в том, что у меня есть огромная сеть, насчитывающая более 32000 узлов, и которая потенциально может полностью мониториться Заббиксом в будущем. На форуме давно идут обсуждения о том, как оптимизировать Zabbix для работы в больших масштабах, но, к сожалению, мне так и не удалось найти законченное решение.

В этой статье я хочу показать, как я настраивал свою систему, способную обрабатывать реально много данных.
Подробности
Всего голосов 45: ↑45 и ↓0+45
Комментарии39

Обзор и классификация CMS по категориям (2013)

Время на прочтение30 мин
Количество просмотров236K
Недавний поиск списка CMS, на примере которых можно было бы объяснить студентам архитектуру и структуру сложного web-сайта, привел меня к любопытной статье с классификацией CMS, которая, однако, на текущий момент немного устарела, да и написана несколько сумбурно. Это подвигло меня составить новый обзор, собрав больше решений и дополнив их по возможности ссылками на официальные сайты, страницы закачки и демо-панели.

Я рассматривала CMS на php, в основном бесплатные, за некоторым исключением. В результате на текущий момент получился такой набор:

CMS общего назначения: Alto CMS, Cogear, Contao, Cotonti, DataLifeEngine, Drupal, ImageCMSCorporate, Joomla, Host CMS, MaxSiteCMS, MODX, MosquitoBloodyMary, ReloadCMS, Wordpress
Галереи: Coppermine, Gallery (Gallery2, обновленная до версии 3), Koken, MG2 = MiniGal 2, Pikateka, SimpleViewer, Zenphoto
Социальные сети: Elgg, Explay CMS, InstantCMS, LiveStreet, BigStreet
Форумы: IPB (Invision Power Board), Phorum, phpBB, phpBBex, PunBB, Simple Machines Forum, Vanilla, vBulletin
Интернет-магазины: ECShop, Magento, OpenCart, Семейство osCommerce, Prestashop
Сайты-визитки без SQL-базы: GetSimple, Monstra, Nanote, Stacey, CMS Чайник
Читать дальше →
Всего голосов 85: ↑63 и ↓22+41
Комментарии69

Релиз proxmox 3.1 и первый шаг к платному репозиторию

Время на прочтение2 мин
Количество просмотров25K
image

Вышел релиз proxmox 3.1, по умолчанию в нем идет enterprise репозиторий, доступ к которому платный, но об этом в конце статьи.

Из интересного добавили поддержку SPICE, он позволяет запускать приложения в виртуалке на сервере и использовать его на своем десктопе как локальное приложение использующее полностью удаленные ресурсы, по такой схеме много где работает 1С через Citrix Metaframe.

Вторая вкусная фича это GLUSTERFS от Redhat, теперь можно хранить виртуалки на распределенной кластерной файловой системе продакшен уровня.

Больше особо значимых изменений особо и нет, обновили многие пакеты, перешли на базу debian 7.1. Если кому интересно полные список изменений можно посмотреть здесь: pve.proxmox.com/wiki/Roadmap#Proxmox_VE_3.1
Читать дальше →
Всего голосов 10: ↑8 и ↓2+6
Комментарии46

Разбор регулярных выражений

Время на прочтение1 мин
Количество просмотров100K


Хочу просто поделиться недавно найденным сервисом для работы с регулярными выражениями. Да, это еще один сервис. Но у него есть особенность — он позволяет не только составлять регулярные выражения, но и помогает разбирать уже написанные — эдакий regexp-декомпилятор.
Сервис называется Regex101.

Читать дальше →
Всего голосов 99: ↑94 и ↓5+89
Комментарии53

Построение провайдерской сети на коммутаторах Cisco с использованием Option 82 и Dynamic ARP Inspection

Время на прочтение7 мин
Количество просмотров71K

Пролог


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


image

Итак, постоновка задачи:


Необходимо организовать сеть, максимально удобную для конечного пользователя, при этом также удобную (с точки зрения минимальной нагрузки на техподдержку) и безопасную (с точки зрения мошенничества) для оператора. К тому же сеть должна быть недорогой. Кто-то возразит, что Cisco и «недорого» — несовместимые понятия, однако для решения нашей задачи годятся и End of Life старички, которые можно приобрести по очень демократичным ценам.

Для обеспечения удобства пользователя были отброшены следующие варианты:
  • статическое назначение ip-адресов — неудобно для пользователя, адрес нужно где-то записывать, потерявшие адрес пользователи названивают в техподдержку
  • dhcp с привязкой по mac-адресу — неудобно для пользователя, при смене устройства нужно перерегистрировать его у провайдера или менять на нем mac.
  • всевозможные виды туннелей, в основном pptp — требует настройки у клиента, забытые логины и пароли

Из всех рассмотренных вариантов для пользователя наиболее удобен вариант с DHCP, но для провайдера есть ряд сложностей:
Привязка по mac неудобна, так как придется перерегистрировать новые mac-адреса. Аутентификация пользователя в биллинге только по ip-адресу тоже на первый взгляд кажется ненадежной, хитрый пользователь может поставить себе вручную ip-адрес соседа и внести смуту. Однако решение есть и строится оно на технологиях из заголовка статьи — option 82 и dynamic arp inspection

Кому интересно решение — прошу под кат
Читать дальше →
Всего голосов 21: ↑18 и ↓3+15
Комментарии18

Изучаем Node.js

Время на прочтение1 мин
Количество просмотров11K
Привет, хаброжители!

Мы продолжаем цикл книг о животных. Сегодня у нас новый зверёк — «Изучаем Node.js» .
Книга, которую мы сейчас представляем, предназначена для тех, кто еще не использовал данную технологию, но хотел бы быстро начать работу с ней. Итак:

Изучаем Node.js

Читать дальше →
Всего голосов 46: ↑36 и ↓10+26
Комментарии40

Проект «Руби» — новый LTE-роутер: что внутри, и как мы его разрабатывали

Время на прочтение8 мин
Количество просмотров64K


Привет!
Моя работа – разработка продуктов в Yota Devices. Мы выпустили новый LTE-роутер, в котором отшлифовали всё до мелочей. Разработка железа велась в России, низкоуровневое ПО наше (поверх Qualcomm SDK), плата совместно с производителем на Тайване, антенны — наш финский отдел (наши инженеры делали антенны большинства трубок Nokia).



Думаю, вам будет интересно узнать, как шла разработка. Начну с описания устройства. Во-первых, это роутер, который принимает сигнал 4G, 3G или 2G и раздаёт Wi-Fi. Во-вторых, Ruby (так называется устройство) может вставляться в USB и работать как привычный LTE-модем. В-третьих, роутер может работать и без внешнего питания. Внутри есть аккумулятор, который позволяет работать в машине, в парке, на даче или просто раздавать интернет из рюкзака при прогулке.

Осторожно, под катом трафик — много фотографий
Читать дальше →
Всего голосов 89: ↑86 и ↓3+83
Комментарии129

Просмотр архивных логов apache c помощью Logstash+Elastisearch+Kibanа

Время на прочтение4 мин
Количество просмотров47K
Приветствую.

Нет так давно передо мной встала задача пробежаться по старым логам apache. Надо было сделать выборку по нескольким IP адресам, отыскать некоторые аномалии и попытки SQL-injection'ов. Логов было не так много, порядка миллиона строк и можно было спокойно всё сделать стандартным набором grap-awk-uniq-wc итд.

Поскольку я уже какое-то (больше года) время пользуюсь связкой Logstash-Elasticsearch-Kibana для анализа-просмотра всевозможных логов, то решил ей воспользоваться и в данной ситуации.

Краткое описание основных компонентов системы.

Logstash — бесплатная open-source программа на java для сбора и нормализации логов. Может принимать логи либо с локальных файлов, либо через tcp/udp порты. На момент написания статьи, разных входных (input) фильтров насчитывается 26. Есть даже входной модуль, для сбора сообщений из twitter'а или irc.

Elasticsearch — бесплатный open-source поисковый сервер основанный на Apache Lucene. Быстрый, легко настраиваемый и очень масштабируемый.

Kibana — веб-интерфейс написанный на ruby, для отображения данных из Elasticsearch. Простая настройка, но множество функций — поиск, графики, stream.

Читать дальше →
Всего голосов 15: ↑14 и ↓1+13
Комментарии25

EazyPhoto: уютный фотохостинг для своего сервера

Время на прочтение6 мин
Количество просмотров25K
В недалекие времена, когда flickr ещё не предлагал терабайт под хранение фотографий, а BitTorrent Sync только вышел на экраны интернета в своей небезопасной альфа-версии, была у меня потребность: делиться фотографиями с друзьями и не только. Но как обычно у программистов это бывает, под словом «делиться» стоит гораздо больше, чем выложить фоточки во ВКонтактик. А именно:
  • Выложить куда-нибудь фотографии на свой сервер с красивым и простым web-интерфейсом.
  • Просто и массово заливать и скачивать оригиналы изображений.
  • Иметь возможность разграничить доступ к определенным альбомам.
  • Попытаться связать это с локальным сетевым хранилищем, чтобы не дублировать фотографии.
  • По возможности удалять оригиналы фотографий с сервера через какое-то время и оставлять только фотографии с измененным размером.
  • По-максимуму бесплатно! :)

После таких мыслей в голове начинает зарождаться идея: «Надо накреативить...» — и ты уже не можешь остановиться.
Результат работы воспаленного мозга
Всего голосов 51: ↑49 и ↓2+47
Комментарии43

Беспроводная точка доступа, используя Linux

Время на прочтение9 мин
Количество просмотров132K
Что ж, вот и первая статья из обещанной серии.
Первое, что я буду делать — настраивать Software AP, или беспроводную сеть на базе компьютера. На этом этапе, конечно, нужен доступ к консоли сервера с правами рута. Кроме того, нужно также подключение к интернету НЕ через внутреннюю вайфай-карточку — кабелем, через 3G-модем, короче, как пожелаете, но только не по вайфаю, который мы будем использовать для создания беспроводной сети. Я на первое время подключил и сервер, и ноут, с которого управлял сервером, в одну сеть по кабелю — так надёжнее всё-таки. Буду использовать пакет hostapd — он довольно известен как надёжное решение и мануалов под него достаточно, а для DHCP и DNS серверов буду использовать dnsmasq — решение как раз под домашние сети, его использует DD-WRT, не удивлюсь, если кто-то ещё.
Читать дальше →
Всего голосов 42: ↑29 и ↓13+16
Комментарии67

Свой простой DynDNS сервер

Время на прочтение5 мин
Количество просмотров31K
Недавно ко мне обратились с вопросом «А какой внутренний IP адрес нужно указать в модеме для проброса порта на сервер?». Ответить на вопрос я не смог, так как давно не был на этом сервере, а квалификация человека на том конце не позволяла залогиниться на сервер и выполнить ip address show. Тогда я задумался над созданием своего простого аналога DynDNS сервера с возможностью хранения IP адресов всех интерфейсов клиента.
Читать дальше →
Всего голосов 20: ↑20 и ↓0+20
Комментарии16

Создание полноценного видеохостинга своими руками (nginx+php5-fpm+ffmpeg+cumulusclips)

Время на прочтение10 мин
Количество просмотров67K
Добрый день, хабровчане!

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

Задача была следующая:
Создать видеоресурс, способный проводить многопоточные односторонние трансляции с web камеры, а так же из любого файла (это например для защиты от прямого скачивания), видеошару с возможностью просмотреть видео в разных форматах и битрейтах.
Узнать больше
Всего голосов 85: ↑75 и ↓10+65
Комментарии58

История одной DDOS атаки на роутер и методы защиты Juniper routing engine

Время на прочтение19 мин
Количество просмотров62K
По долгу службы мне часто приходится сталкиваться с DDOS на сервера, но некоторое время назад столкнулся с другой атакой, к которой был не готов. Атака производилась на роутер Juniper MX80 поддерживающий BGP сессии и выполняющий анонс подсетей дата-центра. Целью атакующих был веб-ресурс расположенный на одном из наших серверов, но в результате атаки, без связи с внешним миром остался весь дата-центр. Подробности атаки, а также тесты и методы борьбы с такими атаками под катом.
Читать дальше →
Всего голосов 18: ↑17 и ↓1+16
Комментарии17

Миграция PROXMOX VE 3.0 в software RAID1

Время на прочтение5 мин
Количество просмотров26K

В данном материале описывается процесс миграции свежеустановленного гипервизора Proxmox 3.0 в программный RAID1. Разработчики Proxmox в своей wiki пишут о том, что данное решение официально не поддерживается и не рекомендуется к использованию. Взамен этого предлагается использовать решения на протестированных аппаратных raid-контроллерах. Тем не менее в сети можно найти несколько мануалов по этой теме и практики успешной эксплуатации softraid'а совместно с Proxmox'ом. К сожалению, большинство этих мануалов нельзя назвать пошаговыми руководствами к действию: все они содержат те или иные ошибки, которые мешают достигнуть требуемого результата. Взяв за основу один из таких мануалов, я попытался исправить эту ситуацию. Приведённое ниже решение несколько раз было по шагам протестировано сначала в виртуалке, а затем использовано для миграции данных на реальном железе. В результате этого получился рабочий how-to, который предлагается вашему вниманию.
Читать дальше →
Всего голосов 12: ↑12 и ↓0+12
Комментарии17

Shuttle и Alfred: быстрый доступ к SSH в OS X

Время на прочтение1 мин
Количество просмотров34K
Если вам, как и мне, время от времени приходится пользоваться SSH, то вы оцените небольшое дополнение для OS X, разработанное Тревором Фитцжеральдом — Shuttle. Оно позволяет повесить быстрый доступ к нужным хостам на иконку в верхней панели.
image
Скачать приложение можно по ссылке http://fitztrev.github.io/shuttle/
Читать дальше →
Всего голосов 51: ↑40 и ↓11+29
Комментарии39

Оповещение о проблемах Zabbix по телефону через Asterisk

Время на прочтение3 мин
Количество просмотров23K
Замечательная система мониторинга Zabbix предлагает «из коробки» несколько способов оповещения администратора о возникших проблемах: e-mail, SMS и Jabber.

В этом топике я расскажу вам как подружить Zabbix и офисную АТС на основе Asterisk. Когда произойдет нештатная ситуация вам позвонит робот и проговорит сообщение с описанием проблемы.

Читать дальше →
Всего голосов 21: ↑20 и ↓1+19
Комментарии6

TCP(syn-flood)-netmap-generator производительностью 1,5 mpps

Время на прочтение14 мин
Количество просмотров21K
Дано:
# pciconf -lv | grep -i device | grep -i network
    device     = I350 Gigabit Network Connection
# dmesg | grep CPU:
    CPU: Intel(R) Core(TM)2 Duo CPU     E7300  @ 2.66GHz (2666.69-MHz K8-class CPU)
# uname -orp
    FreeBSD 9.1-RELEASE amd64

Задача:
Необходимо на данном оборудовании и ОС создать нагрузочную вилку в виде tcp(syn)-генератора трафика производительностью не менее 500kpps.

Решение:
Читать дальше →
Всего голосов 34: ↑31 и ↓3+28
Комментарии19

Backdoor в роутерах D-Link

Время на прочтение2 мин
Количество просмотров113K
В роутерах D-Link (DIR-300revA, DIR-300revB, DIR-600revB) обнаружен backdoor.

Немецкий исследователь просканировал некоторые устройства D-Link nmap-ом и обнаружил открытым порт 23\tcp (telnet).
Читать дальше →
Всего голосов 79: ↑70 и ↓9+61
Комментарии99

Так как же удалить миллионы файлов из одной папки?

Время на прочтение5 мин
Количество просмотров148K

Феерическая расстановка точек над i в вопросе удаления файлов из переполненной директории.

Прочитал статью Необычное переполнение жесткого диска или как удалить миллионы файлов из одной папки и очень удивился. Неужели в стандартном инструментарии Linux нет простых средств для работы с переполненными директориями и необходимо прибегать к столь низкоуровневым способам, как вызов getdents() напрямую.

Для тех, кто не в курсе проблемы, краткое описание: если вы случайно создали в одной директории огромное количество файлов без иерархии — т.е. от 5 млн файлов, лежащих в одной единственной плоской директории, то быстро удалить их не получится. Кроме того, не все утилиты в linux могут это сделать в принципе — либо будут сильно нагружать процессор/HDD, либо займут очень много памяти.

Так что я выделил время, организовал тестовый полигон и попробовал различные средства, как предложенные в комментариях, так и найденные в различных статьях и свои собственные.
Читать дальше →
Всего голосов 155: ↑145 и ↓10+135
Комментарии103

Информация

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