Одним из главных критериев при выборе новой АТС это надежность, отказоустойчивость и возможность резервирования системы. Маленьким и средним компаниям обычно хватает простого бэкапа с возможностью восстановиться в течение 24 часов, в то время как для больших компании это очень критично и не может быть и речи о простое телефонной связи. На это обычно компания тратят много ресурсов и денег. С появлением R800 и R850 от компании DIGIUM, asterisk становится действительно надежной системой с полноценным резервированием PSTN линий Е1/T1/BRI и FXO. Под катом подробности установки и настройки двух серверов Asterisk и R850.
Эйтор @ilder
User
Безопасность в VoIP сетях
5 min
15KВ среднем по статистике, в начале каждого месяца у 1-2 клиентов среднего оператора возникает ситуация. К ним приходит понимание — попали на деньги. Почему вначале месяца? В это время операторы печатают и отправляют счета клиентам за прошедший месяц.
Безопасность Asterisk обсуждается всеми, кто знает правильное написание этого слова. Хочется еще раз поднять вопрос безопасности в VoIP сетях, на этот раз со стороны работника SIP оператора, возможно, это близко к истине.
Безопасность Asterisk обсуждается всеми, кто знает правильное написание этого слова. Хочется еще раз поднять вопрос безопасности в VoIP сетях, на этот раз со стороны работника SIP оператора, возможно, это близко к истине.
+16
Опыт работы с GruntJS
4 min
23K
Привет. Мы, наконец, закончили работу над одной интерактивной книгой, и сейчас очень хочется рассказать об одном из самых интересных инструментов, из тех, что мы использовали — о GruntJS.
Немного о проекте
Собственно, делали мы интерактивную книгу одного популярного российского писателя. Книжка написана на JS, шаблонах ECT-JS и LESS. Сборкой, конкатенацией, минификацией и деплоем занимается Grunt, книжка работает на iPad’е под Phonegap.
Технически, мы делали прототип — мы активно изучали и применяли различные технологии. С чем-то получилось круто, с чем-то не очень. Как бы то ни было, книга работает, и ее даже можно скачать в App Store.
Думаю, что этого достаточно. Теперь можно перейти к GruntJS…
+32
Девять признаков сурового администратора Unix
4 min
131KTranslation
Я, к сожалению, не нашел русского перевода этого текста, хотя мне он показался крайне… просветляющим, что ли.
Признак 1: мы не используем sudo
Как CAPS LOCK — «круиз-контроль для крутотенюшки», так и sudo — «костыль для сомневающихся». Если нам нужно сделать что-то от имени root, мы используем su, а не фигню навроде sudo. Если какая-то из Unix-подобных операционных систем заставляет нас использовать sudo, то первое что мы делаем — sudo su и устанавливаем пароль для пользователя root, чтобы комфортно пользоваться su в дальнейшем. Постоянное использование sudo можно сравнить с плаванием c надувным кругом в животе — это безопаснее, да, но лишает необходимости обдумывания поступков.
+139
Удачная модель ветвления для Git
10 min
1MTranslation
Перевод статьи Vincent Driessen: A successful Git branching model
В этой статье я представляю модель разработки, которую использую для всех моих проектов (как рабочих, так и частных) уже в течение года, и которая показала себя с хорошей стороны. Я давно собирался написать о ней, но до сих пор не находил свободного времени. Не буду рассказывать обо всех деталях проекта, коснусь лишь стратегии ветвления и управления релизами.

В качестве инструмента управления версиями всего исходного кода она использует Git.
В этой статье я представляю модель разработки, которую использую для всех моих проектов (как рабочих, так и частных) уже в течение года, и которая показала себя с хорошей стороны. Я давно собирался написать о ней, но до сих пор не находил свободного времени. Не буду рассказывать обо всех деталях проекта, коснусь лишь стратегии ветвления и управления релизами.

