Pull to refresh
5
0
Агафонов Алексей @Supme

Системный администратор

Send message

Ory Kratos — коробочный SSO

Level of difficulty Medium
Reading time 9 min
Views 5.9K

Ory Kratos - современный cloud native сервер идентификации с поддержкой PassKeys, MFA, FIDO2, TOTP, WebAuthn, с возможностью управления профилями, схемами пользователей, входом через внешние сервисы, регистрацией, восстановлением аккаунта, с поддержкой passwordless входа. Написан на Go, headless, API-first.

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

Читать далее
Total votes 20: ↑20 and ↓0 +20
Comments 4

Страх и ненависть в ГОСТ Р 51583-2014 (18+)

Level of difficulty Medium
Reading time 6 min
Views 33K

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

Поехали
Total votes 32: ↑13 and ↓19 -6
Comments 25

Расшифровка базы данных KeePass: пошаговое руководство

Reading time 9 min
Views 88K

image


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


На данный момент существует 2 версии KeePass:


  • KeePass 1.x (генерирует файлы .kdb);
  • KeePass 2.x (генерирует файлы .kdbx).

Структура файла с базой данных KeePass (.kdb, .kdbx) состоит из 3 частей:


  • Подпись (не зашифрована);
  • Заголовок (не зашифрован);
  • Данные (зашифрованы).

Далее я подробно расскажу о том, как дешифровать базу данных KeePass 1.x и KeePass 2.x.

Читать дальше →
Total votes 67: ↑67 and ↓0 +67
Comments 39

Рецепты PostgreSQL: загрузка Государственного Адресного Реестра

Reading time 6 min
Views 4.4K

Для приготовления загрузки Государственного Адресного Реестра в PostgreSQL нам понадобится сам PostgreSQL, bash, sh, curl, wget, xml2csv, jq, или можно воспользоваться готовым образом.

ОСТОРОЖНО! Может потребоваться много дискового пространства! Терабайта должно хватить, может, даже пол-терабайта хватит.

Первым делом
Total votes 8: ↑7 and ↓1 +6
Comments 4

Новый аналог Punto Switcher для linux: xswitcher

Reading time 3 min
Views 52K
Прекращение поддержки xneur вызвало у меня определённые страдания в последние полгода (с появлением OpenSUSE 15.1 на моих десктопах: при включённом xneur окна теряют фокус и забавно мерцают в такт ввода с клавиатуры).

«А, блин, опять не в той раскладке начал набирать» — в моей работе встречается до неприличия часто. И позитива не добавляет.

Читать дальше →
Total votes 44: ↑44 and ↓0 +44
Comments 87

Разработка плагинов для Zabbix Agent 2

Reading time 18 min
Views 15K

На последнем Zabbix Summit 2019 вместе с выходом Zabbix 4.4 был анонсирован новый Zabbix Agent 2, ключевая фишка которого — возможность написания плагинов к нему на языке Go. И многие сразу стали спрашивать: а как же, собственно, эти плагины писать, как они устроены? Где взять документацию и примеры?


В этой статье я хочу дать ответы на эти и некоторые другие вопросы. Обо всём по порядку, но если вы из тех, кто сразу рвётся в бой, смело пропускайте вступительную часть и переходите к практике ⎝◔◞ ◔⎠


Итак...


Читать дальше →
Total votes 14: ↑13 and ↓1 +12
Comments 5

Экономим на лицензиях Mikrotik CHR

Reading time 5 min
Views 105K
В Телеграм-чате @router_os часто вижу вопросы о том, как сэкономить на покупке лицензии от Mikrotik, либо пользоваться RouterOS, вообще, на халяву. Как ни странно, но такие способы есть и в правовом поле.





В данной статье я не буду касаться лицензирования аппаратных устройств Mikrotik, так как в них с завода установлена максимальная лицензия, которую может обслужить железо.
Читать дальше →
Total votes 7: ↑6 and ↓1 +5
Comments 30

Наследование legacy-систем и процессов или Первые 90 дней в роли CTO

Reading time 15 min
Views 12K
Известно, что компетентность CTO проверяется только на второй раз исполнения этой роли. Потому что одно дело несколько лет работать в компании, вместе с ней эволюционировать и, находясь во все том же культурном контексте, постепенно получать больше ответственности. И совсем другое — прийти сразу в должность техдиректора в компанию с багажом legacy и кучей проблем, аккуратно заметенных под ковер.

В этом смысле опыт Леона Файера, которым он делился на DevOpsConf, не то чтобы прямо уникален, но помноженный на стаж и количество различных ролей, которые он за 20 лет успел на себя примерить, очень полезен. Под катом хронология событий за 90 дней и много баек, над которыми приятно посмеяться, когда они происходят с кем-то другим, но с которыми не так уж весело сталкиваться лично.

