Pull to refresh
0
0
Александр @FarCry

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

Send message

Как мы звезды рейтинга дробили

Reading time3 min
Views21K
CF Rating

Вместо предисловия


Привет всем хабражителям!
Взбрело мне как-то, холодным зимним вечером, внести на сайт вместо целых звезд рейтинга — их частичную заливку для дробных чисел (4.5, 3.85 и тд.). Так ведь и глазу милее и информативнее — какое заведение лучше, а какое — хуже. Вот и сели мы с командой думать и гадать.
Читать дальше →
Total votes 17: ↑17 and ↓0+17
Comments20

Одна из уязвимостей технологии WPS

Reading time3 min
Views56K

Для начала рассмотрим что такое WPS


Большинство современных роутеров поддерживают механизм WPS (Wi-Fi Protected Setup). С его помощью пользователь за считанные секунды может настроить безопасную беспроводную сеть, вообще не забивая себе голову тем, что «где-то еще нужно включить шифрование и прописать WPA-ключ.

WPS позволяет клиенту подключиться к точке доступа по 8-символьному коду, состоящему из цифр (PIN). Однако из-за ошибки в стандарте нужно угадать лишь 4 из них. Таким образом, достаточно всего-навсего 10000 попыток подбора и вне зависимости от сложности пароля для доступа к беспроводной сети вы автоматически получаете этот доступ, а с ним в придачу — и этот самый пароль как он есть.

Учитывая, что это взаимодействие происходит до любых проверок безопасности, в секунду можно отправлять по 10-50 запросов на вход через WPS, и через 3-15 часов (иногда больше, иногда меньше) вы получите ключи.

Когда данная уязвимость была раскрыта производители стали внедрять ограничение на число попыток входа (rate limit), после превышения которого точка доступа автоматически на какое-то время отключает WPS — однако до сих пор таких устройств не больше половины от уже выпущенных без этой защиты. Даже больше — временное отключение кардинально ничего не меняет, так как при одной попытке входа в минуту нам понадобится всего 10000/60/24 = 6,94 дней. А PIN обычно отыскивается раньше, чем проходится весь цикл.
Читать дальше →
Total votes 18: ↑11 and ↓7+4
Comments16

Блокировщик рекламы для дома на коленке

Reading time3 min
Views28K

Предыстория


Прожорливый Bind9


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


Все бы ничего, но реклама там крутится на каждый чих. Пришлось изобретать, как же ее "порезать". Первая мысль была — поднять свой DNS сервер и отправлять все неугодные домены в /dev/null на 127.0.0.1. К этому моменту мой домашний серверок вернулся ко мне и занял свое почетное место на шкафу в качестве NAS сервера.


Сказано — сделано. Поднят Bind9, прописаны конфиги для нескольких доменов, все отлично. Летим.

Читать дальше →
Total votes 29: ↑28 and ↓1+27
Comments34

Список бесплатных транзакционных, хостинговых и маркетинговых email-провайдеров

Reading time5 min
Views38K
Если вы блоггер или управляете малым или средним бизнесом, то скорее всего вы не против сэкономить. Как раз на электронной почте можно сохранить несколько сотен долларов в год.

Существуют три вида почтовых услуг, которые могут пригодиться блоггеру или владельцу сайта:

  1. Транзакционные. Нужны для отправки писем о событиях, транзакциях, уведомлений о заказе, регистрационных данных и т.д.;

  2. Маркетинговые. Нужны при осуществлении новостной рассылки, проведении акций, обновлениях в блоге и т.д.;

  3. Хостинг почты. Нужен для получения и отправки электронных писем (потребуется, если вы пользуетесь виртуальными серверами, например, DigitalOcean, Linode и т.п.).

image
Читать дальше →
Total votes 19: ↑16 and ↓3+13
Comments11

Поднимаем Owncloud с нуля с динамическим IP и Let's Encrypt. Тысяча слонов!*

Reading time16 min
Views94K


Давно хотел написать целостный туториал по поднятию Owncloud в условиях домашнего сервера или небольшой компании до 500 пользователей. Owncloud — это прекрасный open-source проект, который позволяет на собственной инфраструктуре поднять свой вариант сервера синхронизации. По возможностям очень похож на Dropbox, а в чем-то его и превосходит. Огромный плюс — отсутствие ограничений по объемам хранения, полный контроль над сервером. Минусы тоже очевидны: вам самим придется следить за всем этим безобразием и беспокоиться о надежности сервера, валяющегося на антресолях или в шкафу.

