Как стать автором
Поиск
Написать публикацию
Обновить
387.78

Linux *

Пишем под *nix

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

Ч. 2 — Дальнобойный Wi-Fi. Реализация интернет шлюза на базе Debian 12

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

Ч. 1 — Дальнобойный Wi-Fi. Выбор аппаратного обеспечения.

Статья ещё не дописана!!!

В моём сценарии WPA2 отключен, для аутентификации пользователей и выдачи доступа к интернету используется openvpn, но при этом пользователи имеют доступ к локальным ресурсам и могут взаимодействовать внутри локальной сети.

На точке необходимо отключить встроенные функции dhcp и dns.

Читать далее

Новости

[Перевод] Поиск способов закрепления в Linux (Часть 2). Манипуляция учётными записями

Время на прочтение16 мин
Количество просмотров770

Данная публикация — перевод серии статей от Pepe Berba - Hunting for Persistence in Linux.

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

Читать далее

Ч. 1 — Дальнобойный Wi-Fi. Выбор аппаратного обеспечения

Уровень сложностиПростой
Время на прочтение2 мин
Количество просмотров3.4K

Я задумал соединить концепции антенн quados и omni quad. Вот такие заготовки соединить в крестовину и пролудить у основания что б закрепить вместе. Надо будет как то продумать балун что бы погасить лишние помехи. Со стандартными антеннами 7dBi в условиях города ловит около 70 м. Хочу добиться всенаправленного усиления до 12 dBi.

Читать далее

MemHawk — профилировщик памяти для многопоточных приложений

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров422

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

Большинство популярных профилировщиков памяти либо дают неточную информацию (sampling), либо значительно замедляют выполнение (Valgrind, heaptrack). При этом в многопоточной среде они плохо масштабируются и требуют сложной настройки.

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

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

Спойлер - удалось ускориться по отношению к heaptrack в 30 раз.

Читать далее

Как получить бан в Call of Duty без читов. Расследование одного бага

Уровень сложностиСложный
Время на прочтение11 мин
Количество просмотров3.2K

Как получить бан в Call of Duty без читов. Расследование одного бага.
Установи Windows не на NTFS и получи подарок

Читать далее

Как писать один .spec для Fedora, RHEL и openSUSE одновременно

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

Привет, Хабр!

Сегодня мы рассмотрим, как написать один RPM .spec-файл так, чтобы он одинаково успешно собирался на Fedora, RHEL и даже на openSUSE.

Но для начала: зачем вообще поддерживать несколько дистрибутивов одной спецификацией?

Читать далее

Серверное кэширование в Angie: тонкости настройки

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров833

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

Читать далее

Что дал переход на zsh мне, как разработчику?

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

Когда я был еще джуном, старшие разработчики настоятельно советовали мне перейти на zsh. Я помню, что я так и не получил никакой аргументации, чем zsh лучше привычного bash, и какую конкретно пользу я получу от перехода.
Что ж, в этой статье я хочу ответить на эти вопросы тем, кто еще только задается этим вопросом, с небольшим уклоном к PHP разработке

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

Например, установив вот такой плагин.

Читать далее

Honeypot и SSH-ключ mdrfckr: что это было?

Время на прочтение2 мин
Количество просмотров4.3K

Решил поднять SSH honeypot (использовал Cowrie), чтобы посмотреть, кто ломится в мои открытые порты. Буквально через несколько часов в логах появилось знакомое: бесконечные попытки входа под root, admin, test, и т.п. Сюрпризом стали команды, которые выполнялись после удачного входа.

Читать далее

Linux на распутье: взлет в США и Германии, спад в Индии

Время на прочтение5 мин
Количество просмотров10K