Леон очень колоритно рассказывает по-русски, поэтому если у вас есть 35-40 минут, то рекомендую смотреть видео. Текстовая версия для экономии времени ниже.

Total votes 41: ↑40 and ↓1 +39
Comments 4

Итоги слепого тестирования камер: iPhone, Pixel, Huawei, Samsung

Reading time 3 min
Views 59K


Неделю назад мы запустили голосование за лучшую камеру среди флагманских смартфонов. Чтобы исключить предвзятость, выбрали слепой метод и теперь подводим итоги. Больше всего участникам опроса понравились фото, сделанные на iPhone 11 Pro Max. Ему совсем чуть-чуть уступил Google Pixel 4 XL. А третье и четвертое места достались Huawei Mate 30 Pro и Samsung Galaxy Note 10+ соответственно. Как так получилось, сейчас расскажем подробнее.
Читать дальше →
Total votes 65: ↑62 and ↓3 +59
Comments 74

Очень много YouTube-каналов для прокачки английского языка для программистов

Reading time 4 min
Views 60K
Привет, Хабр!

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

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

Поучить английский


AJ Hoge. На его канале есть всё: от базовых слов до размышлений о важности языка тела в общении. Чувак пилит видосы уже много лет, материальчик накопился.

EngVid. Если бы можно было выбрать что-то одно для улучшения английского, то это оно. Разные преподы и тематики, постоянное обновление, бездонный ресурс. Ещё сайт одноимённый крутой, с удобной навигацией — можно найти очень узкую тему по интересам.
Читать дальше →
Total votes 59: ↑52 and ↓7 +45
Comments 19

Поднимаем производительность SSD c колен, куда нажимать и зачем

Reading time 8 min
Views 134K
На самом деле, речь сегодня пойдёт не только о бывших в использовании какое-либо время накопителях, ведь проблема низкого быстродействия может затронуть даже только что принесённый из магазина SSD. Конечно, физику не обманешь – со временем все твердотельные накопители будут терять производительность. Но причиной этому может стать не только проблема именно самого SSD. Обеспечить грамотное взаимодействие комплектующих и программного обеспечения в системе – не совсем простая задача для простых пользователей, кто не хочет (или кому попросту не надо) хоть мало-мальски разобраться в теме и послушать советы грамотных в этом плане людей. Кому-то проще переустановить операционную систему или добавить в список используемых приложений какие-то сомнительные «твикеры». Но ведь вдумайтесь — к примеру, простое с нашей точки зрения удаление файла состоит из достаточно большого количества этапов, в которых завязаны сразу несколько участников. И, если хоть один из них отработал задачу некорректно, то это сказывается на производительности диска. Что это за этапы? Кем или чем они выполняются? Как обеспечить стабильную работу? Во всём этом мы сегодня и разберёмся. Просто и наглядно, чтобы понятно было всем. И тогда станет ясно, что лечение симптомов низкой производительности SSD не поможет.

Читать дальше →
Total votes 27: ↑26 and ↓1 +25
Comments 77

Как мы запустили роботов в маленький Чернобыль. Часть 1

Reading time 8 min
Views 52K

Рождение концепции Remote Reality


История нашего «безумного» проекта началась три года назад, когда размышляя о будущих перспективах развития игровой индустрии, мой друг Леша сказал: «Представь себе будущее, в котором люди в виде развлечения, из любой части мира управляют на игровом полигоне настоящими роботами, как «аватарами»».


image

Идея изначально показалась нам достаточно интересной и не сложной в реализации. Мы тут же «засели» за поиски похожих проектов и с удивлением обнаружили, что никто, ничего подобного не делал. Это казалось странным, ведь идея лежала буквально «на поверхности». Мы нашли множество следов любительских проектов создания прототипов в виде шасси с камерой на основе Arduino, но никто так и не довел ни один проект до логического завершения. Позднее, преодолевая казалось бесконечные трудности и проблемы, мы поняли причину отсутствия аналогов, но изначально идея нам казалось крайне простой и быстро реализуемой.


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


Мы сразу решили, что эти мысли укладываются больше в концепцию развлекательного аттракциона, а не компьютерной игры. Люди любят развлечения и хотят чего-то нового, и мы знали, что им предложить. Как и в любом бизнесе, сразу всплыл вопрос окупаемости, ведь на первый взгляд кажется, что наша физическая модель ограничена количеством роботов. Но умножив роботов на 24 часа и на цену часа в 5-10 долларов, сомнения отпали. Финансовая модель не являлось «Клондайком», но вполне окупалась даже при 10% загрузке.


Очень быстро у нас в голове появилось название новой концепции: Remote Reality, по аналогии с Virtual Reality и Augmented Reality.

Читать дальше →
Total votes 215: ↑214 and ↓1 +213
Comments 158

Эксплуатация Microsoft Edge от CVE до RCE на Windows 10

Reading time 18 min
Views 9.9K

