Обновить
303.84

Linux *

Пишем под *nix

Сначала показывать
Порог рейтинга
Уровень сложности

Kernel-hack-drill и новый эксплойт для CVE-2024-50264 в ядре Linux

Уровень сложностиСложный
Время на прочтение30 мин
Охват и читатели13K

Некоторые уязвимости, связанные с повреждением памяти, невероятно сложны для эксплуатации. Они могут вызывать состояния гонки, приводить к сбоям системы и накладывать разные ограничения, которые усложняют жизнь исследователя. Работа с такими «хрупкими» багами требует значительно больше времени и усилий. CVE-2024-50264 в ядре Linux — как раз одна из таких сложных уязвимостей, которая получила премию Pwnie Award 2025 в категории «Лучшее повышение привилегий» (Best Privilege Escalation). В этой статье я представлю свой проект kernel-hack-drill и покажу, как он помог мне разработать прототип эксплойта для уязвимости CVE-2024-50264.

Поехали!

Архитектура NGFW: опыт использования VPP и DPDK, частые ошибки разработчиков

Уровень сложностиСложный
Время на прочтение29 мин
Охват и читатели60K

Всем привет! Меня зовут Константин. Моя карьера в сетевой разработке началась со времен Symbian OS, когда я участвовал в создании сетевого стека этой платформы. С 2010 года я работаю в «Лаборатории Касперского», разрабатывая мобильные и сетевые продукты, а последний год плотно погружен в проект NGFW. В мои задачи входит как проработка архитектурных решений, так и написание кода ключевых модулей. 

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

- об архитектуре передающего слоя (data plane) нашего продукта, основанной на связке DPDK/VPP;
- о пути сетевого пакета в рамках data plane NGFW;
- о частых ошибках при разработке решений на базе VPP;
- о разработке и сценариях встраивания в высокоскоростной конвейер обработки пакетов VPP некоторых из наших движков безопасности;
- об истории создания наших собственных движков безопасности DPI и IDPS (хочу выразить благодарность за неоценимую помощь в подготовке материала для данного раздела коллегам из команды IDPS и лично Евгению Прусову);
- об интеграции data plane с протоколами динамической маршрутизации.

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

Читать далее

Линус Торвальдс жёстко отверг поддержку big-endian RISC-V

Уровень сложностиПростой
Время на прочтение3 мин
Охват и читатели24K

Линус Торвальдс в своём классическом стиле категорически высказался против предлагаемой поддержки режима big-endian для архитектуры RISC-V в ядре Linux. Всё началось с вопроса в рассылке о том, смогут ли патчи для RISC-V BE попасть в текущий цикл разработки ядра.

Читать далее

Формирование RPM пакета для OC Linux с использованием GitLab CI/CD

Уровень сложностиСредний
Время на прочтение13 мин
Охват и читатели5.5K

Вы много своих приложений упаковывали, как RPM пакет? Мне, до недавних пор, не доводилось. Тенденция импортозамещения и перехода на OC Linux потребовала освоить и это умение. Ничего сложного, но, как и везде, есть нюансы, детали и особенности.

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

Статья - достаточно подробная инструкция, как решить эту задачу и автоматизировать ее с помощью GitLab CI/CD.

Читать далее

Ускоряем CLI-утилиты с помощью io_uring

Уровень сложностиПростой
Время на прочтение10 мин
Охват и читатели7K

Привет, Хабр! Уже давненько вокруг ходит тема про io_uring — новую высокопроизводительную модель асинхронного I/O в Linux. В теории это обещает минимальные системные вызовы и очереди отправки/завершения, но как это в деле работает с привычными утилитами? Я решил разобраться на примере типичной задачи — копирования файлов (и немного упомянем хеширование) – переписав её под liburing и сравнив с традиционной синхронной версией.

Узнать все детали эксперимента

GitOps в Linux: бесперебойное управление инфраструктурой на основе Git

Время на прочтение4 мин
Охват и читатели7.4K

Представь мир, где каждый сервер, приложение и сетевая конфигурация тщательно оркестрируются через Git, где обновления, аудиты и восстановления происходят с помощью одного коммита. Эти и другие возможности открывает GitOps. Особенно мощно он проявляет себя в сочетании с универсальностью Linux-систем. Как же преобразить управление инфраструктурой Linux? И каким образом с помощью Git добиться ясности, контроля и уверенности в каждом изменении?

Читать далее

Рабочая машинка на ARM, Linux: год спустя

Время на прочтение3 мин
Охват и читатели15K

Вот и прошел примерно год с момента начала эксперимента "а что, так можно было?"
Год назад привычный ноутбук был отложен в сторону, а вместо него поднята рабочая машинка на базе процессора с архитектурой arm, точнее aarch64.

И там и там — примерно одинаковый набор ПО, чтобы можно было сравнивать: linux, Firefox, Office, GIMP, vim для работы, видеоплееры фильмы смотреть, ну и всякое разное, никакой особо экзотики, локальных LLM и прочего — для этого есть сервера.