В качестве инструмента управления версиями всего исходного кода она использует Git.
+162
Цикл разработки через Github
3 min
106KРазработка
Я расскажу о цикле разработки через Github, который я использую. Он был проверен в течении года на командах разного размера: 3 — 14 человек.
Существует 2 основных ветки: master и dev.
master — стабильная ветка, готовая к выкатыванию на production сервер в любой момент.
dev — ветка, над которой в данный момент работает команда.
Итак, в начале разработки master и dev ветки идентичны.
+70
Что для вас домашняя сеть?
2 min
39KДоброго дня, Хабровчане!

     В наше время сложно кого-то удивить дома доступом в Интернет или наличием нескольких компьютеров. Думаю у всех, задавшихся целью дать доступ в Сеть нескольким устройствам, вставал вопрос об установке роутера и создании домашней сети. Такая сеть обычно начиналась с какого-нибудь простенького роутера вроде минимальной модели D-Link и успешно справлялась с предоставлением доступа в Сеть домашним девайсам. Однако не все останавливаются на достигнутой работоспособности сети и многие пытаются довести свою «локалку» до некоего личного идеала. Об этом идеале я и хочу сегодня поговорить.
+14
Лето, отпуск, asterisk или сам себе VoIP оператор
7 min
65K
Собрался я вместе со своим товарищем в период летнего отпуска поколесить на авто по Европе. А серой осенью есть мысли отправиться поближе к экватору. И вполне резонно встал вопрос связи. Skype, ICQ и прочие сервисы это конечно хорошо, но только не для старшего поколения. Жена и друзья без вопросов, а родители? Супруга сразу же сказала что передастом (человек который передает что-либо) быть не желает. Еще неплохо было бы свой номер рабочим оставить, чтоб у людей не было ощущения, что я канул в небытие. Опять же учитывая непростую роуминговую тарификацию наших операторов сотовой связи, в которой разбираться у меня нет никакого желания, сформировалось представление того, что я хочу получить в итоге.
- Звонки из любой точки мира по местным тарифам
- Прием звонков на свой личный номер
- Голосовые сообщения если я не доступен
- Голосовая почта
- Прием и передача смс
- Безопасность соединения
+32
Построение провайдерской сети на коммутаторах Cisco с использованием Option 82 и Dynamic ARP Inspection
7 min
72KTutorial
Пролог
На хабре было довольно много топиков, описывающих те или иные варианты построения провайдерских сетей, в том числе и с использованием указанных в заголовке технологий. Отчасти они помогли мне в решении своей задачи, но многое пришлось копать самому. Хочу поделиться тем, что получилось и попытаться сэкономить время последователям.

