User
Защита Debian путём внедрения обязательного контроля доступа через SELinux для максимальной безопасности системы

В эпоху, когда киберугрозы быстро эволюционируют, обеспечение безопасности систем Linux выходит далеко за рамки базовых разрешений пользователей. Традиционные механизмы безопасности вроде дискреционного управления доступом (DAC) обеспечивают ограниченную защиту от эскалации привилегий, скомпрометированных приложений и внутренних угроз.
Для устранения этих ограничений Security‑Enhanced Linux (SELinux) предлагает мощную и детализированную систему мандатного управления доступом (MAC) — и теперь не только для дистрибутивов на базе Red Hat.
В этой статье расскажу, как интегрировать SELinux в Debian. Разберу его архитектуру, процедуры настройки, управление политиками и методы устранения неполадок. Неважно, управляете ли вы критически важным сервером или хотите усилить защиту рабочей станции, — это руководство покажет, как SELinux может поднять безопасность системы до корпоративных стандартов.
Гайд на виртуальный частный сервер (VPS) с нуля

Подробная инструкция, как арендовать и настроить свой выделенный сервер - для защиты своего сетевого трафика от анализа третьими лицами (прослушки) и прочих нежелательных сетевых активностей.
Коротко, о чём гайд:
- Сервер Linux Debian 11
- Виртуальная частная сеть Wireguard
- Мониторинг Grafana
- Спасательный круг: backups & snapshots
- Базовая защита от взлома перебором fali2ban
- Фильтр нежелательного контента, приоритезация трафика QoS
Что же такое TPU

В последнее время я много работал с TPU и мне было интересно наблюдать такие сильные различия в их философии дизайна по сравнению с GPU.
Главная сильная сторона TPU — это их масштабируемость. Она достигается благодаря и аппаратной (энергоэффективности и модульности), и программной стороне (компилятору XLA).
Общая информация
Если вкратце, то TPU — это ASIC компании Google, делающий упор на два фактора: огромную производительность перемножения матриц + энергоэффективность.
Их история началась в Google в 2006 году, когда компания впервые начала размышлять о том, что же ей стоит реализовывать: GPU, FPGA или специализированные ASIC. В те времена было лишь несколько областей применения, в которых требовалось специализированное оборудование, поэтому было решено, что потребности компании можно удовлетворить при помощи незадействованных вычислительных ресурсов (compute) CPU её крупных датацентров. Но в 2013 году ситуация изменилась: функция голосового поиска Google начала использовать нейросети, и по расчётам для её реализации потребовалось бы гораздо больше compute.
Перенесёмся в настоящее: сегодня TPU лежат в основе большинства ИИ-сервисов Google. Разумеется, сюда включены обучение и инференс Gemini и Veo, а также развёртывание моделей рекомендаций (DLRM).
Давайте начнём разбирать внутренности TPU с самого нижнего уровня.
Как работает DNS в Linux. Часть 1: от getaddrinfo до resolv.conf

Привет, Хабр! Меня зовут Анатолий Кохан, я — DevOps-инженер в К2Тех.
Когда мы вводим в браузере имя сервера или доменное имя сайта, выполняем ping или запускаем любое удаленное приложение, операционная система должна преобразовать указанные имена в IP-адреса. Этот процесс называется разрешением доменного имени. На первый взгляд он может показаться весьма прозрачным, однако за ним скрывается многослойный механизм.
Данная статья — начало серии, посвященной низкоуровневой архитектуре разрешения имен. Поговорим о том, как устроен этот процесс в Linux на уровне ядра, различных библиотек C и системных вызовов.
Debian 12, QEMU, и сетевые мосты (bridge) в 2025

В Интернете много инструкций на эту тему, но среди них много не актуальных или недостаточно подробных. По этому я напишу свой вариант. Возможно кому-то он будет полезен.
Стоит знать перед началом
- Чем коммутатор отличается от маршрутизатора
- Первые 3 уровня модели OSI
- Хотя бы примерно понимать как работает коммутатор
Без этих знаний возможно у Вас не получится понять и правильно использовать информацию из этой статьи.
Сетевые мосты нужны чтобы виртуальная машина могла взаимодействовать с локальными сетями а не просто иметь доступ в Интернет. Если на Вашей виртуальной машине нужен только Интернет, используйте в QEMU режим сети "user".
Новый лучший способ форматирования строк в Python

Привет, Хабр! Приближается релиз Python 3.14, который несет нам множество нововведений. Среди них — новый способ форматирования строк. Давайте посмотрим, что из себя представляют t-строки, на что они годятся и как устроены внутри. Фича действительно мощная, будет интересно.
Как работает безопасность, когда никто никому не доверяет — Zero Trust на пальцах

