Обновить
512K+

Linux *

Пишем под *nix

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

Домашний сервер без белого IP: безопасная публикация сервисов через VPS, обратный SSH-туннель и Caddy

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

Как безопасно опубликовать домашний сервер без белого IP и проброса портов: домашний сервер сам устанавливает исходящее SSH-соединение к VPS, на VPS создаётся локальный endpoint обратного SSH-туннеля, а внешний доступ к сервисам отдаётся через Caddy по HTTPS. Backend-порты вроде Nextcloud, Home Assistant или Jellyfin не открываются напрямую в интернет, а остаются доступными только через loopback и reverse proxy. Отдельное внимание уделено hardening: ограниченный пользователь tunneluser, SSH-ключи, autossh, systemd, UFW, проверка sshd_config и диагностика типовых ошибок.

Поехали

Новости

Хром и скорость

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

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

Читать далее

Segmentation Fault: как оно устроено?

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

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

Сегфолтнуться

Релиз GitLab 19.0: ИИ‑оркестрация, которая наконец‑то догнала темп написания кода

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

21 мая 2026 года вышел мажорный релиз, переосмысляющий то, как платформа управляет жизненным циклом от идеи до деплоя.

Основной повесткой как уже принято стал ИИ, в Gitlab уделили этому особое внимание.
ИИ уже генерирует больше кода, чем успевают проверять инженеры. Merge Request'ы накапливаются, конфликты разрастаются, секреты утекают в переменные окружения, а зависимости с уязвимостями тихо живут в requirements.txt. GitLab 19.0 отвечает на этот вызов не просто набором фич, а сменой парадигмы: платформа берёт на себя операционную работу, оставляя командам только решения, требующие человеческого суждения.

Ниже я разберу релиз подробно, постараюсь описать примеры конфигурации, архитектурные схемы и дам выводы, таким образом как я это понял)

Читать далее

Свет, тьма, VEML7700 и Python

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

У меня на полке стоит NanoPi Fire3 — старинный SBC с Linux на борту. С течением времени он неизбежно обрастает периферией разной степени бесполезности. Среди прочего, конечно же, в нем прописался экранчик LCD2004 (даже два) со светодиодной подсветкой, который освещал ночную квартиру, как прожектор.

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

Измерить освещенность

Майский «В тренде VM»: громкие уязвимости в Linux, ActiveMQ, SharePoint и Acrobat Reader

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

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

На связи Александр Леонов, ведущий эксперт PT Expert Security Center и дежурный по самым опасным уязвимостям месяца. Мы с командой аналитиков Positive Technologies регулярно смотрим на поток информации об уязвимостях из самых разных источников: бюллетени безопасности вендоров, соцсети, блоги, телеграм-каналы, репозитории кода, базы уязвимостей и эксплойтов. Из этого многообразия мы стараемся выделять самое важное - трендовые уязвимости, которые уже используются в реальных атаках или с высокой вероятностью будут эксплуатироваться в ближайшее время.

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

Читать далее

Мониторинг Kerio Connect через Zabbix 7: разбор шаблона без агентов и regex по DAT

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

Kerio Connect — почтовый сервер, который в нашей стране всё ещё крутится в десятках организаций, особенно тех, что когда-то слезли с Exchange и не захотели возвращаться. Для системного администратора это означает простую вещь: почта работает, а наблюдать за ней нечем. Официальная страница zabbix.com/integrations предлагает шаблоны только для Kerio Control (фаервол), для Connect — пустота. В zabbix/community-templates тоже пусто. На форумах советуют парсить графический DAT-файл регулярками — работает, но теряется API-уровень.

У меня под рукой Kerio Connect 10.x в продакшене, и однажды я устал смотреть на него через веб-интерфейс и счётчики антиспама в логе. За несколько дней собрал Zabbix 7 шаблон поверх Kerio Admin API (JSON-RPC), выложил под MIT. В статье — разбор того, что выяснилось: почему минимальная роль для API оказалась тупиком, как 4 вызова уложились в один master-айтем, что делать с отрицательной дельтой на counter reset и почему агент на хосте всё-таки иногда нужен. Без пересказа документации, с граблями.

Читать далее

Suricata IPS NFQueue with nDPI. Часть VI

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

