Search
Write a publication
Pull to refresh
3
0
Дмитрий Олегович @k3NGuru

DevOps

Send message

Как прогнозировать спрос и автоматизировать закупки с помощью machine learning: кейс Ozon

Reading time13 min
Views41K
image
В интернет магазине Ozon есть примерно всё: холодильники, детское питание, ноутбуки за 100 тысяч и т.д. Значит, все это есть и на складах компании — и чем дольше товары там лежат, тем дороже обходятся компании. Чтобы выяснить, сколько и чего людям захочется заказать, а Ozon нужно будет закупить, мы использовали machine learning.
Читать дальше →

Настройка BGP для обхода блокировок, версия 3, без VPS

Reading time3 min
Views81K

UPDATE: Статья перестала быть актуальной, новую версию читайте здесь.


Зачем всё это делается в принципе и как оно устроено логически — описано в первой и второй статьях.


После их публикации я получил несколько вопросов от людей, которые пользуются VPN с не принадлежащих им ресурсов (например, приобретающих коммерческую услугу VPN). Этим людям раньше я советовал завести VPS для развертывания BGP-сервиса или каким-то еще образом получить доступ к серверу на Linux.


Но с сегодняшнего дня для них (и для всех остальных) есть более удобный вариант — на бесплатном сервисе antifilter.download появилась возможность автоматически настраивать BGP-сессию с вашим маршрутизатором.

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

Поднимаем IDS/NMS: Mikrotik и Suricata c web-интерфейсом

Reading time9 min
Views54K
У меня, видимо, такая карма: как ни возьмусь за реализацию какого-нибудь сервиса на опенсорсе, так обязательно найду кучу мануалов, каждый по отдельности из которых в моем конкретном случае не сработает, готовое решение толком не заведется или не понравится, случится еще какая-нибудь неудобоваримость, и в итоге приходится самому пробиваться к результату.

В этот раз все мануалы были на ELK5 или еще старше, а мне не очень хотелось ставить софтину пред-предыдущих версий. Мне хотелось взять софтину с наиболее перспективными сроками поддержки: желательно самое свежее из стабильного.

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

Итак, сегодня Mikrotik (RouterOS), Suricata 4.1, Elasticsearch+Filebeat+Kibana 6.5.
Читать дальше →

Краткое руководство по Dash — Python веб-фреймворк для создания дэшбордов. Installation + Dash Layout

Reading time7 min
Views102K
image

Всем привет!

Сегодня предлагаю погрузиться в один из удобнейших веб-фреймворков в связке c Python под названием Dash. Появился он не так давно, пару лет назад благодаря разработчикам фреймворка plotly. Сам Dash является связкой Flask, React.Js, HTML и CSS.

Выступление Криса Пармера на PLOTCON 2016


Давайте сразу установим фреймворк. Обновленные версии уточняйте тут.

pip install dash==0.31.1  # The core dash backend
pip install dash-html-components==0.13.2  # HTML components
pip install dash-core-components==0.38.1  # Supercharged components
pip install dash-table==3.1.7  # Interactive DataTable component (new!)

Друзья, если вы действительно хотите разобраться в данном фреймворке, читайте публикации до конца, так как зачастую сначала следуют примеры, а уже после детальный обзор кода. Если вам все равно непонятно — советую читать документацию по Dash на английском языке в оригинале. Также в рунете есть несколько статей, которые объясняют концепции, которые я решил пропустить в данном туториале.

Лечим проблему FHRP asymmetric routing

Reading time2 min
Views9.5K

Что такое “FHRP asymmetric routing”?


Состояние маршрутизации, при котором трафик в пределах одной сессии уходит через один маршрутизатор FHRP(VRRP/HSRP) master, а возвращается — через второй.


image


Что в этом плохого?

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

Разворачиваем Kubernetes HA-кластер на Baremetal с помощью Kubeadm и Keepalived (простое руководство)

Reading time3 min
Views14K

