Как стать автором
Обновить
25.2
Карма
0
Рейтинг
Дмитрий Симаков @BasilioCat

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

  • Публикации
  • Комментарии

Bluetooth Low Energy: подробный гайд для начинающих

Беспроводные технологииСтандарты связиИнтернет вещейЭлектроника для начинающих
Перевод
Tutorial

Создание кастомного сервиса и тем более клиента Bluetooth Low Energy – прогулка по граблям с завязанными глазами. По крайне мере так было для меня 4 года назад, когда я только начинал работать с BLE-устройствами. Сейчас почти каждый мой проект предусматривает использование этого протокола, поэтому в свое время пришлось в нем долго и мучительно разбираться. 

Разложить все по полкам помогла книга Мохаммада Афане "Intro to Bluetooth Low Energy" и серия постов на Novel Bits. Лично для меня эта книга стала настоящим открытием. Изначально я делал ее перевод на русский для своих коллег, не имеющим опыт работы с BLE. С согласия автора (огромное ему спасибо) решил опубликовать свою работу здесь. Надеюсь, перевод окажется полезным.

Это первая часть перевода (всего их будет 5), которая рассказывает, что такое BLE, ее возможности и отличия от Bluetooth Classic и описывает архитектуру протокола.

Читать далее
Всего голосов 29: ↑29 и ↓0 +29
Просмотры15.3K
Комментарии 19

Новости

Показать еще

Как выбрать красивые цвета для вашей инфографики

Веб-дизайнРазработка веб-сайтовГрафический дизайнДизайнИнфографика
Перевод
Tutorial


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

Прочитав эту статью, вы почувствуете себя более уверенно в выборе цвета. А если у вас вообще нет чувства цвета, то это просто рекомендации по хорошим сочетаниям. Поговорим о распространённых цветовых ошибках, которые нас окружают повсеместно, и как их избежать.

Статья не поможет найти хорошие градиенты или оттенки. Она предназначена для подбора красивых, чётких цветов для различных категорий информации (например, континентов, отраслей промышленности, видов птиц) в линейных, круговых, полосковых диаграммах и так далее.
Читать дальше →
Всего голосов 46: ↑45 и ↓1 +44
Просмотры19.3K
Комментарии 5

Разрабатываем самый удобный в мире* интерфейс для просмотра логов

Системное администрированиеАнализ и проектирование систем*nixСерверное администрирование

Если Вам приходилось когда-нибудь пользоваться веб-интерфейсами для просмотра логов, то Вы наверняка замечали, насколько, как правило, эти интерфейсы громоздки и (зачастую) не слишком-то удобны и отзывчивы. К некоторым можно привыкнуть, некоторые совсем ужасны, но, как мне кажется, причина всех проблем заключается в том, что мы неправильно подходим к задаче просмотра логов: мы пытаемся создать веб-интерфейс там, где лучше работает CLI (интерфейс командной строки). Мне лично очень комфортно работать с tail, grep, awk и прочими, и поэтому для меня идеальным интерфейсом для работы с логами было бы что-то аналогичное tail и grep, но которое при этом можно было использовать для чтения логов, которые пришли с множества серверов. То есть, конечно же, читать их из ClickHouse!


*по личному мнению хабрапользователя youROCK

Читать дальше →
Всего голосов 32: ↑30 и ↓2 +28
Просмотры14.6K
Комментарии 32

Очередная книга про разработку операционных систем

Системное программированиеCПрограммирование микроконтроллеровУчебный процесс в IT
image

Приветствую!

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

Всё это время я также наблюдал на разных ресурсах посты о «разработке ОС», которые в основном сводились к выводу «hello world» в QEMU, и сетовал на то, что не нужно путать ОС и «программу, которая может работать на голом железе». ОС это совсем не про работу на железе, это, в первую очередь, про синхронизацию и все такое прочее.
Читать дальше →
Всего голосов 41: ↑40 и ↓1 +39
Просмотры11K
Комментарии 35

Аутентификация в Kubernetes с помощью Dex: прикручиваем LDAP

DataLineIT-инфраструктураВиртуализацияDevOpsKubernetes
Tutorial
Сегодня я подробно разберу настройку аутентификации в Kubernetes с помощью Dex в связке с LDAP, а также покажу, как можно добавлять статических пользователей в Dex. 

В статье не буду останавливаться на основных принципах работы Dex, а сразу перейду к установке и настройке LDAP. Познакомиться с принципами работы Dex можно в этой статье.