Вы потратили кучу времени на защиту снаружи: двухфакторка, фаерволы, бюрократическая заморочка для каждого. Это всё правильно, но один фишинговый email, одна слабая учётка — и левый юзер уже внутри вашей сети. А дальше: данные HR-отдела, финансовая информация, API — доступ ко всему, потому что система считает его «своим».
Часто слышали от коллег про Zero Trust, но руки так и не доходили вникнуть? Zero Trust — это схема «меньше доверяй, больше проверяй», прямо как в отношениях. Сеть разбита как номера в отеле, и в каждый можно попасть только со своим пропуском. Система запоминает ваши привычки и, если вы вдруг решили «прогуляться» не в свой номер, то вас поймают.
Через 10 минут будете знать, как внедрить Zero Trust в продакшене: от базовых принципов до практических приёмов — Canary-токенов, UEBA-анализа и автоматизации реакции на инциденты. Детали под катом.
Строим VXLAN/EVPN на несколько ЦОД

Что делать и куда бежать, если тебе нужно построить сеть на несколько ЦОД, с L2 связностью между площадками, отказоустойчивостью и масштабированием. В этой статье предлагаю рассмотреть некоторые из возможных подходов к организации больших сетей с использованием VXLAN/EVPN.
Системные вызовы Linux, которые должен знать каждый разработчик
Многие разработчики работают в Linux-среде, но не всегда глубоко понимают, как взаимодействие с ОС происходит на низком уровне. На собеседованиях всё чаще спрашивают про системные вызовы Linux. В этой статье мы рассмотрим, какие вызовы встречаются чаще всего и как они работают.
Разбираемся как работать с wine на Unix-based системах

Давно хотели научиться работать с Wine в Linux или Mac Для запуска Windows приложений? Мой обзор-гайд для вас. Я в подробностях расскажу о том как запускать прилоежния, дебажить их, решать проблемы и покажу различные wine-loaders для работы.
Шардированный кластер ClickHouse

Хочу рассказать, как спроектированы распределённые вычисления в ClickHouse. Вы узнаете, на что влияет схема кластера (и на что не влияет). Расскажу, как можно на ровном месте создать себе проблему при помощи всего одной таблицы Kafka и нескольких матвьюх. Поделюсь опытом про дебаг и оптимизацию SELECT-запросов к Distributed таблицам: поизучаем планы выполнения и поэксперементируем с настройками в блоке SETTINGS.
Пишем стек TCP/IP с нуля: поток данных TCP, Socket API, повторная передача

Первая часть: Ethernet, ARP, IPv4 и ICMPv4
Вторая часть: основы TCP и Handshake
В прошлом посте мы узнали о заголовках TCP и о том, как устанавливается соединение между двумя сторонами.
В этом посте мы изучим передачу данных по TCP и способ управления ею.
Также мы создадим интерфейс сетевого стека, который приложения смогут использовать для передачи данных по сети. Потом этот Socket API мы применим, чтобы наш пример приложения смог отправить простой HTTP-запрос веб-сайту.
TOP'ай сюда
top
Все мы знаем top — самую простую и самую распространённую утилиту из этого списка. Показывает примерно то же, что утилита vmstat, плюс рейтинг процессов по потреблению памяти или процессора. Совсем ничего не знает про загрузку сети или дисков. Позволяет минимальный набор операций с процессом: renice, kill (в смысле отправки сигнала, убийство — частный случай). По имени top суффикс "-top" получили и все остальные подобные утилиты в этом обзоре.atop