В июне 2025 года доля Linux на мировом рынке настольных ОС составила 4,1%, согласно данным StatCounter. Это небольшой откат от прошлогоднего пика в 4,5% в августе 2024-го. Казалось бы, мелочь, но за этим спадом стоит громкая история: Индия, страна с населением 1,4 миллиарда, буквально бежит от Linux. За год доля этой ОС в стране рухнула с 17,25% до 8,77% — почти вдвое. Что пошло не так? Давайте разберёмся, почему пингвин теряет позиции в одной из самых густонаселённых стран мира, в то время как в США и Германии он празднует успехи, перешагнув 5% рубеж.

Читать далее

Как один глупый Bash-скрипт сэкономил нам 100 часов ручной работы

Уровень сложностиСредний
Время на прочтение4 мин
Количество просмотров26K

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

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

Читать далее

Bash vs Python: битва, где нет проигравших

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

Привет, Хабр! В мире автоматизации часто возникает вопрос: писать скрипт на Bash или на Python? Оба инструмента подходят отлично, но принципиально разные. Bash - больше про "скоропись", для системных задач, где важна скорость и краткость. Python же - универсальный язык, который намного лучше справляется со сложной логикой и структурами данных. Но когда лучше выбрать один, а когда - другой?

Некоторые задачи в Bash решаются одной строкой, когда же на Python потребуется десяток строк кода. При усложнении сценария - Bash превращается в головоломку из awk, sed и прочих, что значительно усложняет поддержку. В данной статье сравним подходы и определим, когда и какой язык лучше использовать.

Читать далее

Livepatching: готовим «точечное» обновление ядра Linux на примере реального бага

Уровень сложностиСредний
Время на прочтение19 мин
Количество просмотров1.5K

Бывает так, что серверные Linux-системы неделями или даже месяцами работают без перезагрузки. Переносить нагрузку с одного сервера на другие, устанавливать обновления, проверять, что после перезагрузки железо работает верно, запускать заново все необходимое ПО — это далеко не всегда просто, быстро и дешево.

Но как быть, если нужно устранить критические уязвимости или другие серьезные ошибки в ядре Linux? Об одном из способов сделать это без перезагрузки системы и пойдет речь в этой статье.

Меня зовут Евгений, я работаю в компании YADRO. Задачами, связанными с разработкой и анализом компонентов ядра Linux, я занимаюсь уже около 15 лет.

Я расскажу, что такое livepatching, как такая технология появилась и как она применяется. А также покажу на примере, как можно самому сделать лайвпатч, чтобы исправить реальный баг в ядре Ubuntu 22.04 Server.

У статьи будет продолжение. Там подробно разберем, как именно лайвпатчи заменяют одни функции ядра Linux на другие, а также узнаем, на что нужно обращать внимание, если потребуется использовать все это в продакшене.

В основном речь пойдет о системах с архитектурой x86 и RISC-V (хотя технология работает и для ARM64, PowerPC, s390x).

Читать далее

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

Регистрация событий в Astra Linux Special Edition

Время на прочтение10 мин
Количество просмотров2.5K

В статье вы найдете краткий обзор подсистемы регистрации событий - собственной разработки команды ОС Astra Linux.

Всё, что будет описано ниже, актуально для самой новой на момент написания статьи версии Astra Linux Special Edition - 1.8.2.

Поехали!

Читать далее

Магия ZeroTier: Создаем личную VPN-сеть для дома и облака за 20 минут

Уровень сложностиСредний
Время на прочтение9 мин
Количество просмотров19K

Привет, Хабр!

Помните времена, когда «белый» IP-адрес был нормой, а не платной услугой? Когда для доступа к своему серверу хватало простого ssh user@ip_address? Я тоже помню. Но эта эпоха незаметно уходит.

Сегодня мы оказались в новой реальности. Ваша домашняя «Малинка» задыхается за провайдерским NAT, а облачный VPS в Европе кажется далеким и изолированным островом. Как получить доступ к первой или второй?