Эта статья является свободной интерпретацей официального руководства Creating Highly Available Clusters with kubeadm для Stacked control plane nodes. Мне не нравятся сложный язык и примеры использованные в нем, поэтому я написал свое руководство.


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

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

Собираем логи фаервола Mikrotik в базу данных

Reading time11 min
Views36K
Добрый день.

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

Цель: Целью будет, хранение «пережеванных» логов фаервола в базе данных, для последующего анализа.

Средства: Для реализации подойдет любой свежий дистрибутив Linux с rsyslogd v8 и выше, возможно предложенный синтаксис будет работать и на v7. Так же нам потребуется СУБД, я выбрал mariadb. Прирост БД будет варьироваться от количества журналируемых правил, потому размер накопителя на ваше усмотрение, в моем случае журналируются 30-40 правил, что в день составляет примерно 1200 тысяч строк. За месяц использования БД включая индексы выросла до 3,8Гб.

Механика: Маршрутизатор отправляет лог на удаленный сервер по UDP. Сервер rsyslog с помощью регулярных выражений проводит очистку строк от лишней информации, формирует SQL вставку и отправляет её в СУБД. СУБД, с помощью триггера до вставки, проводит дополнительную очистку и разделение полей, которые не удалось разобрать в rsyslog.
Читать дальше →

Конференц-комнаты на базе Asterisk

Reading time7 min
Views26K

Предисловие


Добрый день.

На написание данной статьи меня сподвигло 2 вещи: малое количество или вовсе отсутствие современных рабочих примеров по «фишкам» Asterisk, а так же нежелание специалистов делиться этими самыми «фишками» с остальными. Это я сейчас про РУ-комьюнити. Всякие «Деды» на форумах скорее обольют тебя помоями и отправят читать книжки десятилетней давности, чем дадут мало мальски полезную информацию. Сами же темы форумов, созданные в 2005-2010 годах, сильно устарели и иногда что то уже выпилено из текущей версии астериска, а что то надо очень сильно переделать, чтобы заработало.
Читать дальше →

Установка FreeSWITCH 1.8 на Debian 9 (Raspbian Stretch, базовый образ системы «Умного дома» MajorDoMo на Rasbperri Pi)

Reading time8 min
Views16K
Продолжаю небольшой цикл статей посвященному созданию «Умного дома» и пошаговых инструкций для самостоятельной установки/настройки.

Но сейчас речь пойдет в основном про Freeswitch и IP телефонию.

В августе разработчик открытой VoIP платформы IP телефонии FreeSWITCH, компания Signalwire опубликовал публичный релиз новой версии ПО – 1.8. (на данный момент уже выпущена 1.8.2).
В связи с выходом этой версии платформы IP телефонии Freesfitch 1.8, появилось решение установить его у себя на Raspberry 3 с установленным базовым образом системы умного дома MajorDoMo, под операционной системой Raspbian (Debian 9 Stretch) с некоторыми элементами автоматизации дома.



Под катом, описание установки платформы VoIP из исходных кодов с небольшими заметками и пояснениями.
Читать дальше →

Хакер Алексей, который защищает маршрутизаторы MikroTik без разрешения владельцев, стал знаменитым

Reading time3 min
Views123K


На Хабре подробно рассказывали про уязвимость CVE-2018-14847, которой подвержены около 370 тыс. маршрутизаторов MikroTik по всему миру (в том числе 40 тыс. в России). Если вкратце, уязвимость в MikroTik RouterOS позволяет без особой авторизации прочитать удалённо любой файл с роутера, включая плохо защищённые пароли доступа.

Хотя патч выпустили очень оперативно в апреле, многие владельцы маршрутизаторов не следят за обновлениями. В результате их устройства остаются уязвимыми и входят в IoT-ботнеты, которыми пользуются злоумышленники. За последние несколько месяцев зарегистрировано несколько случаев, когда через уязвимые маршрутизаторы MikroTik устанавливали скрипты Coinhive для майнинга в браузере и настраивали редирект DNS на вредоносные сайты. Ситуация усугубилась 5 октября, когда вышел новый эксплоит By The Way для CVE-2018-14847.