Среда — Wayfire (Wayland) и WindowMaker (Xorg), и так и так.

Железо: одноплатник Allwinner h618 со встроенным видео Mali‑G31, 4 ядра, 1.5Ггц, 4 Гб RAM, 100Мб Ethernet, USB3, HDMI.
Изначально — ТВ‑приставка на Андроиде (Z8 или вот Vontar — обе есть)

Ожидания: это примерно как запуск линукса на кофеварке — добавить ачивку «получилось», реально работать будет невозможно, но интересно попробовать.

Реальность:

far2l: что нового за 2025й?

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели23K

Привет, друзья! Примерно раз в год я пишу большой пост о развитии проекта far2l — порта Far Manager под Linux, MacOS и BSD. И, должен сказать, 2025-й выдался невероятно продуктивным! Накопилось столько всего вкусного, что пора поделиться с вами очередным выпуском нашего дайджеста. Под катом — обзор двух больших и двух небольших, но очень ценных нововведений, которых мы все очень долго ждали.

Читать далее

В KDE анонсировали «банановый» линукс. Как сделать дистрибутив — «вредные советы» от KDE

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели11K

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

В духе веяний времени, KDE собирается выпустить неизменяемый (immutable) дистрибутив, основанный на archlinux. Что, на мой взгляд, в очередной раз подтверждает, что KDE пережила многие другие графические оболочки не просто так. Вначале я, конечно, отнёсся к идее скептически и удивился, что её одобрили - потому что, с виду, она чрезвычайно наивная.

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

Читать далее

Перезапускаемые последовательности в Linux: выход в свет

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели9.8K

Фича под названием перезапускаемые последовательности была добавлена в версию ядра 4.18 в 2018 году. Она позволяет повысить производительность в определённых категориях многопоточных приложений. Притом, что кому-то перезапускаемые последовательности действительно пригодились, такой код считается достаточно специализированным — как правило, разработчики приложений этим инструментом не пользуются. Но со временем перезапускаемые последовательности выросли и, по-видимому, тренд к их росту сохраняется, так как эта фича привязана к новым возможностям, предоставляемым в ядре. Но по мере того, как перезапускаемые последовательности стало всё сложнее считать нишевой фичей, с ними стали возникать заметные проблемы. Если исправить одну из них, это может повлечь заметные изменения ABI, которые будут видимы в пользовательском пространстве.

Читать далее

SMB over QUIC на всех платформах: «VPN-less» файловые шары в 2025 (Windows Server 2025 + Samba 4.23)

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели13K

Годами доступ к файловым шарам извне означал VPN или костыли вроде RDP-копипаста. Но в 2025-м всё изменилось. SMB over QUIC стал штатной фичей в Windows Server 2025, а с выходом Samba 4.23 технология стала по-настоящему кросс-платформенной.

Внутри — подробный туториал по настройке безопасного доступа к файлам через порт 443/UDP. Без VPN, с TLS 1.3, контролем доступа по сертификатам и готовыми командами для PowerShell и smb.conf. Разбираем, как это работает, где сэкономит нервы и когда старый-добрый TCP/445 всё ещё нужен.

Читать далее

Чистовики патриарха. О трёх последних книгах Олега Цилюрика

Время на прочтение6 мин
Охват и читатели10K

Привет, Хабр! На связи Олег Сивченко @OlegSivchenko редактор направления «Компьютерная литература».

Наша первая статья в корпоративном блоге вызвала ваш огромный интерес (+122) и оживлённое обсуждение с участием 30 пользователей (считая нас). На наш взгляд, вас заинтересовал вопрос авторских черновиков и доработки их до полноценных рукописей. Развивая тему, связанную со свободным ПО, хочу рассказать вам сразу о трёх наших знаковых книгах, посвящённых операционной системе Linux. Эти книги написал легендарный харьковский программист Олег Иванович Цилюрик (1951 — 2024), к сожалению, не дождавшийся выхода в свет 2-го издания своей книги «Linux и Go. Эффективное низкоуровневое программирование» (оглавление).  Opus Magnum, принадлежащий его перу и вышедший у нас в марте 2023 года, называется «Расширения ядра Linux. Драйверы и модули» (оглавление). Кроме того, мы выпустили экзотический и по-своему незаменимый труд Олега Ивановича, который называется «Сети Linux. Модели и приложения» (оглавление), посвящённый настройке, эксплуатации и внутренней организации оверлейной сети Yggdrasil (октябрь 2023).  Эта книга очень хорошо вписалась по духу и уровню в разрабатываемую нами нишу кибербезопасности, и, судя по отзывам на маркетплейсах, незаменима в нашу эпоху не столь свободного Интернета. Наконец, Олег Иванович самоотверженно справился с переводом одной книги O’Reilly —«Изучаем eBPF: программирование ядра Linux для улучшения безопасности, сетевых функций и наблюдаемости», вышедшей у нас в июле 2024 года. Давайте расскажу о двух из этих книг немного подробнее.