«Suricata IPS NFQueue with nDPI» — это значит, что программа suricata работает в режиме IPS с движком NFQueue и поддержкой nDPI.

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

Данная информация предназначена для тех, кто хотел бы получить опыт работы с suricata и попробовать ее возможности на практике. Приведенная конфигурация будет рассчитана на минимальное потребление ресурсов. Установка и настройка будут выполняться на ОС Debian 13 с nftables для текущей стабильной версии suricata 8.0.4.

Часть VI содержит: 13. Обзор бесплатных источников правил. 14. Использование правил. 15. Пример конфиг-файла suricata.yaml.

Читать далее

Claudex: как я подружил Claude Code с ChatGPT/Codex OAuth без OpenAI API key

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

Я хотел запускать Claude Code через подписку ChatGPT/Codex. Без OpenAI API key и без потери привычных вещей: инструментов, скриншотов, /compact, длинных сессий и нормальных ошибок.

На бумаге это выглядит как простой локальный прокси. На практике пришлось переводить не только JSON, но и поведение Anthropic API: потоковые события, вызовы инструментов, лимиты контекста, файлы, картинки и типы ошибок.

Так появился мой open source fork Claudex. Репозиторий: github.com/pilc80/claudex. Лицензия — MIT.

Читать далее

SSH как корпоративный L3-туннель: когда классические VPN-протоколы больше не работают

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

В последние годы для команд, которые работают с зарубежной инфраструктурой из России, обычный корпоративный VPN перестал быть чем-то, что можно один раз настроить и забыть. OpenVPN, WireGuard, IPsec, различные TLS- и QUIC-обёртки могут работать стабильно месяцами, а потом внезапно начать деградировать: где-то соединение не устанавливается, где-то режется UDP, где-то DPI начинает узнавать сигнатуры, где-то провайдер меняет правила фильтрации.

Для компании это превращается не в техническую мелочь, а в операционный риск. Инженеры не могут попасть на серверы. DevOps не может проверить прод. Администратор не может забрать бэкап. Пентестер не может подключиться к стенду заказчика. При этом инфраструктура может находиться в Европе, США, Азии или у любого другого зарубежного провайдера, а сотрудники — физически находиться в РФ.

В какой-то момент мы пришли к простой мысли: если из корпоративной сети ещё можно установить исходящее SSH-соединение, то можно попробовать использовать сам OpenSSH не только как инструмент администрирования, но и как транспорт для L3-туннеля. В OpenSSH для этого давно существует режим ssh -w, который поднимает туннель через tun-устройство.

Идея статьи не в том, чтобы объявить ssh -w «лучшим VPN на все времена». Это не замена WireGuard для нормальной постоянной инфраструктуры и не серебряная пуля против любых сетевых ограничений. Но это очень полезный аварийный и корпоративный вариант: работает поверх обычного SSH, не требует отдельного VPN-демона на сервере, может быть поднят на дешёвом VPS, использует привычную модель ключей OpenSSH и позволяет строить полноценную маршрутизацию на L3.

Читать далее

eBPF для начинающих: практическое введение

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

Современные инструменты мониторинга (Prometheus, Grafana, профилировщики) обеспечивают хорошую видимость состояния приложения, но имеют ограничения при анализе низкоуровневых проблем. Технология eBPF (Extended Berkeley Packet Filter) позволяет преодолеть этот барьер, предоставляя безопасный доступ к событиям ядра Linux. 

Статья — это практическое введение в eBPF: попробуем готовые команды для наблюдаемости, сети и безопасности, разберём, как программа попадает в ядро и взаимодействует с user-space через maps и helpers, почему верификатор отклоняет «опасный» код и чем отличаются BCC, libbpf и bpftrace. В конце — короткий обзор того, как eBPF используют Cilium, Falco и Pixie.

Материал будет полезен программистам, DevOps-инженерам, SRE-специалистам и всем, кто интересуется Linux.

Читать далее

BBR рулит, но… — есть нюанс, когда алгоритмы из 2000-х понимают Wi-Fi лучше

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

BBR принято считать современным стандартом TCP congestion control. Google разработал его в 2016 году, он работает в production крупнейших CDN, его хвалят в каждой второй статье о сетевой оптимизации. И всё это заслуженно — но с существенной оговоркой, о которой обычно не пишут.

