Pull to refresh
0
0

Пользователь

Send message

Изучение иностранных языков: живые учителя или интернет?

Reading time4 min
Views74K


— Феденька, ты очень интеллигентный мальчик, ты мне очень нравишься, но Я БУДУ СТАВИТЬ ДВА В ГОДУ!!! — визжала моя школьная учительница по французскому и делала примерно такое лицо.

Моя школьная учительница по английскому языку делала другое лицо:
Читать дальше →
Total votes 282: ↑232 and ↓50+182
Comments366

Некоторые умозаключения об IP-телефонии — основной цифровой сигнал, кодеки, полоса пропускания

Reading time6 min
Views43K
Приветствую вас, друзья!

В ходе изучения материалов к экзамену CCNA Voice родилась идея оформить некоторую полученную информацию в виде отдельной статьи. Преследуя при этом две цели: одна корыстная — получше самому разобраться в изучаемом материале и разложить всё по полочкам в своём сознании; вторая альтруистическая — поделиться полученными знаниями с теми, кому это мало мальски интересно.

В статье поведаю о процессах кодирования голоса, кодеках как таковых и расчётах полосы пропускания, необходимой для передачи голоса в IP-сетях
Дальше - суть
Total votes 26: ↑25 and ↓1+24
Comments26

Уязвимости серверов к медленному чтению

Reading time2 min
Views28K
Приветствую.
Хочу рассказать, чем я баловался в свободное от работы в Qualys время. Так как в англоязычном интернете на удивление много шума про Slow Read DoS attack, и уверен что получу здесь много полезной критики и дельных предложений.

В августе 2011 года написал програмку slowhttptest, которая тестирует веб-серверы на наличие уязвимостей, связанных с обработкой медленных HTTP запросов, таких как slowloris и slow HTTP Post. Цель — создать конфигурируемый инструмент, облегчающий работу разработчиков и позволить им концентрироваться на создании эффективных защит, а не ковырянии в питоне, на котором написаны большинство proof-of-concept эксплоитов.

А потом решил попробовать, как реагируют серверы на медленное чтение клиентами HTTP респонсов. На удивление плохо реагируют. Дефолтные apache, nginx, lightpd, IIS отказывают в обслуживании на ура.

А суть такова:
Читать дальше →
Total votes 119: ↑113 and ↓6+107
Comments74

Централизованное резервное копирование данных Windows и *nix серверов средствами Bacula

Reading time15 min
Views97K
Приветствую всех хаброжителей!

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

Думаю вполне резонным будет предположение, что данная тема уже набила оскомину, но все же я рискну поделиться своим опытом. На суд читателя будет представлена клиент-серверная реализация схемы резервного копирования. В качестве инструмента я выбрал open source проект Bacula. По более чем полугодовому опыту его использования остаюсь доволен своим выбором.

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

Под хабракатом я опишу все демоны подробно


В моем случае резервному копированию подлежат:
  1. Конфигурационные файлы различных демонов со всех серверов.
  2. MySQL базы данных.
  3. Документооборот с файлового сервера Windows.
  4. Различные важные данные с nix серверов(движки сайтов/форумов, etc..)


Приглашаю под кат тех, кто еще не делает бекапы, и тех кто уже их делает.
Total votes 45: ↑42 and ↓3+39
Comments51

Мониторинг прогнозированием, оповещения о потенциальном сбое

Reading time6 min
Views5.4K

Этот пост является продолжением предыдущего. Мониторинг прогнозированием – не стандартный метод мониторинга. Поэтому и оповещения необходимо использовать не совсем стандартные. Рассмотрим, как это делается и почему именно так.
Читать дальше →
Total votes 26: ↑26 and ↓0+26
Comments17

Демоны на PHP

Reading time4 min
Views75K
Памятка начинающему экзорцисту.

Прежде, чем начать: я знаю, что такое phpDaemon и System_Daemon. Я читал статьи по этой тематике, и на хабре тоже.

Итак, предположим, что вы уже определились, что вам нужен именно демон. Что он должен уметь?
  • Запускаться из консоли и отвязываться от неё
  • Всю информацию писать в логи, ничего не выводить в консоль
  • Уметь плодить дочерние процессы и контролировать их
  • Выполнять поставленную задачу
  • Корректно завершать работу