Что будем делать:

  1. Установим OpenLDAP и настроим на нем поддержку STARTTLS. 
  2. Опишем структуру LDAP-каталога нашей организации.
  3. Включим поддержку OIDC (OpenID Connect) на kube-api-серверах.
  4. Получим SAN-сертификат для доменов, которые будет использовать Dex.
  5. Установим Dex и Dex-auth, где мы опишем LDAP-каталог и статических пользователей
  6. Сгенерируем kubeconfig нашего пользователя для работы с кластером.
  7. Настроим RBAC-авторизацию для групп и пользователей в кластере.

Итак, поехали.



Показывать буду на примере уже готового кластера Kubernetes с Helm версии 3 и Ingress, а также тремя доменными именами.
Читать дальше →
Всего голосов 15: ↑15 и ↓0 +15
Просмотры2.9K
Комментарии 0

Истории аварий с Patroni, или Как уронить PostgreSQL-кластер

Конференции Олега Бунина (Онтико)Высокая производительностьPostgreSQLАнализ и проектирование системАдминистрирование баз данных
В PostgreSQL нет High Availability из коробки. Чтобы добиться HA, нужно что-то поставить, настроить — приложить усилия. Есть несколько инструментов, которые помогут повысить доступность PostgreSQL, и один из них — Patroni.

На первый взгляд, поставив Patroni в тестовой среде, можно увидеть, какой это прекрасный инструмент и как он легко обрабатывает наши попытки развалить кластер. Но на практике в production-среде не всегда всё происходит так красиво и элегантно. Data Egret начали использовать Patroni еще в конце 2018 года и накопили определенный опыт: как его диагностировать, настраивать, а когда вовсе не полагаться на автофейловер.

На HighLoad++ Алексей Лесовский обстоятельно, на примерах и с разбором логов рассказал о типовых проблемах, возникающих при работе с Patroni, и best practice для их преодоления.


В статье не будет: инструкций по установке Patroni и примеров конфигураций; проблем за пределами Patroni и PostgreSQL; историй, основанных на чужом опыте, а только те проблемы, с которыми в Data Egret разобрались сами.
Читать дальше →
Всего голосов 18: ↑18 и ↓0 +18
Просмотры10.1K
Комментарии 1

Фишеры icloud и где они обитают

Информационная безопасностьГаджетыСмартфоны
🔥 Технотекст 2020
Внимание! Несмотря на то, что для работы над этой статьей я потратил не один десяток часов, но ты все еще можешь в ней поучаствовать.

Если у тебя чешутся руки — попробуй осилить этот текст.

История больше похожа на комикс, так как содержит более 50 изображений, поэтому аккуратнее, если ты с мобильного. А ещё — тут скорее всего нарушается 152-ФЗ, поэтому я не удивлюсь, если её удалят, так что читай быстрее. Эта история пока не имеет конца, но у нее есть начало…
Читать дальше →
Всего голосов 263: ↑262 и ↓1 +261
Просмотры47.8K
Комментарии 78

Snoop Project невероятный инструмент интернет разведки, которого пользователи рунета ждали так долго — доступен

Информационная безопасностьПоисковые технологииOpen sourceПоисковая оптимизация
🔥 Технотекст 2020
image

На Github-e выложен OSINT-инструмент, заточенный (в том числе) для поиска %username по СНГ локации


【Статья обновлена】в связи с развитием функционала Snoop Project.
Если вам до боли знаком такой софт, как namechk или spiderfoot, то «Snoop Project» вас явно порадует, он даёт «им» фору вместе взятым и это не желтый заголовок «Статья вечерняя» — это реальная «forensic-работа» по цифровым следам в киберпространстве…
Читать дальше →
Всего голосов 51: ↑37 и ↓14 +23
Просмотры60.6K
Комментарии 66

Похек Wi-Fi встроенными средствами macOS

Информационная безопасностьБеспроводные технологии
Tutorial


TL;DR Встроенные средства macOS позволяют выполнить некоторые атаки на Wi-Fi-сети. В статье описывается, как с помощью встроенного в Macbook Wi-Fi адаптера AirPort и macOS похекать Wi-Fi.

Обычно для аудита безопасности Wi-Fi-сетей используется классическая связка: виртуалка с Kali Linux + внешний USB адаптер типа Alfa AWU-blabla1337. Но оказывается, что с помощью macOS и встроенного адаптера Broadcom тоже можно делать грязь.

Содержимое статьи:

  • Мониторный режим на встроенном адаптере
  • Расшифровываем WPA трафик
  • Ловим хендшейки и PMKID
  • Собираем под макось пацанские тулзы: hcxtools, hashcat, bettercap
  • Брутим хеши на онлайн-фермах и локально

