Pull to refresh
8K+
188
Пацев Антон@chemtech

DevOps-инженер

318
Subscribers
Send message

Это — всё что вам надо знать о белых списках: как устроены и 6 способов обхода

Level of difficultyMedium
Reading time10 min
Reach and readers129K

Думаю, вы уже в курсе, что происходит в РФ с белыми списками: работают белые списки, ТСПУ в режиме drop-all пропускает только одобренные IP + SNI, рунет медленно, но верно становится интранетом

Мы просканировали 46 млн российских IP-адресов, нашли 63 тысячи выживших, разобрали работу ТСПУ. И главное - актуальные методы пробива (от Serverless-функций и покупки VPS с белым IP до туннелей через WebRTC).

Читать далее

Интеграция TOTP в OСSERV (FreeRADIUS + FreeIPA)

Level of difficultyMedium
Reading time3 min
Reach and readers10K

В данном руководстве приведена инструкция по внедрению двухфакторной аутентификации (2FA/TOTP) для VPN-доступа на базе OCSERV (OpenConnect Server) в связке с FreeRADIUS и FreeIPA.

Читать далее

FinOps в S3: Как эффективно управлять стоимостью хранения

Level of difficultyMedium
Reading time8 min
Reach and readers6K

Каждый год объем данных в мире растет на 24.4%. По прогнозам IDC, в 2025 году человечество должно было сгенерировать 175 зеттабайт данных. Исследование показывает, что значительный рост хранения данных за последние годы приходится на публичные облака.

В облаках стандартом для хранения этих массивов стал S3 (Simple Storage Service). Он подкупает своей простотой и дешевизной на старте. Но в этом и кроется ловушка: как только объем данных переваливает за терабайты, а количество запросов — за миллионы, счета начинают «кусаться».

Разберем на примере Яндекс Облака, какие рычаги управления стоимостью (FinOps) у нас есть и как навести порядок в бакетах, пока они не съели ваш бюджет. 

Читать далее

Я устал каждый раз гуглить одно и то же в nginx — и сделал инструмент, который объясняет конфиги на русском

Level of difficultyMedium
Reading time4 min
Reach and readers15K

Я устал каждый раз гуглить одно и то же в nginx — и сделал инструмент, который объясняет конфиги на русском

Очередной генератор nginx-конфигов? Нет. Ну, почти нет.

Читать далее

Я много лет пытался повысить продуктивность и качество жизни — эксперименты над собой (Часть 2)

Level of difficultyEasy
Reading time11 min
Reach and readers15K

Я довольно долго искал «систему», которая резко поднимет продуктивность и самочувствие. Как и многие, прошёл через стандартный набор: кето, интервальное голодание, попытки «идеального» питания, эксперименты с режимом дня и добавками. В какие-то моменты действительно становилось лучше - больше энергии, выше концентрация, ощущение контроля. Но почти всегда это было временно. Через пару недель появлялась усталость, раздражительность или просто откат к прежнему состоянию.

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

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

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

Читать продолжение истории

Особенности архитектуры сетевой системы защиты информации с применением Keycloak

Level of difficultyMedium
Reading time7 min
Reach and readers7.2K

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

Одним из перспективных подходов к решению указанных задач является внедрение систем класса Identity and Access Management (IAM), обеспечивающих централизованную аутентификацию, авторизацию и управление учётными данными. Среди свободно распространяемых решений данного класса важное место занимает Keycloak - платформа с открытым исходным кодом, предназначенная для организации единого входа, федерации пользователей и управления доступом на основе стандартных протоколов безопасности.

Актуальность применения Keycloak обусловлена тем, что данная система позволяет унифицировать процессы аутентификации в гетерогенной ИТ-среде, обеспечить поддержку многофакторной аутентификации, интеграцию с LDAP/Active Directory, а также централизованное управление ролями и политиками доступа. При этом архитектурные особенности внедрения Keycloak требуют отдельного анализа, поскольку речь идёт о критически важном компоненте сетевой системы защиты информации.

 

Место Keycloak в архитектуре сетевой защиты информации

Читать далее

Почему ваш AI-агент тратит 80% токенов на файлы, которые уже читал вчера — и как это починить тремя markdown-файлами