Отвязываемся от консоли


// Создаем дочерний процесс
// весь код после pcntl_fork() будет выполняться двумя процессами: родительским и дочерним
$child_pid = pcntl_fork();
if ($child_pid) {
    // Выходим из родительского, привязанного к консоли, процесса
    exit();
}
// Делаем основным процессом дочерний.
posix_setsid();

// Дальнейший код выполнится только дочерним процессом, который уже отвязан от консоли

Читать дальше →
Total votes 188: ↑167 and ↓21+146
Comments125

Мониторинг прогнозированием с помощью rrdtool, как это делается

Reading time7 min
Views17K


Введение


Недавно я описывал созданную мной систему мониторинга транзитного VoIP методом прогнозирования. Самым сильным плюсом данного метода в задаче мониторинга транзитного VoIP является то, что нет необходимости выставлять критерии того, что считать нормальной работой величин, находящихся под мониторингом, а что – потенциальным сбоем.
Ядром системы является rrdtool, в котором реализованы прогнозирование методом Хольта-Винтерса и механизм выявления аберраций.
Мониторинг методом прогнозирования можно использовать не только для VoIP, но и для любого другого типа трафика, а так же, для величин, которые изменяются во времени с некой прогнозируемой цикличностью. В отличие от стандартных методов, при мониторинге с помощью прогнозирования не осуществляет мониторинг состояния величин, находящихся под мониторингом, зато осуществляется мониторинг динамики изменения их состояний во времени.
Если вам интересна математика прогнозирования рекомендую прочесть. Чтобы быть хоть немного в курсе темы, прочтите главу “Метод прогнозирования реализованный в rrdtool” моего предыдущего поста.
Читать дальше →
Total votes 39: ↑39 and ↓0+39
Comments13

Как это работает

Reading time5 min
Views11K

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

Стоит начать с того, что Frodio целиком работает на инфраструктуре компании Selectel. Все серверы расположены на виртуальных облачных машинах Селектела, соотношение цена/качество которых выгодно отличается от предложений конкурентов.

Нами используются следующие технологии: Nginx + Starman + Mojolicious + Perl + MySQL.
Вещание осуществляется с помощью Icecast и Liquidsoap.

Вся система делится на несколько частей:
1. Сервер ядра системы и БД
2. Сервер вещания
3. Сервер генерации потоков

Расскажем о каждом из них поподробнее.
Читать дальше →
Total votes 71: ↑62 and ↓9+53
Comments56

Управление радиоэфиром через браузер

Reading time5 min
Views32K
Airtime LogoВ процессе создания своей радиостанции поток идей дошел до ведения эфиров через веб-интерфейс. Сначала пытался найти готовые решения, но в рунете почти ничего не нашел. Начал продумывать способ реализации и чудом наткнулся на статью в английской версии Википедии про Airtime (до 18 января 2011 г. – Campcaster) от Sourcefabric.

Возможности Airtime:
  • Создание эфирной сетки и плейлистов через веб-интерфейс ;
  • Загрузка музыки через браузер (поддержка drag and drop);
  • Регистрация ведущих, которые имеют доступ к админке и могут управлять эфирами;
  • Создание виджетов с расписанием эфиров и треков для сторонних сайтов;
  • Возможность записывать эфиры для повторной трансляции;
  • Несколько вариантов трансляции аудиопотока.
Минимальные системные требования, описанные в официальной инструкции: 1Ghz процессор и 512Mb оперативной памяти.
Читать дальше →
Total votes 68: ↑64 and ↓4+60
Comments34

Автоматизация работы интернет-радио на Linux

Reading time18 min
Views32K
Привет, `whoami`.

В этом посте я расскажу тебе об одном из методов автоматизации интернет-вещания – не самом надежном, но самом бюджетном. Сразу предупреждаю, что эта система заточена на использование ее под Linux, хотя с помощью знакомого многим «столярного инструмента», можно и под Windows реализовать. Эта статья расчитана на начинающих IT-шников, поэтому многие моменты я постарался «разжевать». Как у меня это получилось, решать тебе, мой дорогой читатель, но если мне удалось заинтересовать тебя, прошу под кат.
Читать дальше →
Total votes 62: ↑59 and ↓3+56
Comments31