Intro


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

Читать дальше →
Total votes 41: ↑40 and ↓1 +39
Comments 9

Про ООП

Reading time 2 min
Views 39K


Чем больше читаю про ООП, тем больше возникает ощущение, что ООП понимают не только лишь все. Очередная статья этому пример.


Тут можно долго расписывать нелепость аргументаций в приведенной выше статье. Но в целом, всю статью можно перечеркнуть буквально следующим.

Читать дальше →
Total votes 130: ↑65 and ↓65 0
Comments 145

$ ls -l /home/avitotech/new_year

Reading time 3 min
Views 12K

Привет. Этот пост — поздравление с наступающим Новым годом.


Тут не будет попыток пошутить, подвести итоги-2018 или пожелать всем сразу всего нужного, а будет открытка-загадка про технологии. Вот она.



Мы спрятали здесь 48 самых разных технологий, языков программирования, инструментов, фреймворков, которые применяются в разработке и поддержке веб-сервисов. Предлагаем вам их отгадать. Для этого под катом есть эта же картинка в большом разрешении и подсказки.
Сувениры тоже есть.


Enjoy!

Читать дальше →
Total votes 43: ↑41 and ↓2 +39
Comments 67

Почему «Юному технику» не удастся построить лазер

Reading time 8 min
Views 86K
Приветствую всех снова. В комментариях к моей первой статье про cамодельную лазерную установку снова вспомнили статью из журнала «Юный техник», которая называлась «Строим лазер». В ней предложено поэтапное описание сборки импульсного лазера, работающего на жидком растворе органического красителя. Текст статьи доступен через 2 минуты гугления.

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

image
Читать дальше →
Total votes 121: ↑119 and ↓2 +117
Comments 179

Делаем адаптивный HTML, добавляя одну строку в CSS

Reading time 4 min
Views 190K
image

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

И самое классное: адаптивность будет добавлена с помощью одной строки CSS.
Это означает, что нам не нужно загромождать HTML лишними классами (Col-sm-4, col-md-8) или создавать медиа-запросы для каждого размера экрана.

Рассмотрим все подробнее.
Читать дальше →
Total votes 67: ↑66 and ↓1 +65
Comments 103

Disс Error

Reading time 10 min
Views 25K

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

Данный «рассказ» был рожден мной в реалтайме(отрывок за отрывком) в /b/ кто знает тот поймет :)

Была спокойная летняя ночь, родители были на даче, а я в одиночестве перепроходил любимые игры. Есть что-то романтичное в таких посиделках в полном одиночестве, и нет, позвать друзей не вариант — пропадет та самая атмосфера.

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

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

Зайдя в подъезд, я увидел, точнее напротив, что лампочка, за время моего путешествия перегорела, пришлось достать свой старенький Optimus One на таком же старом Android 2.3. Приближаясь к своей двери, я запнулся о какую-то, старую и пыльную, коробку с надписью «Синклер совместимый компьютер 512к». Стало любопытно, что это за такой «Синклер» и что там, с чем совместимо, оглядевшись по сторонам и убедившись что никого рядом нет, я поднял довольно увесистую коробку и занес ее домой.
Total votes 39: ↑37 and ↓2 +35
Comments 120

Как понять, что происходит на сервере

Reading time 9 min
Views 82K


Александр Крижановский ( krizhanovsky, NatSys Lab.)


По Сети уже давно бегает эта картинка, по крайней мере, я ее часто видел на Фейсбуке, и появилась идея рассказать про нее:


Читать дальше →
Total votes 98: ↑96 and ↓2 +94
Comments 20

Мы добрались до побочных эффектов лазерной коррекции зрения — и ещё до диагностики

Reading time 14 min
Views 249K


Начнём с диагностики, потом перейдём к жести, а потом я покажу много фотографий оборудования.

В 90-х роговицу исследовали ультразвуковым «карандашиком». Вместо полноценной карты роговицы было 10-15 замеров на глаз, по которым хирург составлял мысленное представление о том, что там у пациента. В 92-м году распространились топографы, основанные на системе Пласидо. Идея в том, что если сделать проекцию световых колец на роговицу, то на идеальной они будут круглыми, а любое искажение даст искажение от окружности. То есть получалась такая мишень в глазу в идеальном случае, и яйцо при астигматизме. Так и смотрели — светили лучом через диск Пласидо. Сейчас такие диски у многих хирургов в кармане на всякий случай.

Метод был, конечно, очень примерный. Потом пришла автоматика: эти же диски стали в 32-36 колец вместо 8 или 10, и аппарат их фотографировал, а затем распознавал и рассчитывал искажения, и выдавал «карту глубин» глаза.
Читать дальше →
Total votes 77: ↑77 and ↓0 +77
Comments 144

Information

Rating
Does not participate
Location
Рязань, Рязанская обл., Россия
Date of birth
Registered
Activity