Level of difficultyEasy
Reading time6 min
Reach and readers14K

В прошлой статье я разобрал почему Claude Code ломает проекты (context drift, отсутствие CLAUDE.md, нет хуков на тесты) и как выстроить защиту от регрессий. Статья попала в топ-5 Хабра за сутки — видимо, проблема задела нерв.

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

Я работаю с 20+ проектами на нескольких VPS-серверах. После того как я замерил, куда реально уходит контекст — картина оказалась неприятной.

Читать далее

Как я перестал бояться Claude Code и научил его не ломать мои проекты

Level of difficultyMedium
Reading time8 min
Reach and readers21K

Знакомая ситуация: просишь Claude Code добавить авторизацию — он переписывает половину проекта. Просишь поправить одну функцию — получаешь удалённые тесты и новую зависимость, о которой не просил. За час строишь рабочий прототип, а потом три часа разгребаешь то, что Claude наворотил при «улучшении».

Я Python-бэкенд разработчик, веду свою компанию CREATMAN и кожу в основном один. У меня нет роскоши держать QA-инженера, который будет ловить регрессии после каждого промпта. Мне нужно, чтобы AI-агент помогал быстрее шипить, а не создавал новые проблемы.

После нескольких недель исследования — чтения доков, обсуждений на Reddit, разбора чужих сетапов — я собрал конфигурацию, которая реально работает. Собрал всё в открытый репозиторий с готовыми файлами: claude-code-antiregression-setup. В этой статье — что именно и почему.

Читать далее

OpenTelemetry и Sentry: как мы выстроили сбор телеметрии в микросервисной системе

Reading time7 min
Reach and readers6K

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

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

Чтобы избежать этого, мы выстраиваем связку OpenTelemetry + Sentry. OpenTelemetry позволяет стандартизировать сбор телеметрии, а Sentry — централизовать ее анализ. В результате появляется целостная картина работы системы.

Введение в OpenTelemetry: traces, metrics, logs

OpenTelemetry объединяет три типа телеметрии — логи, метрики и трейсы — и задает для них спецификации.

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

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

Читать далее

Managed K8S в Yandex Cloud — экономим без потери производительности

Level of difficultyEasy
Reading time3 min
Reach and readers8.3K

Как и большинство компаний мы активно используем kubernetes, а поскольку находимся в Облаке, то для удобства перешли на management k8s. После полного переезда именно куб стал основной статьей расхода в биллинге Yandex Cloud. Поэтому стало актуально найти способ снизить стоимость без потери в производительности.

Читать далее

Настройка географических ограничений на веб-ресурсе с учетом новых регионов Российской Федерации

Level of difficultyMedium
Reading time4 min
Reach and readers39K

Актуальной задачей для веб-ресурса в нынешних реалиях является установка ограничений доступа по регионам, либо географическая привязка выдаваемой информации с учетом региона. Одним из решений, которые можно использовать для этих целей, является база данных и американский сервис MaxMind GeoIP2. Сервис привлекает огромным объемом и детальностью информации, но имеет свои особенности. Так, Крым, ДНР, ЛНР, Запорожская и Херсонская области а также Севастополь указаны в базе как регионы Украины. Соответственно, если, скажем, разрешить доступ к ресурсу только с территории РФ, то эти регионы останутся не у дел.

Так я, первоначально настроив свой ресурс только на доступ с территории РФ, обнаружил, что мои друзья из Крыма и ДНР не могут получить доступ (получают специальную версию страницы, с ограниченным объемом информации). Проблема эта легко решается, и в этой статье я покажу, как именно можно простым спососбом ее решить, а также покажу действующий пример конфигурации сервера.

Читать далее

Колобок-стек: от Nexus ушёл, от Artifactory ушёл — написал свой реестр на Rust

Level of difficultyEasy
Reading time6 min
Reach and readers12K

Нужен был реестр артефактов. Показать студентам цепочку поставки софта: сборка, тесты, push в реестр, деплой. Стандартная задача, казалось бы. "Вошли и вышли, приключение на 20 минут."

Растянулось на несколько месяцев.

В итоге написал свой реестр. Один бинарник. 7 форматов. 12 МБ RAM. Без базы данных.