Видеохостинг своими руками

Reading time6 min
Views66K
Эта статья о некоторых технических аспектах реализации бесплатного сервиса для загрузки, хранения и просмотра видео. Будут рассмотрены вопросы настройки серверного программного обеспечения, даны примеры команд для конвертации видео и примеры кода на языке PHP.
Читать дальше →
Total votes 126: ↑126 and ↓0+126
Comments108

Новая старая методика защиты от почтового спама на базе MTA Exim

Reading time16 min
Views29K
Хочу представить описание методики защиты корпоративной почты от спама, позволяющей использовать преимущества отдельных инструментов фильтрации адресов, избегая недостатков этих же методов.
Можно выделить, что эти приемы можно использовать на SMTP-прокси, закрывающем корпоративный почтовый сервер, находящийся в DMZ.

Зачастую администраторы избегают некоторых эффективных приемов фильтрации, из-за недостатков того или иного подхода. Например — фильтры DNSBL нередко дают ложные срабатывания на те узлы, которые попадают в него по ошибке — например, в составе всего блока адресов отдельного провайдера. Часто используемый способ фильтрации на основе простого определения PTR-записи тоже имеет свойство давать сбои в случаях, когда записи A и PTR — не совпадают, или просто возникли проблемы со службой DNS.

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

Данная методика существует давно, мне встречались разные реализации этой идеи разными специалистами, а эта вариация в более кратком виде была описана мною еще 5 лет назад в рассылке exim-users@exim.org (статью еще можно найти в архиве рассылки), но, несмотря на простоту реализации и наличие документации, сейчас они применяются почтовыми администраторами нечасто.

На примере почты компании «Horns'n'Hoofs» с доменом hornsnhoofs.com попробуем рассмотреть не выдуманные, а вполне работоспособные «в бою» приемы фильтрации.
Читать дальше →
Total votes 33: ↑33 and ↓0+33
Comments24

Структуры данных в картинках. HashMap

Reading time6 min
Views1.2M
Приветствую вас, хабрачитатели!

Продолжаю попытки визуализировать структуры данных в Java. В предыдущих сериях мы уже ознакомились с ArrayList и LinkedList, сегодня же рассмотрим HashMap.



HashMap — основан на хэш-таблицах, реализует интерфейс Map (что подразумевает хранение данных в виде пар ключ/значение). Ключи и значения могут быть любых типов, в том числе и null. Данная реализация не дает гарантий относительно порядка элементов с течением времени. Разрешение коллизий осуществляется с помощью метода цепочек.

А почему бы и нет?
Total votes 81: ↑75 and ↓6+69
Comments42

Структуры данных в картинках. LinkedList

Reading time4 min
Views544K
Приветствую вас, хабражители!

Продолжаю начатое, а именно, пытаюсь рассказать (с применением визуальных образов) о том как реализованы некоторые структуры данных в Java.



В прошлый раз мы говорили об ArrayList, сегодня присматриваемся к LinkedList.

LinkedList — реализует интерфейс List. Является представителем двунаправленного списка, где каждый элемент структуры содержит указатели на предыдущий и следующий элементы. Итератор поддерживает обход в обе стороны. Реализует методы получения, удаления и вставки в начало, середину и конец списка. Позволяет добавлять любые элементы в том числе и null.

Прочитать чуть больше
Total votes 50: ↑46 and ↓4+42
Comments22

Структуры данных в картинках. ArrayList

Reading time3 min
Views872K
Приветствую вас, хабралюди!

Взбрело мне в голову написать несколько статей, о том как реализованы некоторые структуры данных в Java. Надеюсь, статьи будут полезны визуалам (картинки наше всё), начинающим java-визуалам а также тем кто уже умеет писать new ArrayList(), но слабо представляет что же происходит внутри.



Сегодня поговорим о ArrayList-ах