Совсем недавно мне подвернулась задача по развертыванию Owncloud в домашне-боевых условиях. Я честно отработал свои два литра кошерного русского имперского стаута и решил поделиться своим опытом, собрав все воедино. Итак, сегодня мы рассмотрим:

  1. Развертывание актуального LEMP-stack
  2. HTTPS. Let's Encrypt для Nginx с автоматическим обновлением сертификата
  3. Конфигурирование Nginx для Owncloud
  4. Кэширование php-apcu
  5. Подключение внешнего основного хранилища по NFS
Читать дальше →
Total votes 53: ↑47 and ↓6+41
Comments95

MikroTik. Правильный dst nat при использовании 2-х и более провайдеров

Reading time11 min
Views224K
Приступая к выполнению задачи я рассчитывал на легкую прогулку в тени дубового парка, созерцая природу и предаваясь размышлениям… Однако позже стало понятно, что это будет тернистый и сложный поход сквозь горные реки с подводными камнями, обледеневшими скалами и глубокими пещерами.
Через медитации, борьбу со стихиями и собственной тупостью преодоление себя я, все таки, достиг желанной нирваны.

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


Конкретно в моем случае, нужно было настроить роутер так, чтобы web-сервер в локальной сети за ним был доступен по IP любого из 3-х провайдеров.
Читать дальше →
Total votes 44: ↑40 and ↓4+36
Comments60

Установка OTRS 5 на сервер с Nginx

Reading time8 min
Views15K

Устанавливая Helpdesk OTRS я столкнулся с тем, что работа официально поддерживается только с Apache HTTP Server, а мне нужен был Nginx. Как оказалось, подробного руководства по установке OTRS на WEB-сервер под управлением Nginx в интернете нет, попробуем это исправить. В этой статье будет описана только установка OTRS версии 5.0.13, а его настройка это отдельная тема. В качестве ОС, на которой будет развернут сервер, выступит CentOS 7.
Читать дальше →
Total votes 15: ↑11 and ↓4+7
Comments12

Настройка выделенного сервера Source под Linux, часть 1

Reading time31 min
Views16K

В данном руководстве будет описана установка и настройка одновременной работы нескольких выделенных игровых серверов Steam под Linux на примере игры Team Fortress 2.


  • Введение
  • Установка клиента Steam и сервера Team Fortress 2
  • Базовая настройка серверов
    • Теория
    • Практика
    • Сетевые настройки
    • Скрипты запуска сервера
  • Обновление серверов
    • Автоматическое
    • Периодическое обновление
    • Только проверка
Читать дальше →
Total votes 24: ↑19 and ↓5+14
Comments10

Настройка выделенного сервера Source под Linux, часть 4

Reading time24 min
Views8.8K
  • Сервер статистики HLstatsX
    • Установка
    • Настройка mysql
    • Настройка HLstatsX демона
    • Настройка веб-сервера
    • Трансляция логов
    • Патч
    • Первый запуск
    • Регистрация серверов
    • Начальная настройка
    • Ошибки
    • Тепловые карты
    • Автоматический запуск
    • Тюнинг
      • Шрифты
      • Превью карты
      • Раздельный учёт статистики
      • Отключение статистики
      • Ограничение доступа
      • Новое оружие
      • Восстановление пароля
Читать дальше →
Total votes 20: ↑14 and ↓6+8
Comments3

Новый web-интерфейс статистики и прослушивания вызовов для IP АТС Asterisk

Reading time8 min
Views20K
Идея написания web-интерфейса статистики и прослушивания вызовов для IP АТС Asterisk не покидала меня вот уже несколько лет. Решения, найденные в Интернет, не устраивали по тем или иным критериям — где-то не хватало функционала, какие-то из них совсем не радовали глаз.

И вот, вооружившись стеком технологий и оседлав боевого коня, предоставленного компанией ServerClub, я отправился в путь.

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



А под катом вас ждет видео-гайд по интерфейсу, необходимые настройки и подробное описание всего доступного функционала.
Total votes 23: ↑23 and ↓0+23
Comments24

Тестируем IVR на Asterisk с помощью… Asterisk

Reading time8 min
Views12K

Недавно мне потребовалось добавить метрику по uptime сервиса дистанционного обслуживания для расчета SLA. Статистика по вызовам API является косвенным показателем работоспособности, а нужна достоверная проверка всех функций от дозвона из внешней сети, до прохождения пользователя по всему меню обслуживания. В интернете ничего готового не видел, поэтому решил поделиться своими изысканиями.