Итак, постоновка задачи:
Необходимо организовать сеть, максимально удобную для конечного пользователя, при этом также удобную (с точки зрения минимальной нагрузки на техподдержку) и безопасную (с точки зрения мошенничества) для оператора. К тому же сеть должна быть недорогой. Кто-то возразит, что Cisco и «недорого» — несовместимые понятия, однако для решения нашей задачи годятся и End of Life старички, которые можно приобрести по очень демократичным ценам.
Для обеспечения удобства пользователя были отброшены следующие варианты:
- статическое назначение ip-адресов — неудобно для пользователя, адрес нужно где-то записывать, потерявшие адрес пользователи названивают в техподдержку
- dhcp с привязкой по mac-адресу — неудобно для пользователя, при смене устройства нужно перерегистрировать его у провайдера или менять на нем mac.
- всевозможные виды туннелей, в основном pptp — требует настройки у клиента, забытые логины и пароли
Из всех рассмотренных вариантов для пользователя наиболее удобен вариант с DHCP, но для провайдера есть ряд сложностей:
Привязка по mac неудобна, так как придется перерегистрировать новые mac-адреса. Аутентификация пользователя в биллинге только по ip-адресу тоже на первый взгляд кажется ненадежной, хитрый пользователь может поставить себе вручную ip-адрес соседа и внести смуту. Однако решение есть и строится оно на технологиях из заголовка статьи — option 82 и dynamic arp inspection
Кому интересно решение — прошу под кат
+15
Сервер на стероидах: FreeBSD, nginx, MySQL, PostgreSQL, PHP и многое другое
16 min
40K
Введение
С момента написания мной предыдущей статьи по оптимизации этой связки прошло довольно много времени. Тот многострадальный Pentium 4 c 512Мб памяти, обслуживающий одновременно до тысячи человек на форуме и до 150,000 пиров на трекере уже давно покоится на какой-нить немецкой, свалке, а клуб сменил уже не один сервер. Всё сказанное в ней всё ещё остаётся актуальным, однако есть вещи которые стоит добавить.
Статья большая, так что будет поделена на логические блоки:
0. Зачем вообще что-то оптимизировать? 1. Оптимизация ОС (FreeBSD) 1.1 Переход на 7.х 1.2 Переход на 7.2 1.3 Переход на amd64 1.4 Разгрузка сетевой подсистемы 1.5 FreeBSD и большое кол-во файлов 1.6 Softupdates, gjournal и mount options 2. Оптимизация фронтенда (nginx) 2.1 Accept Filters 2.2 Кеширование 2.3 AIO 3. Оптимизация бэкенда 3.1 APC 3.1.1 APC locking 3.1.2 APC hints 3.1.3 APC fragmentation 3.2 PHP 5.3 4. Оптимизация базы данных 4.1 MySQL 4.1.1 Переход на 5.1 4.1.2 Переход на InnoDB 4.1.3 Встроеный кеш MySQL - Query Cache 4.1.4 Индексы 4.2 PostgreSQL 4.2.1 Индексы 4.2.2 pgBouncer и другие. 4.2.3 pgFouine 4.3 Разгрузка базы данных 4.3.1 SphinxQL 4.3.2 Не-RDBMS хранилище 4.4 Кодировки 4.5 Асинхронность Приложение. Мелочи. 1. SSHGuard или альтернатива. 2. xtrabackup 3. Перенос почты на другой хост 4. Интеграция со сторонним ПО 5. Мониторинг 6. Минусы оптимизации
+361
Защита от прослушивания SIP c помощью — TLS + SRTP + шифрованный туннель и телефона Yealink T26p
10 min
67KTutorial

У вас паранойя? Вам кажется что вас постоянно хотят подслушать? Ведете важные переговоры? Тогда вам сюда!
В этой заметке я расскажу об основных сложностях при настройке телефона Yealink T26p.
Для начала мы заставим телефон поднять шифрованный туннель с сертификатами до сервера OpenVPN, а потом пустить внутри тунеля SIP с шифрованной через сертификаты сигнализацией и голосом! (TLS + SRTP).
Кому интересно прошу под кат.
+6
Безопасность Asterisk
18 min
93KДоброго времени суток, Вам, жители Хабра.
Случилось так, что я прошел курс дистанционного обучения по теме «Информационная Безопасность», по завершению которого необходимо было защитить выпускную работу. Темой для данной работы я выбрал «Безопасность Asterisk», касательно данной темы написано очень много статей и публикаций, но на мой взгляд они либо не полны, либо целиком не раскрывают данную тему, либо нет указаний на актуальность данного вопроса. Взял на себя смелость собрать «все» в один документ, что и вылилось в выпускную работу. Защитился успешно, диплом получен — решил поделится с сообществом данной работой.
Случилось так, что я прошел курс дистанционного обучения по теме «Информационная Безопасность», по завершению которого необходимо было защитить выпускную работу. Темой для данной работы я выбрал «Безопасность Asterisk», касательно данной темы написано очень много статей и публикаций, но на мой взгляд они либо не полны, либо целиком не раскрывают данную тему, либо нет указаний на актуальность данного вопроса. Взял на себя смелость собрать «все» в один документ, что и вылилось в выпускную работу. Защитился успешно, диплом получен — решил поделится с сообществом данной работой.
+12
Реализация MVC паттерна на примере создания сайта-визитки на PHP
16 min
733K
Как вы уже догадались из названия статьи, сегодня речь пойдет о самом популярном, разве что после Singleton, шаблоне проектирования MVC, хотя такое сравнение не совсем уместно. Понимание концепции MVC может помочь вам в рефакторинге и разрешении неприятных ситуаций в которые, возможно попал ваш проект. Дабы восполнить пробел, мы реализуем шаблон MVC на примере простого сайта-визитки.
+12
Переход с bootstrap 2 на bootstrap 3
5 min
61K
Этот небольшой обзор предназначенный тем, кто хочет быстро перевести свой сайт на новый бутстрап.
На днях вышла третья версия этого замечательного фреймворка, и, естественно, сразу захотелось посмотреть, как будут выглядеть сделанные на второй версии проекты, если просто поменять 2-ю на 3-ю. Оказалось что никак. Всё расползлось, разъехалось и кое-что перестало работать.
После чего захотелось всё быстренько поправить. И вот, что из этого получилось, читаем дальше.
+50
Несколько интересностей и полезностей для веб-разработчика (выпуск 2)
3 min
83KДоброго времени суток, уважаемые хабравчане. За последнее время я увидел несколько интересных и полезных инструментов/библиотек/событий, которыми хочу поделиться с Хабром.