Йоу, камон мазафака
Всего голосов 63: ↑62 и ↓1 +61
Просмотры35.1K
Комментарии 27

Зачем учить Java и как делать это эффективно. Доклад Яндекса

ЯндексJavaПромышленное программированиеУчебный процесс в IT
Чем Java отличается от других популярных языков? Почему именно Java может быть первым языком для изучения? Давайте составим план, который поможет выучить Java как с нуля, так и с применением навыков программирования на других языках. Перечислим отличия между созданием продакшен-кода на Java и разработкой на других языках. Михаил Затепякин прочитал этот доклад на встрече для будущих участников стажировки Яндекса и других начинающих разработчиков — Java Junior meetup.


— Всем привет, меня зовут Миша. Я разработчик из Яндекс.Маркета, и сегодня я расскажу вам, зачем учить Java и как делать это эффективно. Вы можете задать резонный вопрос: почему это буду рассказывать я, а не какой-нибудь сильный разработчик с кучей лет стажа? Дело в том, что я сам изучал Java недавно, года полтора назад, поэтому еще помню, как это примерно было и какие есть подводные камни.
Читать дальше →
Всего голосов 24: ↑21 и ↓3 +18
Просмотры42.9K
Комментарии 20

В поисках LD_PRELOAD

Информационная безопасностьНенормальное программированиеСистемное администрирование*nixC
Эта заметка была написана в 2014-м году, но я как раз попал под репрессии на хабре и она не увидела свет. За время бана я про неё забыл, а сейчас нашёл в черновиках. Думал было удалить, но авось кому пригодится.



В общем, небольшое пятничное админское чтиво на тему поиска «включенного» LD_PRELOAD.
Читать дальше →
Всего голосов 67: ↑67 и ↓0 +67
Просмотры12.5K
Комментарии 9

DBA: вычищаем клон-записи из таблицы без PK

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



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

Как избавить базу от ненужных клонов?
Читать дальше →
Всего голосов 13: ↑13 и ↓0 +13
Просмотры3.3K
Комментарии 11

Плагины Jira: несколько примеров успешного изобретения велосипеда

Mail.ru GroupJavaScriptAtlassian


Мы в Mail.ru Group вкладываем много сил в развитие продуктов компании Atlassian и, в частности, Jira. Благодаря нашим усилиям свет увидели плагины MyGroovy, JsIncluder, My Calendar, My ToDo и другие. Все эти плагины мы развиваем и активно используем внутри компании.

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

Для проведения экскурсий в офисе нужно было предусмотреть создание запросов с проверкой пересекающихся экскурсий. Для тестировщиков — сделать механизм отслеживания этапов тестирования с ответственным за выполнение. Техподдержка хотела получить автоматический доступ к базе знаний.

Сегодня я расскажу, как путем комбинирования плагинов удалось решить эти задачи.
Читать дальше →
Всего голосов 49: ↑46 и ↓3 +43
Просмотры9K
Комментарии 6

Реверсим MIPS и Golang — основы реверса. Решение задач на реверсинг с r0от-мi. Часть 2

Информационная безопасностьAssemblerGoCTF
Tutorial
image

В данной статье разберемся с декомпиляцией MIPS бинарника в Ghidra и пореверсим программу, написанную на golang, в IDA.

Часть 1 — C, C++ и DotNet decompile.

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

  • PWN;
  • криптография (Crypto);
  • cетевые технологии (Network);
  • реверс (Reverse Engineering);
  • стеганография (Stegano);
  • поиск и эксплуатация WEB-уязвимостей.

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

Как организовать 120 000 фоток и чтобы не было трындеца, с различными уровнями доступа, для команды

ИнтерфейсыОбработка изображенийECM/СЭДУправление проектами
image

Решил я поискать работы Sci-Fi-художников прошлого и настоящего, которые рисовали реактивные ранцы. Нашел группу в ВК «Музей будущего», а там — 16 000 фотографий. Пришлось пересмотреть все вручную, навыбирал несколько десятков с джетпакоподбными аппаратами (см. подборку под катом), а потом задумался, а как же бедные фотографы? Или прочие товарищи, которые работают с тоннами фото/аудио/видео, да еще не в одиночку, а командами, удаленно и пр и пр.

Поспрашивал у знакомых фотографов — они пользуются эдаким миксом лайтрума, гуглдрайва и съемных жестких дисков. Говорят, полный ад.