Вперёд в прошлое…

Ваш docker‑compose.yml сломается: 5 настроек, которые все забывают

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

Локально docker-compose.yml обычно выглядит «рабочим» ровно до момента, пока сервис не уезжает на сервер. Потом внезапно заканчивается память, контейнеры не поднимаются после падения, логи разрастаются на десятки гигабайт, а Docker продолжает считать зависшее приложение живым.

В статье — пять настроек Compose, про которые почти всегда вспоминают уже после первого инцидента в проде: лимиты ресурсов, restart policy, healthcheck, ротация логов и работа с volumes.

Читать далее

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

Дорогая, давай займемся spoofing-ом

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

Email spoofing существует столько же, сколько сам SMTP — протокол, который изначально не предусматривал никакой проверки отправителя. В статье на живом примере разбираю, как отправить письмо от чужого имени через telnet, почему SPF и DKIM не всегда спасают и что нужно настроить, чтобы защитить свой домен.

Читать далее

Installer на стероидах. Модификация установочных образов Astra linux

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

У каждого своё чувство перфекционизма. В этой статье я покажу примеры модификации live installer Astra linux, чтобы вы могли создать автономный дистрибутив своей мечты.

Читать далее

Как программа попадает в память: от execve до main

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

Вы когда-нибудь задумывались, что происходит после того, как вы нажимаете Enter в терминале Linux? Вводите ./myprogram и...

Что именно происходит дальше? Как ядро находит файл? Как загружает его в память? Кто вызывает main? И как на всё это посмотреть вживую?

Разберемся на примере пустой программы empty_sleep. Она ничего не делает, просто запускается и завершается через 30 секунд. В ней нет лишнего кода и мы сможем сосредоточиться только на процессе загрузки. Всё, что мы увидим, относится к большинству динамически скомпилированных программ в Linux.

В этой статье покажу как с помощью strace в реальном времени проследить путь программы от execve до _start и main.

Читать далее

Double Shift вместо ручного удаления: как я делал локальный помощник раскладки для GNOME Wayland

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

Я сделал для себя локальную open source утилиту для GNOME Wayland: набрал слово не в той RU/EN раскладке, нажал Shift два раза — слово перепечаталось правильно. Делюсь проектом и тем, какие грабли нашлись на Wayland.

Читать далее

Suricata IPS NFQueue with nDPI. Часть V

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

«Suricata IPS NFQueue with nDPI» — это значит, что программа suricata работает в режиме IPS с движком NFQueue и поддержкой nDPI.

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

Данная информация предназначена для тех, кто хотел бы получить опыт работы с suricata и попробовать ее возможности на практике. Приведенная конфигурация будет рассчитана на минимальное потребление ресурсов. Установка и настройка будут выполняться на ОС Debian 13 с nftables для текущей стабильной версии suricata 8.0.4.

Часть V содержит: 12. Подготовка к использованию.

Читать далее

Нестандартное решение для стандартных задач: пробуем вычислительный модуль Luckfox

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

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

Глядя на то, как из-за кризиса производства оперативной памяти цены на одноплатные компьютеры улетают в космос, чувствуешь острую необходимость искать для своих проектов более бюджетные и порой нестандартные решения. Одним из таких решений, которое случайно попалось мне на глаза, стал вычислительный модуль Luckfox Core 1106. В данной статье мы посмотрим его характеристики, соберем операционную систему и запустим I2S-интерфейс для передачи цифрового аудио. Если стало интересно, то добро пожаловать под кат!

Читать далее

Обход блокировок на OpenWRT с помощью HomeProxy-hiddify (hiddify-core) и баз GeoIP, Geosite Re:filter

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

Это гайд по настройке через UI нового, разработанного мной, русифицированного приложения для OpenWRT с hiddify-core - HomeProxy Hiddify, он позволяет настроить подключение к NaiveProxy, Mieru, ShadowTLS, Hysteria2, XRay, VLESS (XHTTP), VMESS, Trojan, TUIC и иным протоколам которые поддерживает Hiddify App в т.ч. с помощью подписок (subscription). В статье рассмотрим установку и настройку приложения для раздельного туннелирования на примере списков Re:filter

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