С помощью данного сервиса вы сможете сверстать кроссбраузерный отзывчивый макет за 55 минут. Очень красивый и удобный интерфейс. Идеальное решение для веб-дизайнеров, 26 000 из которых уже используют Webflow. Для создания двух проектов сервис бесплатный, а в дальнейшей перспективе вас ждут вполне демократичные цены. Инструмент реально «крутой».
Если Вам GUI для верстки не комильфо сам по себекак для меня, все равно рекомендую зарегистрироваться и экспортировать парочку responsive макетов. А еще есть простой генератор отзывчивого лэйаута и Responsive Patterns.
Функциональный и простой инструмент для создания параллакс эффекта.
Webflow

С помощью данного сервиса вы сможете сверстать кроссбраузерный отзывчивый макет за 55 минут. Очень красивый и удобный интерфейс. Идеальное решение для веб-дизайнеров, 26 000 из которых уже используют Webflow. Для создания двух проектов сервис бесплатный, а в дальнейшей перспективе вас ждут вполне демократичные цены. Инструмент реально «крутой».
Если Вам GUI для верстки не комильфо сам по себе
Parallax.js
Функциональный и простой инструмент для создания параллакс эффекта.
+104
Первые несколько миллисекунд HTTPS соединения
10 min
172KTranslation
После нескольких часов чтения обзоров, Боб с нетерпением нажал на кнопку перехода к оформлению заказа на галлон цельного молока, и…
Воу, что только что произошло?

Воу, что только что произошло?