Читать далее

Конец эпохи Windows 10: почему связка Avalonia UI и Linux становится идеальным выбором для .NET-разработчиков

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели18K

Осенью 2025 года заканчивается официальная поддержка Windows 10. Для миллионов пользователей и компаний окончание поддержки ставит вопрос о выборе дальнейшей стратегии. Наиболее очевидный путь — переход на Windows 11, однако его могут ограничивать более строгие аппаратные требования. Конечно, найдутся пользователи и организации, которые предпочтут продолжить эксплуатацию Windows 10 и после окончания официальной поддержки. У такого подхода есть свои плюсы, в первую очередь — отсутствие немедленных затрат на обновление железа или переобучение персонала. Однако минусы этого решения крайне серьезны: растущие уязвимости из-за отсутствия обновлений безопасности, потенциальная несовместимость с новым программным обеспечением и риски несоблюдения требований регуляторов, особенно для бизнеса. Таким образом, каждая стратегия требует тщательной оценки рисков и затрат.

На мой взгляд, стратегически верным шагом в данной ситуации  является миграция на Linux. Но что делать армии программистов, годами создававших приложения под экосистему Microsoft? Приложения на .NET Framework, WPF и WinForms — это кровь тысяч корпоративных и бизнес-систем. Полное переписывание их на другие технологии — это колоссальные затраты времени и денег. Однако существует элегантный и экономически выгодный путь, который не только решает проблему совместимости с Linux, но и открывает новые горизонты для разработки. Этот путь — кроссплатформенный фреймворк Avalonia UI и современная платформа .NET.

Плавный переход вместо болезненного переучивания

Читать далее

Ближайшие события

Облачные сервисы на Tcl/Tk

Уровень сложностиСредний
Время на прочтение11 мин
Охват и читатели5.7K

С момента написания на tcl/tk удостоверяющего центра CAFL63 и утилиты cryptoarmpkcs для работы с электронной подписью меня не покидала мысль, что неплохо бы оформить их как облачные сервисы. Я постоянно смотрел в сторону проекта CloudTk.

Читать далее

Автоматизация установки Ubuntu Server: прощай, PXE

Время на прочтение8 мин
Охват и читатели7.8K

Автоматическая установка Ubuntu Server без PXE? Возможно! В статье о том, как можно упростить развертывание серверов с помощью самодостаточного ISO-образа с autoinstall. Такой подход убирает лишнюю инфраструктуру (DHCP, TFTP, preseed), автоматически определяет оборудование, настраивает сеть и получает конфигурацию через API. В итоге — меньше ручной работы, больше гибкости и быстрая установка серверов даже в масштабах дата-центра.

Читать далее

Используем Rutoken Lite для шифрования

Время на прочтение11 мин
Охват и читатели12K

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

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

И тут я увидел валяющиеся без дела USB‑токены...

Ну, так получилось: один старый, но когда‑то навороченный Aladdin, а другой современный, но простой Rutoken Lite, оставшийся после апгрейда.
Что, если использовать их?

Читать далее

Часть 3. Rsync — подробное руководство для админов

Уровень сложностиПростой
Время на прочтение4 мин
Охват и читатели9.7K

Привет, Хабр! В предыдущих частях руководства мы разобрали rsync вдоль и поперек - от базового синтаксиса до продвинутых "трюков" для бэкапов и деплоя. Казалось бы, вот он, идеальный инструмент на все случаи жизни. Но как часто бывает в IT, универсальных решений не существует.

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

Читать далее

Пишем и запускаем свой исполняемый файл на Linux

Уровень сложностиПростой
Время на прочтение8 мин
Охват и читатели15K

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

Больше ничего интересного не будет :-)

Интересненько...

Замена Google Meet в условиях блокировок: Jitsi Meet и другие альтернативы для бизнеса

Уровень сложностиПростой
Время на прочтение5 мин
Охват и читатели15K

Когда Google Meet внезапно начал «тормозить» в России, мы оказались перед выбором: Zoom, Яндекс Телемост, NextCloud или self-hosted решения. После тестов мы остановились на Jitsi Meet на VPS и проверили его в боевых условиях. Делимся опытом и подводными камнями.

Читать далее

Как установить TrueNAS на Raspberry Pi

Уровень сложностиСредний
Время на прочтение6 мин
Охват и читатели10K

TrueNAS на Raspberry Pi 5? Сейчас это реально: ARM-форк TrueNAS плюс неофициальный UEFI для Pi дают шанс поставить SCALE на Pi 5/CM5. В статье пройдём установку от обновления EEPROM и прошивки rpi5-uefi до первого входа в веб-интерфейс, соберём минимальный пул и проверим базовую работу. Это осознанный эксперимент: встроенный Ethernet недоступен, часть периферии RP1 не работает, а PCIe-коммутаторы видятся не полностью. Разберёмся, где такой вариант уместен, а где практичнее выбрать Raspberry Pi OS с ZFS, OpenMediaVault или классический x86.

Читать далее