ArrayList — реализует интерфейс List. Как известно, в Java массивы имеют фиксированную длину, и после того как массив создан, он не может расти или уменьшаться. ArrayList может менять свой размер во время исполнения программы, при этом не обязательно указывать размерность при создании объекта. Элементы ArrayList могут быть абсолютно любых типов в том числе и null.

Поверить на слово
Total votes 89: ↑82 and ↓7+75
Comments66

Мониторинг транзитного VoIP, методом прогнозирования

Reading time14 min
Views11K

Аннотация


Даже если вы не используете VoIP в своей системе, или это не основное ваше направление, вас может заинтересовать сам метод мониторинга с помощью прогнозирования потому, что его можно успешно применять не только для транзитного VoIP. Метод мониторинга рассматривается на примере приложения к транзитному VoIP потому, что данная задача — яркий пример его использования. Стандартными методами задача не решается, а мониторинг методом прогнозирования реализуется сравнительно просто. То, что написано ниже, это не теоретические изыскания, это уже несколько месяцев успешно используется на практике.

Введение


Большинство современных активных систем мониторинга IT инфраструктуры используют одинаковый принцип. Система мониторинга неким образом опрашивает оборудование или программное обеспечение, получает результат и сравнивает его либо с шаблоном, либо с заранее заданными предельно допустимыми значениями.
Читать дальше →
Total votes 22: ↑19 and ↓3+16
Comments19

О некоторых приемах атаки Man in the middle

Reading time5 min
Views38K
Немного Википедии: атака «человек посередине» (англ. Man in the middle, MitM-атака) — термин в криптографии, обозначающий ситуацию, когда атакующий способен читать и видоизменять по своей воле сообщения, которыми обмениваются корреспонденты, причём ни один из последних не может догадаться о его присутствии в канале.
В этой статье будет рассмотрен прием пассивной атаки на http-соединение, без модификации проходящей информации. Итак, каким-то способом вы смогли вклиниться физически или удалённо в канал передачи данных, настроили bridge или просто получили root-управление шлюзом. Руткит поставили, базы с исходниками слили, вебшелл залили, в cron часовую бомбу заложили, и что теперь?
Читать дальше →
Total votes 47: ↑33 and ↓14+19
Comments12

Альфа-версия компьютера Raspberry Pi за $25 пошла в производство

Reading time1 min
Views6.1K

На фото к компьютеру подключен 12-мегапиксельный камера-модуль

В мае 2011 года гики всего мира с восхищением обсуждали изделие британского разработчика игр Дэвида Брабена — компьютер-флэшку Raspberry Pi за $25. Это полноценный компьютер общего назначения под Ubuntu 9 с HDMI-и USB-разъёмами для подключения монитора, клавиатуры и мышки. Спустя два месяца спецификации материнской платы утверждены, и вот теперь альфа-версия Raspberry Pi отправлена в производство.
Читать дальше →
Total votes 136: ↑121 and ↓15+106
Comments202

Сборка open-source библиотек на Android NDK

Reading time5 min
Views18K
Привет, Хабралюди!

В процессе работы с Android NDK я столкнулся с проблемой сборки уже существующих Linux библиотек на Android NDK. Так как материала не слишком много в этой статье поделюсь своим опытом. В Андроиде я новичек, так что если найдете ошибки — пишите:)

Чтобы пример был не самым простым и при том полезным — возьмём библиотеку libFLAC. Этот даст возможность декодировать .flac файлы. По данному мануалу, я надеюсь, соберутся большинство других библиотек.
Читать дальше →
Total votes 38: ↑33 and ↓5+28
Comments7

Все врут или почему в MySQL лучше не использовать партиции

Reading time8 min
Views28K
Начиная с версии 5.1 в MySQL появилась такая полезная фича как партиции. Конечно же большинство разработчиков БД сразу не побрезговали ей воспользоваться. Спустя пару лет работы я наконец пожал плоды всей ущербности реализации этой технологии специалистами MySQL AB …
но обо всем по порядку
Total votes 127: ↑123 and ↓4+119
Comments68

Information

Rating
Does not participate
Location
Россия
Date of birth
Registered
Activity