+232
Ключевые возможности Rust
18 min
32KRecovery Mode
Rust — новый язык программирования, разрабатываемый корпорацией Mozilla. Главная цель разработчиков — создание безопасного практичного языка для параллельных вычислений. Первая версия языка была написана Грэйдоном Хором в 2006 году, а в 2009 году к разработке подключилась Mozilla. С тех пор изменения претерпел и сам компилятор, изначально написанный на OCaml: он был успешно переписан на Rust с использованием LLVM в качестве back-end.
Основным продуктом, разрабатываемым на Rust, является новый веб-движок Servo, разработка которого также ведется Mozilla. В 2013 году к разработке Rust и Servo присоединилась корпорация Samsung Electronics, при активном участии которой код движка Servo был портирован на ARM архитектуру. Поддержка языка столь серьезными игроками IT индустрии не может не радовать и дает надежду на его дальнейшее активное развитие и совершенствование.
Язык Rust просто не может не понравится системным и сетевым разработчикам, тем, кому по работе приходится писать много кода, производительность которого критична, на C и C++, потому что:
Основным продуктом, разрабатываемым на Rust, является новый веб-движок Servo, разработка которого также ведется Mozilla. В 2013 году к разработке Rust и Servo присоединилась корпорация Samsung Electronics, при активном участии которой код движка Servo был портирован на ARM архитектуру. Поддержка языка столь серьезными игроками IT индустрии не может не радовать и дает надежду на его дальнейшее активное развитие и совершенствование.
Язык Rust просто не может не понравится системным и сетевым разработчикам, тем, кому по работе приходится писать много кода, производительность которого критична, на C и C++, потому что:
- Rust ориентирован на разработку безопасных приложений. Сюда входит безопасная работа с памятью: отсутствие null-указателей, контроль за использованием не инициализированных и деинициализированных переменных; невозможность совместного использования разделяемых состояний несколькими задачами; статический анализ времени жизни указателей.
- Rust ориентирован на разработку параллельных приложений. В нем реализована поддержка легких (зеленых) потоков, асинхронного обмена сообщениями без копирования пересылаемых данных, возможность выбора размещения объектов на стеке, в локальной куче задачи или куче, разделяемой между задачами.
- Rust ориентирован на разработку эффективных по скорости и памяти приложений. Использование LLVM в качестве back-end позволяет производить компиляцию приложения в нативный код, а простой интерфейс взаимодействия с C кодом – легко использовать уже имеющиеся высокопроизводительные библиотеки.
- Rust ориентирован на разработку кросс-платформенных приложений. Компилятор официально поддерживается на платформах Windows, Linux и Mac OS X, при этом существуют порты на другие *NIX платформы, такие как FreeBSD. Также поддерживается и несколько архитектур процессоров: i386, x64 и ARM.
- Rust позволяет писать в разных стилях: объектно-ориентированном, функциональном, actor-based, императивном.
- Rust поддерживает уже существующие отладочные инструменты: GDB, Valgrind, Instruments.
+55
Как перестать таскать дискеты на станок под DOS
5 min
36KTutorial
Добрый день! Сегодня я расскажу один случай из практики системного администрирования.
Топик заинтересует тех, кому еще придется столкнуться с настройкой сети под DOS впервые. Надеюсь, изложение будет достаточно полезным для тех, кому предстоит подключать станки к сети, и достаточно интересным для прочтения теми, кто не испытывает трудностей в работе с этой ОС.
UPD: Написал предысторию о создании беспроводных сетей на том же производстве.
Самому мне не довелось быть активным пользователем DOS. Я не так давно начал работать с компьютерами.
При знакомстве с DOS меня удивляло, что он до сих пор используется не смотря на возраст. В частности на производстве, где немало станков из прошлого века. Почему их не заменят на современные?
Во-первых, обычно это требует больших инвестиций. Пока они работают, приносят прибыль предприятию, менять их невыгодно.
Во-вторых, зачастую станки с современными ОС на управляющем компьютере менее стабильны. Это объясняется человеческим фактором: люди привыкшие к пользовательскому интерфейсу Windows легко используют компьютер станка не по назначению. Еще DOS лишен многих проблем с ПО и их обновлением, использует устройства напрямую и прост в настройке.
На заводе один из станков использует DOS. Операционная система отлично справляется. Станок позволяет выполнять оператору задания как из файла, так и вручную. Эти файлы создает специальная программа, что упрощает, ускоряет работу станочников и снижает количество их ошибок.
Итак, начало 2013 года — файлы в цех носят на дискетах. Такой носитель информации ненадежен и становится все дороже. Часто приходится записывать задания заново, если дискета вышла из строя. Да и дисководы не обеспечивают высокую отказоустойчивость. Но главное — скорость работы определяется скоростью хода человека, который ходит за дискетами.
Если подключить станок к корпоративной сети передачи данных, можно исключить дискеты из бизнес-процесса.
Топик заинтересует тех, кому еще придется столкнуться с настройкой сети под DOS впервые. Надеюсь, изложение будет достаточно полезным для тех, кому предстоит подключать станки к сети, и достаточно интересным для прочтения теми, кто не испытывает трудностей в работе с этой ОС.
UPD: Написал предысторию о создании беспроводных сетей на том же производстве.
Самому мне не довелось быть активным пользователем DOS. Я не так давно начал работать с компьютерами.
При знакомстве с DOS меня удивляло, что он до сих пор используется не смотря на возраст. В частности на производстве, где немало станков из прошлого века. Почему их не заменят на современные?
Во-первых, обычно это требует больших инвестиций. Пока они работают, приносят прибыль предприятию, менять их невыгодно.
Во-вторых, зачастую станки с современными ОС на управляющем компьютере менее стабильны. Это объясняется человеческим фактором: люди привыкшие к пользовательскому интерфейсу Windows легко используют компьютер станка не по назначению. Еще DOS лишен многих проблем с ПО и их обновлением, использует устройства напрямую и прост в настройке.
Что требовалось
На заводе один из станков использует DOS. Операционная система отлично справляется. Станок позволяет выполнять оператору задания как из файла, так и вручную. Эти файлы создает специальная программа, что упрощает, ускоряет работу станочников и снижает количество их ошибок.
Итак, начало 2013 года — файлы в цех носят на дискетах. Такой носитель информации ненадежен и становится все дороже. Часто приходится записывать задания заново, если дискета вышла из строя. Да и дисководы не обеспечивают высокую отказоустойчивость. Но главное — скорость работы определяется скоростью хода человека, который ходит за дискетами.
Если подключить станок к корпоративной сети передачи данных, можно исключить дискеты из бизнес-процесса.
+63
Делаем «mindmap» на Javascript с локальным хранением в базе данных браузера
25 min
57K
Это небольшой учебный пример редактора карты памяти. За счёт очень подробных комментариев и простого кода, понять его не составит проблем. Статья предназначена для знающих и изучающих Javascript.
Я опишу особенности создания редактора карты памяти, который использует базу данных браузера. Причём, это будет не LocalStorage, который не может превышать 5 мегабайт. Объём данных сможет превысить 100-200 мегабайт, так как используется IndexedDB или webSQL, смотря что доступно в конкретном браузере.
Исходники выложены в открытый доступ на Github.
Мы уложимся в 520 строк кода, при этом в нашей карте можно будет перетаскивать узлы между собой, удалять, переименовывать и создавать новые. А также можно будет назначать одну из 120 иконок через контекстное меню.
Секрет минимализма в том, что мы будем использовать проверенные в бою плагины:
- Ydn.db — хранение информации в базе данных браузера с автоматическим выбором лучшего метода и единым API
- jQuery context menu — контекстное меню, которое можно наполнять динамически при помощи Javascript
- jsPlumb — расширение позволяющее рисовать линии между HTML элементами
- jQuery UI — Drag&drop — перетаскивание элементов между собой
PS: Также мы научимся создавать «синглтон», облегчать себе асинхронное программирование при помощи jQuery и встроенного объекта $.Deferred(), а также при помощи плагина LiveReload, сохраним краску на клавише F5 при изменении свойств CSS и кода в HTML и Javascript.
+99
20 вещей, которые я должен был знать в 20 лет
3 min
718KTranslation
1. Мир пытается оставить тебя тупым. Начиная от банковских платежей и процентов и заканчивая чудо-диетами — из необразованных людей легче вытрясти деньги и ими проще управлять. Занимайтесь самообразованием столько, сколько можете — для того, чтобы быть богатым, независимым и счастливым.
+346
Information
- Rating
- Does not participate
- Location
- Россия
- Date of birth
- Registered
- Activity