Поинтересовался у знакомой, которая коммьюнити-менеджер русскоязычного сообщества игр крупной компании в гейм-индустрии на букву «B». Им нужно каталогизировать и искать среди огромного количества аудио- и видео-материалов. Создают много трейлеров к видео, game captures, звуковых эффектов, музыки. Куча файлов, относящихся к разным проектам, которые нужно побороть для дальнейшего кросс-проектного поиска. Не столько важно быстро находить, сколько находить в принципе.

Спросил ещё у архитекторов, у которых в базе 120 000 фоток объектов, как они живут с этим.

Оказывается вся эта область называется digital asset management. Вот список с рейтингами 30+ решений для управления цифровыми ресурсами (англ).
Читать дальше →
Всего голосов 23: ↑18 и ↓5 +13
Просмотры6.7K
Комментарии 11

Passive DNS в руках аналитика

Информационная безопасностьАнализ и проектирование системСетевые технологииDNS

Система доменных имен (DNS) является подобием телефонной книги, которая переводит удобные для пользователя имена, такие как «ussc.ru», в IP-адреса. Так как активность DNS присутствует практически во всех сеансах связи, независимо от протокола. Таким образом DNS логирование является ценным источником данных для специалиста по информационной безопасности, позволяющее им обнаруживать аномалии или получать дополнительные данные об исследуемой системе.


В 2004 году Флорианом Ваймером был предложен такой метод логирования, как Passive DNS, позволяющий восстанавливать историю изменений DNS данных с возможностью индексации и поиска, которые могут предоставлять доступ к следующим данным:


  • Доменное имя
  • IP-адрес запрошенного доменного имени
  • Дату и время ответа
  • Тип ответа
  • и т.д.

Данные для Passive DNS собираются с рекурсивных DNS-серверов встроенными модулями или с помощью перехвата ответов от DNS-серверов, ответственных за зону.


image

Рисунок 1. Passive DNS (взят с сайта Ctovision.com)

Читать дальше
Всего голосов 13: ↑13 и ↓0 +13
Просмотры4.4K
Комментарии 2

Несколько малоизвестных возможностей docker-compose

*nix

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


Я решил сделать некую подборку мало освещенных возможностей, особенностей. Статья не претендует на уникальность, это и мне, как памятка, и возможно некоторым падаванам поможет, начинающим свой путь с docker-compose.

Читать дальше →
Всего голосов 51: ↑49 и ↓2 +47
Просмотры19.3K
Комментарии 22

О простых вещах-сложно. «Cпящая сталь». Чем смазать заржавевшие болты или Не WD-40 единым…

Научно-популярноеСтарое железоDIY или Сделай самЛайфхаки для гиковХимия
Tutorial
Посвящается всем отчаявшимся и потерявшим надежду… открутить заржавевшую гайку!

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

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

Ну и, традиционно — не забудь закинуть в закладки, %USERNAME%, пригодится! :)


Читать дальше →
Всего голосов 196: ↑195 и ↓1 +194
Просмотры98.1K
Комментарии 297

Руководство: типы эссе в английском языке и советы по их написанию

Изучение языков
Перевод


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

Я нашел интересный пост, в котором рассказывается о том, эссе каких типов используются чаще всего, и даны советы по написанию таких текстов. Представляю вашему вниманию адаптированную (и дополненную) русскоязычную версию этого материала.
Читать дальше →
Всего голосов 17: ↑14 и ↓3 +11
Просмотры9.1K
Комментарии 4

Опусы про Его Величество Клей. Часть первая — вводная

Научно-популярное3D-принтерыDIY или Сделай самЛайфхаки для гиковХимия
Tutorial
Есть такие области знания, которые «аршином общим не измерить...». В принципе, в моей «домашней» области, коллоидной химии, под такое направление можно спокойно помещать любое фундаментальное понятие, будь-то адсорбция (с адсорбентами) или адгезия (с клеями). Честно говоря, мысль написать про клей у меня не возникала. Но когда читатели в каждой теме, связанной с полимерами начинают просить рассказать про клеи — об этом поневоле задумаешся (ну и хочется конечно же отпарировать на «все надо клеить суперклеем»). Адгезия и клеи — очень обширная тема, поэтому я все-таки решил за нее взяться, но разбить повествование на несколько частей. Сегодня первая часть — вводно-информационная. Чтобы узнать за счет чего клей клеит, какие бывают клеи и какой клей лучше подходит для склеивания _____ (вписать нужное), традиционно идем под кат (и кладем в закладки).

Читать дальше →
Всего голосов 166: ↑163 и ↓3 +160
Просмотры55K
Комментарии 155

Информация

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