Есть система дистанционного обслуживания – клиент может позвонить в call-центр и проверить/изменить настройки своей учётной записи без участия оператора. Для перехода по меню и управления настройками используются тональные сигналы (DTMF). АТС в свою очередь взаимодействует с ядром основной системы через API, возвращая результаты пользователю в виде голосовых сообщений.


Задача: настроить автоматизированную проверку системы (правильно отвечает на запросы/выполняет нужные команды).
Главные требования:


  • максимальная правдоподобность имитации пользователя: т.е. нужно именно звонить и нажимать кнопки, а не вызывать методы API в обход call-центра.


  • работа именно с тем планом набора, в который попадают обычные пользователи; нельзя делать специальный контекст для автоматизированной проверки.


Посмотреть решение
Total votes 23: ↑21 and ↓2+19
Comments4

Визуальный мониторинг серверной инфраструктуры на базе Nagios + Grafana

Reading time7 min
Views48K
nagios + grafana

Мы в Атласе любим, когда все находится под контролем. Это касается и всей серверной инфраструктуры, которая, с годами, превратилась в живой организм из многочисленных виртуальных машин, сервисов и служб. Появилась потребность наблюдать за жизненно важными аспектами IT-составляющей нашей деятельности: мониторить боевой сервер, отслеживать изменения системных ресурсов на виртуалках баз данных, следить за ходом бизнес-процессов и тд. Встал вопрос — как же этого добиться и главное какими инструментами? Стали искать какие-то готовые решения. Перепробовали кучу платных/бесплатных сервисов, которые, якобы, предоставляли бы нам "самую ценную" информацию о состоянии нашей системы. Но, в конечном итоге, все сводилось к каким-то непонятных диаграммам, схемам и цифрам, которые, по сути, для нас не имели никакой ценности.


Так мы пришли к пониманию, что надо собирать что-то самостоятельно. За основу решили взять самую гибкую и продвинутую систему, которую можно настроить для мониторинга чего и как угодно — Nagios. Настроили, поставили, работает — круто! Жаль только интерфейс сего чуда застрял где-то в середине 90-х, а нам хотелось, чтобы еще и визуальная составляющая была на уровне.


Недолгий поиск показал, что лидером среди решений по созданию красивых дашбордов является Grafana. Так и решили выводить весь наш мониторинг из Nagios на мониторах в виде красивых графиков в Grafana. Вопрос остался только в том — как их подружить друг с другом?

Я расскажу как!
Total votes 30: ↑30 and ↓0+30
Comments24

NGINX: Перехват ошибок 5хх с помощью отладочного сервера

Reading time6 min
Views25K

Является ли ошибкой ответ 5хх, если его никто не видит? [1]


image

Вне зависимости от того, как долго и тщательно программное обеспечение проверяется перед запуском, часть проблем проявляется только в рабочем окружении. Например, race condition от параллельного обслуживания большого количества клиентов или исключения при валидации непредвиденных данных от пользователя. В результате эти проблемы могут привести к 5хх ошибкам.

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

Для облегчения процесса поиска и отладки могут быть использованы некоторые полезные приёмы в случае, когда NGINX используется для проксирования или балансировки приложения. В этой статье будет рассмотрено особое использование директивы error_page в применении к типичной инфраструктуре приложения с проксированием через NGINX.
Читать дальше →
Total votes 45: ↑45 and ↓0+45
Comments4

Настройка wifi авторизации через sms под ubuntu 16.04

Reading time24 min
Views56K
Привет Хабр! Не так давно, в нашей организации встала задача узаконить wifi доступ, но чтобы в дальнейшем использование системы было бесплатно. (Согласно постановлению Правительства №758 от 31 июля 2014г. и №801 от 12 августа 2014 г. — все публичные WIFI сети обязаны производить идентификацию пользователей). У нас 10 залов для мероприятий (от 30 до 400 человек), а в день в среднем проходит от 4 до 12, плюс постоянная текучка народа и капризные пользователи.

image
Читать дальше →
Total votes 30: ↑30 and ↓0+30
Comments35

Определение региона по номеру телефона в Asterisk без использования БД

Reading time4 min
Views10K


Для многих компаний, работающих по всей стране, бывает очень важно знать, из какого региона именно поступил каждый входящий звонок, например, для оценки эффективности маркетинговой кампании по интересующим регионам. Конечно, можно заставить операторов call-центра уточнять эту информацию у звонящего каждый раз, но все же удобнее получать такую информацию в автоматическом режиме.
Кроме того, при осуществлении исходящих вызовов бывает важно звонить именно с номера того региона, где находится клиент. Можно, конечно, составить исходящие маршруты, но при количестве регионов более трех, да еще и с учетом мобильных номеров, конструкция получается монструозной.
Читать дальше →
Total votes 20: ↑15 and ↓5+10
Comments14