Atop имеет два режима работы — сбор статистики и наблюдение за системой в реальном времени. В режиме сбора статистики atop запускается как демон и раз в N времени (обычно 10 мин) скидывает состояние в двоичный журнал. Потом по этому журналу atop'ом же (ключ -r и имя лог-файла) можно бегать вперёд-назад кнопками T и t, наблюдая показания atop'а с усреднением за 10 минут в любой интересный момент времени.
В отличие от top отлично знает про существование блочных устройств и сетевых интерфейса, способен показывать их загрузку в процентах (на 10G, правда, процентов не получается, но хотя бы показывается количество мегабит).
Незаменимое средство для поиска источников лагов на сервере, так как сохраняет не только статистику загрузки системы, но и показатели каждого процесса — то есть «долистав» до нужного момента времени можно увидеть, кто этот счастливый момент с LA > 30 создал. И что именно было причиной — IO программ, своп (нехватка памяти), процесор или что-то ещё. Помимо большего количества информации ещё способен двумя цветами подсказывать, какие параметры выходят за разумные пределы.
Индексы в PostgreSQL — 4
Мы уже рассмотрели механизм индексирования PostgreSQL и интерфейс методов доступа, а также один из методов доступа — хеш-индекс. Сейчас поговорим о самом традиционном и используемом индексе — B-дереве. Глава получилась большой, запасайтесь терпением.
Btree
Устройство
Индекс btree, он же B-дерево, пригоден для данных, которые можно отсортировать. Иными словами, для типа данных должны быть определены операторы «больше», «больше или равно», «меньше», «меньше или равно» и «равно». Заметьте, что одни и те же данные иногда можно сортировать разными способами, что возвращает нас к концепции семейства операторов.
B-Tree — сбалансированный куст поиска
В реляционных СУБД есть дефолтный тип индекса — B‑Tree: Tree в названии однозначно указывает на дерево, ну а В это, наверно, Binary? Или Balanced? Или Balanced Binary? Почему‑то долгое время я полагал, что это Balanced Binary, и эта версия даже «работала». На деле всё куда интереснее, предлагаю проследовать под кат, чтобы посмотреть на этот на самом деле скорее низкорослый куст и сравнить его с Red‑Black Tree на Java.
Всё, что необходимо (и достаточно) знать о создании пользовательских интерфейсов в расширениях VS Code
VS Code сам по себе не нуждается в представлении, однако многие программисты, привыкшие в нём разрабатывать, упускают одну очень полезную вещь. Благодаря встроенным возможностям по разработке расширений можно легко автоматизировать многие рутинные задачи — например, те, что выполняются в командной строке.
В этой статье, второй в серии материалов о нестандартных возможностях VS Code, разберём инструменты для создания интерактивных расширений, которые я применяю в работе над решениями productivity suite платформы МойОфис. Под катом мы рассмотрим веб-панели и их разновидность – веб-представления, а также другие стандартные средства VS Code API, такие, например, как элементы строки состояния (кнопки и сообщения).
Отладка приложения, которое не хочет, чтобы его отлаживали
- Блокирует прикрепление к нему отладчиков.
- Выполняет преждевременный выход при попытках инъецирования кода.
- Приводит к вылету телефона целиком, если запустить её со включённым джейлбрейком (!).
По последнему пункту: кто вообще так делает???
Всё, что мы делаем (например, выполняем моддинг TikTok, чтобы он показывал только видео с котиками, или устраняем торможения в чужих приложениях), требует возможности исследования работы приложения.
Но в приложениях для iOS очень часто используются дополнительные защиты от любопытных глаз, например, обнаружение джейлбрейка или обфускация кода.
Похоже, это приложение стало на удивление интересной комбинацией всего перечисленного.
Намного более сложной, чем можно было бы ожидать от обычного старого виджет-приложения.
Трансформация платформы данных: от пары кубов до хранилища > 30 Тб и 1000 ETL-процессов

Привет, Хабр! Меня зовут Наталья Горлова, я архитектор данных. Несколько лет назад мы в CDEK поняли, что продукты, на которых работало хранилище, перестали нас устраивать: не устраивала гибкость разработки и скорость поставки данных. C тех пор произошло множество изменений, которыми хочется поделиться с сообществом.
Расскажу, как платформа данных развивалась, и к чему мы пришли на конец 2024 года. Эта статья — ретроспектива моей почти шестилетней работы и текущих реалий нашей платформы данных.
Что делать, если ты первый AppSec-инженер в компании? План работ на стартовые полгода

Сейчас направление Application Security (AppSec) переживает бурный рост. Всё больше компаний выделяют AppSec в отдельное подразделение или начинают строить его с нуля. В крупных корпорациях появляются AppSec бизнес-партнеры, в стартапах лиды разработки всё чаще берут на себя задачи по обеспечению безопасности продуктов. Но с чего начать, если вы — первый AppSec-инженер или руководитель такого направления? Какие задачи поставить в первые полгода, чтобы заложить прочный фундамент?
Меня зовут Алексей Волков, я эксперт в области продуктовой безопасности. Здесь я поделюсь опытом построения AppSec-процессов с нуля в первые полгода: как разобраться в ИТ-ландшафте, настроить процессы и расставить приоритеты, чтобы сразу дать бизнесу ощутимую пользу. Чеклист и советы основаны на моём опыте — без абстракций и нереалистичных ожиданий. При этом важно оговориться, что ваша работа может затянуться — в каждой компании свой ландшафт и у всех проблем бывают разные сроки решения.
Information
- Rating
- 2,790-th
- Registered
- Activity