Но не все хакеры готовы пользоваться беспечностью пользователей и зарабатывать на этом. Некоторые пытаются помочь. На днях популярное западное издание ZDNet рассказало о «таинственном русскоязычном хакере», который «взламывает маршрутизаторы и без разрешения пользователей патчит их». На самом деле речь идёт о хабраюзере LMonoceros, которого теперь можно считать знаменитостью.
Читать дальше →

Шаблон базовой настройки маршрутизатора Cisco

Reading time3 min
Views470K
В последнее время приходится часто настраивать с нуля маршрутизаторы Cisco (в основном 800-1800 серии) для филиалов моей компании и дабы не набирать одни и теже команды третий десяток раз составил для себя небольшой шаблон настроек на разные случаи жизни. Сразу скажу что сертификаты от Cisco не получал, книжек по данным роутерам особо не читал, весь свой опыт приобрел методом научного тыка, курением мануалов на cisco.com и кое каким вдумчивым заимствованием кусков чужих конфигов…
Читать дальше →

Администрирование 1С для самых маленьких. Часть первая — разделяй и властвуй

Reading time11 min
Views131K

Дисклеймер


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


Предисловие


Сначала я просто хотел написать небольшую статью о том, как мы разносили базы по службам, но в ходе углубления в этот процесс мы добавляли всякие разные штуки (мониторинг служб, потом мониторинг пользователей внутри 1С, потом прикрутили заббикс, и, наконец, пришли к CI/CD на базе 1С). В итоге я понимаю что пихать это в одну статью будет слишком — решил разделить на несколько. Ну а название навеяно циклом статей "сети для самых маленьких", которые принесли мне много приятных минут и к которым я отсылаю всех, кто "хочет изучить сети". Итак, мы приступаем!

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

Список статей и литературы про NAS

Reading time7 min
Views26K


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


В этой статье собраны ссылки на большую часть материалов, которые я использовал. По мере накопления и обработки материалов, тут может появиться что-то новое.

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

PowerShell и Group Policy Preferences, когда счет принтеров на сотни

Reading time22 min
Views12K


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

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

В общем, мы с коллегами для себя выбрали GPP, в первую очередь для того, чтобы кто-то кроме ведущих администраторов мог разобраться в действующем конфиге, просто посмотрев отчет GPMC. Однако, кто скажет, что его штатный интерфейс удобен для управления 100+ устройствами — пусть первый бросит в меня камень. Кроме того, при вводе в эксплуатацию очередной партии нужно проделать много рутины по настройке сетевого сканирования и добавлению на сервер печати.

А всё, что делается больше одного раза, можно автоматизировать!

Что мы сегодня будем делать?

  • вести учет всех сетевых принтеров;
  • автоматизировать добавление принтеров в GPP (PS/XML);
  • автоматизировать добавление принтеров на принт-сервер, причем на кластерный (BAT/VBS)!

Итак, начнем.
Читать дальше →

Настройка squid или как не купить платное решение

Reading time20 min
Views130K
image

Всем привет!

Часто в организациях используем разного рода прокси, прокси как составляющая программного шлюза или самостоятельный классический вариант squid + анализатор логов и т.п.

Мы пытались внедрить решение от Ideco и ИКС, в итоге остановились на squid. Под катом история пути и техническая информация по настройке старого доброго кальмара.
Читать дальше →

OSPF (часть первая)

Reading time11 min
Views221K
Данная статья была написана для себя, чтоб при необходимости быстро освежить память и разобраться с теорией. Решил ее опубликовать, возможно кому-то будет полезна, а может в чем то ошибаюсь.

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

OSPF (англ. Open Shortest Path First) — протокол динамической маршрутизации, основанный на технологии отслеживания состояния канала (link-state technology) и использующий для нахождения кратчайшего пути алгоритм Дейкстры.