Покатились →

Закрываем самую частую боль DevSecOps: SSO + обязательный 2FA + RBAC в Wazuh через Authentik (и ещё собираем его логи)

Level of difficultyEasy
Reading time31 min
Reach and readers11K

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

Эта статья — текстовое дополнение к одноимённому видео на YouTube. Если вы предпочитаете смотреть, а не читать — ссылка в моём Telegram-канале. Если предпочитаете читать — вы попали по адресу. Здесь всё то же самое: реальные конфиги, мои скрипты, и ни капли маркетингового булшита.

Читать далее

Как я за 15 лет устал диагностировать серверы руками и сделал инструмент, который делает это за 60 секунд

Reading time5 min
Reach and readers11K

Я работаю с Linux больше 15 лет. Начинал с хостинга, где «сервер тормозит» означало зайти по SSH и запустить top. Потом были выделенные серверы, кластеры, Kubernetes. Задачи менялись, но вопрос оставался один и тот же:

Сервер тормозит. Что не так?

За эти годы у меня накопились инструкции, SSH-скрипты, обёртки над vmstat, iostat, ss, perf. Каждый раз, подключаясь к проблемному серверу, я тратил 20-40 минут на одни и те же действия вроде команды top

Это Tier 1 — базовый уровень. Но когда top показывает что всё вроде нормально, а приложение всё равно тормозит, начинается настоящая диагностика.

Читать далее

PocketCoder-A1: Как я заставил свой Claude работать в три смены

Level of difficultyEasy
Reading time8 min
Reach and readers9.2K

ИИ не заменяет людей — люди просто больше работают. Так давайте хотя бы ночью пусть работает ИИ.

Как мы сделали Авто‑Кодера, выжимая максимум из нашей подписки на LLM!

Читать далее

Даёшь самоуправление! Управляем конфигурацией HashiСorp Vault изнутри, опираясь на Git и кворум подписей

Level of difficultyMedium
Reading time20 min
Reach and readers8.3K

При управлении доступом в HashiCorp Vault есть выбор: делать это либо супербезопасно, но неудобно, либо удобно, но с риском компрометации секретов. В первом случае вы отзываете root-токен после инициализации хранилища и для каждого изменения конфигурации собираете кворум владельцев Shamir-ключей. Во втором — применяете конфигурацию через CI/CD или из-под администратора, и тогда где-то обязательно существует «кольцо всевластия»: токен или пароль, компрометация которого даёт полный контроль над инфраструктурой секретов.

Мы решили объединить безопасность и удобство в одном решении. Взяли идею кворума и привычный инженерному сообществу способ аудита изменений — коммиты в Git. Что получилось — читайте под катом. Cпойлер: вы сможете использовать это решение бесплатно.

Читать далее

Тонкости работы с процессором преобразования в OpenTelemetry

Level of difficultyMedium
Reading time23 min
Reach and readers6K

Transform processor в OpenTelemetry часто воспринимается как «универсальный костыль» на случай, когда стандартных процессоров уже не хватает. В итоге в конфигурации появляются OTTL-инструкции, которые вроде бы корректны, но ведут себя непредсказуемо: условия не срабатывают, поля не меняются, данные теряются без явных ошибок.

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

Прокачать observability

VLESS на роутере с OpenWRT

Level of difficultyEasy
Reading time4 min
Reach and readers33K

Небольшая инструкция по установке VPN (протокол VLESS), на роутер с операционной системой OpenWRT с использованием пакета Passwall

Читать далее

GitLab CI кажется сложным, если не знать этих трюков: как убрать дублирование и ускорить пайплайны в 3 раза

Level of difficultyEasy
Reading time16 min
Reach and readers10K

У вас в GitLab несколько проектов с одинаковым CI? Или просто надоела копипаста в пайплайнах? Каждое изменение нужно отразить в 10 местах? Рассказываем, как сократить код на 56 %, убрать дублирование и сделать один CI для всей группы проектов. Шаблоны, матрицы и практика.

Избавиться от копипасты
1
23 ...

Information

Rating
7,203-rd
Location
Омск, Омская обл., Россия
Works in
Date of birth
Registered
Activity

Specialization

DevOps-инженер
Старший