Mikrotik QOS в распределенных системах или умные шейперы

Reading time57 min
Views95K
А что бы вы со своей стороны могли предложить?
— Да что тут предлагать… А то пишут, пишут… конгресс, немцы какие-то… Голова пухнет. Взять все, да и поделить.
— Так я и думал, — воскликнул Филипп Филиппович, шлепнув ладонью по скатерти, — именно так и полагал.
М. Булгаков, «Собачье сердце»


image Про разделение скорости, приоритезацию, работу шейпера и всего остального уже много всего написано и нарисовано. Есть множество статей, мануалов, схем и прочего, в том числе и написанных мной материалов. Но судя по возрастающим потокам писем и сообщений, пересматривая предыдущие материалы, я понял — что часть информации изложена не так подробно как это необходимо, другая часть просто морально устарела и просто путает новичков. На самом деле QOS на микротике не так сложен, как кажется, а кажется он сложным из-за большого количества взаимосвязанных нюансов. Кроме этого можно подчеркнуть, что крайне тяжело освоить данную тему руководствуясь только теорией, только практикой и только прочтением теории и примеров. Основным костылем в этом деле является отсутствие в Mikrotik визуального представления того, что происходит внутри очереди PCQ, а то, что нельзя увидеть и пощупать приходится вообразить. Но воображение у всех развито индивидуально в той или иной степени.
Читать дальше →
Total votes 25: ↑25 and ↓0+25
Comments15

BILLmanager стал более открытым

Reading time6 min
Views6.8K


Мы возвращаемся на Хабр после долгого отсутствия. И сегодня хотим рассказать как быстро и просто создать свой дополнительный модуль для BILLmanager'a. Эта задача существенно упростилась, потому что теперь доступен исходный код уже реализованных нами плагинов.
Читать дальше →
Total votes 8: ↑8 and ↓0+8
Comments8

Онлайн чат для веб-сайтов: self-hosted/open source

Reading time2 min
Views13K
Прошло немало времени, прежде чем на сайте интернет-магазина нашей компании появился онлайн чат. До этого как-то удавалось обходиться функционалом тикет-системы osTicket и классической телефонной связи, руководствуясь логикой «тот кому надо купить, должен обладать неподдельным желанием это сделать». Но я сам начал сталкиваться с ситуациями, когда звонить и висеть на линии откровенно влом, а ждать ответа на почту слишком долго. Формат чата оказался той самой золотой серединой. Начинаешь диалог и раз в 5 минут, занимаясь своими делами, получаешь нужные тебе ответы от оператора на другой стороне. А по итогу можно отправить транскрипт себе на почту. Да простят меня все создатели и пиарщики комерческих веб-чатов… Первоклассный open source под катом.
Читать дальше →
Total votes 17: ↑14 and ↓3+11
Comments29

Повышение конверсии: 9 важнейших элементов правильного шаблона email-рассылки

Reading time6 min
Views7.1K
image

Вы проводите A/B-тестирование, тщательно сегментируете рынок и подбираете каждое слово в тексте своей почтовой рассылки, но что вы делаете, чтобы оптимизировать его разметку? Эстетика вашего шаблона так же важна, как и содержание самого письма. Поэтому давайте рассмотрим девять элементов проектирования, которые помогут вам увеличить конверсию.
Читать дальше →
Total votes 13: ↑8 and ↓5+3
Comments2

Уведомление о звонке по telegram

Reading time4 min
Views22K
image image
Довольно часто компании, использующие Asterisk, сталкиваются с необходимостью автоматического перевода звонка на мобильный телефон сотрудника. Конечно, идеальным решением была бы установка на телефоны какого-нибудь софтфона, но далеко не везде качество мобильного интернета удовлетворяет потребности передачи голоса, так что звонок переводится именно на номер мобильного телефона. В соответствии с законодательством и внутренними правилами, операторы связи чаще всего не разрешают подстановку произвольного номера в качестве Caller ID, поэтому работники, которым переводится вызов, видят не номер звонящего клиента, а номер офиса. В некоторых случаях это даже удобно, но бывает и так, что перезвонить клиенту нужно немедленно. Конечно, работник может зайти в интерфейс статистики(если, конечно, он есть) и найти там номер звонившего, но это не всегда возможно и всегда абсолютно неудобно.
Читать дальше →
Total votes 12: ↑12 and ↓0+12
Comments12

Information

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