Возникает сразу вопрос — Что есть технология отслеживания состояния канала? Данное название считаю не совсем удачным. Сложилось так, что существует два типа протоколов динамической маршрутизации: Link-state и Distance-Vector. Рассмотрим их принципы работы:

В Distance-Vector протоколах, маршрутизатор узнает информацию о маршрутах посредством маршрутизаторов непосредственно подключенных в один с ним сегмент сети. То есть, маршрутизатор имеет информацию о топологии только в границах его соседних маршрутизаторов и понятия не имеет как устроена топология за этими маршрутизаторами, ориентируясь только по метрикам. В Link-state протоколах каждый маршрутизатор должен непросто знать самые лучшие маршруты во все удалённые сети, но и иметь в памяти полную карту сети со всеми существующими связями между другими маршрутизаторами в том числе. Это достигается за счет построения специальной базы LSDB, но подробнее об этом позже.
Читать дальше →

Свободные библиотеки для создания и редактирования файлов PDF

Reading time3 min
Views17K
Неделю назад состоялся релиз свободной библиотеки для генерации pdf-файлов версии OpenPDF 1.1.0, самый значительной апгрейд этой библиотеки за последнее время.

OpenPDF — это Java-библиотека для создания и редактирования файлов PDF, которая распространяется под двойной лицензией LGPL/MPL. Библиотека основана на форке iText. В реальности у неё такая история:

LibrePDF/OpenPDF

forked from rtfarte/OpenPDF

forked from kulatamicuda/iText-4.2.0

forked from daviddurand/iText-4.2.0

forked from ymasory/iText-4.2.0


Все форки ведут историю от одной версии iText 4.2.0, которая вышла восемь лет назад и стала последней версией под свободной лицензией. Сами разработчики iText перешли на AGPL и сконцентрировались над созданием пятой версии, чтобы более успешно продавать коммерческий софт. К настоящему времени они доросли до версии iText 7. Но свободный проект тоже не погиб, а продолжил развитие силами всего сообщества.
Читать дальше →

Настройка домашней среды для разработки (docker + gitlab + DNS)

Reading time5 min
Views36K

Intro


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


У большинства из нас есть какие-нибудь мелкие личные поделки, которые не выходят за рамки наших домов. Кто-то хостит их на рабочем компьютере, кто-то — на Heroku, кто-то — на VPS, а у кого-то есть домашний сервер. На реддите даже есть сообщество r/homelab, в котором люди обсуждают разные железки и софт для т.н. домашней лаборатории.


Я не настолько увлечен этим вопросом, но у меня дома стоит Intel NUC, который проигрывает музыку с NAS с помощью MPD. Помимо MPD на нем крутятся мои мелкие поделки, которые помогают мне с ним работать: ныне мертвый бот для телеграма, HTTP API на синатре и корявенький фронтенд для него.


В посте я без особых подробностей (многих из которых сам не понимаю) опишу процесс установки DNS-сервера для работы с доменными именами для сервисов, схему одновременной работы нескольких сервисов с помощью Docker и установку Gitlab с CI. Ничего нового вы не узнаете, но вдруг кому-нибудь пригодится этот "гайд". К тому же я бы хотел услышать предложения по поводу того, как можно было бы сделать это проще/элегантнее/правильнее.

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

Практические приёмы работы в Wireshark

Reading time6 min
Views90K
Джулия Эванс, автор материала, перевод которого мы сегодня публикуем, решила рассказать об одном из своих любимых сетевых инструментов, который называется Wireshark. Это — мощная и сложная программа, оснащённая графическим интерфейсом, предназначенная для анализа трафика в компьютерных сетях. Джулия говорит, что на практике пользуется лишь немногими возможностями Wireshark, но они обычно оказываются очень кстати. Здесь она хочет поделиться со всеми желающими рассказом о самых полезных приёмах работы с программой и надеется, что они пригодятся не только ей, но и всем, кому приходится решать сетевые проблемы.


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

Information

Rating
Does not participate
Location
Кемерово, Кемеровская обл., Россия
Date of birth
Registered
Activity