Эта статья — не очередной гайд по VLESS или Shadowsocks для обхода сложных блокировок. Это не "серебряная пуля" против DPI. Это честный гайд по постройке вашей личной, плоской и безопасной L2-сети поверх хаоса современного интернета. Мы соберем VPN-хаб, который не боится NAT, независимо от того, где он будет жить — на скромной «Малинке» дома или на арендованном VPS в другой стране. Мы разберем весь процесс по шагам, от регистрации до настройки полного туннеля, и честно поговорим о компромиссах этого решения.

Читать далее

Что нового в Wayland 1.24 и почему это важно для пользователей Linux

Время на прочтение5 мин
Количество просмотров7.5K

Wayland — не просто очередной протокол, а попытка заново выстроить графическую систему Linux: проще, безопаснее и с учетом современных требований. 7 июля 2025 года вышел стабильный релиз Wayland 1.24 — результат 13 месяцев разработки и еще один шаг к зрелой альтернативе X11. Он включает важные улучшения, усиливающие позиции Wayland как преемника X11.

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

Читать далее

[Перевод] Поиск способов закрепления в Linux (Часть 1)

Уровень сложностиСредний
Время на прочтение21 мин
Количество просмотров3.3K

Данная публикация - перевод серии статей от Pepe Berba - Hunting for Persistence in Linux.

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

Читать далее

Скрипт-реаниматор: автоматическое восстановление упавших SSH-сессий

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

Привет, Хабр! Представим ситуацию: вы настраиваете сервер, работаете с критически важными процессами или изучаете логи - и внезапно SSH-соединение обрывается. Все не сохранённые изменения улетучиваются, прогресс откатывается, а вам приходится переподключаться и начинать всё заново.

В данной статье представлен скрипт-реаниматор для SSH, который:

Восстанавливает соединение при любых обрывах
Сохраняет рабочую сессию и историю команд
Поддерживает tmux/screen для полного сохранения контекста
Может отправлять уведомления о проблемах в Telegram
Решение представлено для Bash и PowerShell

Читать далее

Шифрование скриптов

Уровень сложностиСредний
Время на прочтение7 мин
Количество просмотров9.6K

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

Компилируемые языки хоть как-то защищаются, соответственно, с помощью компиляции, хотя и это не панацея. А вот что делать со скриптами, которые могут быть написаны на bash или pyton?

Как вариант решения такой проблемы, может быть, шифрование скриптов с аппаратной привязкой дешифратора к платформе, на которой этот скрипт исполняется. Звучит красиво, но надёжно ли? Насколько будет эффективен и взломостойкий этот метод?

У меня в одном проекте была проба пере такого решения. Заодно проверил, и вскрыл это шифрование.

Читать далее

Пишем простой драйвер Linux для устройства, ничего не зная о драйверах и о USB

Уровень сложностиПростой
Время на прочтение12 мин
Количество просмотров14K

Пару месяцев назад я купил Nanoleaf Pegboard Desk Dock — последнее слово в технологиях USB-хабов с RGB-светодиодами и крючками для устройств. К сожалению, это чудо инженерной мысли поддерживает только гейминговые операционные системы — Windows и macOS, поэтому возникла необходимость в драйвере для Linux.

В своих постах я уже настраивал Windows VM с пробросом USB и пытался выполнить реверс-инжиниринг официальных драйверов. При этом я задумался, а нельзя ли написать производителю и попросить у него спецификации или документацию его протокола. К моему удивлению, техподдержка Nanoleaf ответила мне всего через четыре часа, предоставив полное описание протокола, используемого Desk Dock, а также полосами RGB-светодиодов. Документация по большей мере подтвердила то, что я обнаружил самостоятельно, но также я нашёл в ней пару других мелких подробностей (например, управление питанием и яркостью), которые были мне неизвестны.

Сегодня мы попробуем написать драйвер на основании протокола (который я изучил реверс-инжинирингом), параллельно сверяясь с официальной документацией. Однако здесь есть одна небольшая проблема: раньше я ни разу не писал драйверов для устройств под Linux, а с USB-устройствами взаимодействовал только как пользователь.

Читать далее
1
23 ...

Вклад авторов