Обновить
512K+

Системное администрирование *

Лишь бы юзер был доволен

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

Облако ляжет снова. Что вы успеете настроить до этого, а что уже нет

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

Понедельник, 9:12. В чате поддержки сорок сообщений про четыре разные системы: у одних не открывается почта, у других не грузится CRM, бухгалтерия пишет, что «1С зависла», разработчики спрашивают, куда делся репозиторий. Причина у всего одна, и находится она в дата-центре облачного провайдера, до которого ваша служба дотянуться не может. Облако провайдер починит, а вот что делать людям, пока оно лежит, решает ИТ-служба.

Читать далее

Новости

Свой игровой сервер на Linux: от systemd до Docker на примере Minecraft и Valheim

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

Когда друг в очередной раз спрашивает: «А давай поднимем свой сервер, чтобы никто не выключал?», — начинаешь гуглить и натыкаешься либо на видео сомнительного качества, либо на форумные треды десятилетней давности. А хочется, чтобы сервер работал, обновлялся, не падал и не открывал дыру в безопасности. Эта статья — практический разбор двух подходов к организации игрового сервера на Linux: «голое железо» с systemd и контейнеризация через Docker. На примере Minecraft (как самой частой истории) и Valheim (как примера из мира Steam). Без магии, с командами и конфигами.

Что нужно решить до первой команды

Прежде чем ставить пакеты, ответьте на три вопроса. От них зависит всё остальное.

Железо. Minecraft — игра, которая любит одно ядро и много памяти. Официальные требования начинаются от 1 ГБ RAM для ванильного сервера, но для 5–10 игроков уже стоит ориентироваться на 2–4 ГБ. Для модовых сборок цифры умножаются: 3 ГБ хватит на 3–8 игроков, 4 ГБ — на 8–15, а дальше — как повезёт с конкретными модами. Valheim требует минимум 4 ядра и 2 ГБ RAM, но на практике стабильнее себя чувствует с запасом.

ОС. Ubuntu 22.04/24.04 LTS или Debian 12+ — самые «обкатанные» варианты для игровых серверов. На старых дистрибутивах Valheim может не запуститься из‑за устаревшей glibc (нужна версия 2.29+). Если железо старое, Docker часто становится обходным путём, потому что тащит свои зависимости.

Подход. systemd на хосте — прозрачность и контроль. Docker — воспроизводимость и лёгкость обновлений. Ниже — оба варианта.

Читать далее

Две аварии дата-центров за трое суток: как мы дважды поднимали платформу и переехали в другое облако. Постмортем

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

8 октября 2026 года наш облачный провайдер потерял дата-центр, в котором работала вся наша инфраструктура. Через трое суток то же самое случилось со второй площадкой, на которую мы к тому моменту успели переехать. За неделю мы дважды поднимали платформу почти с нуля. Как говорится в меме: да, это я, и как я докатился до жизни такой…

Небольшой спойлер итога ситуации, которую я буду разбирать дальше: мы безвозвратно потеряли данные за 20 часов, прошедших с последнего резервного копирования. Сервисы переехали сначала в соседнюю зону того же облака, потом к другому провайдеру, а миграцию в Kubernetes, начатую год назад, мы закончили за двое суток. Базы данных теперь хранятся в двух копиях у разных провайдеров.

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

Читать

502 Bad Gateway: три причины и куда смотреть

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

В прошлой статье я рассказывал, как устроен мой тренажёр инцидентов изнутри. Сегодня покажу один кейс, седьмой, про 502 Bad Gateway. Он небольшой, но на нём хорошо видно, почему рестарт nginx почти никогда не помогает.

Вводная такая: ночью выкатили релиз, утром магазин отдаёт 502. При этом systemctl status nginx показывает active (running).

502 значит, что nginx запрос принял, передал дальше и нормального ответа не получил. То есть nginx тут свидетель, и начинать надо с его лога:

Читать далее

От высокой нагрузки до восстановления LVM: 14 бесплатных вебинаров для инфраструктурных инженеров

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

Когда инфраструктура начинает тормозить или что-то ломается после очередного деплоя, важно быстро найти причину и понимать, как её устранить. Для этого нужны знания, которые выходят за рамки привычного стека инструментов. Собрали 14 бесплатных уроков для инфраструктурных инженеров — от диагностики сетевых проблем и восстановления LVM до Kubernetes, CI/CD и DevSecOps, с разбором конкретных задач и практических подходов к их решению.

Посмотреть программу

Обновили PHP после PHP2Shell? Сохраните вывод php -v — он может понадобиться в суде

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

21 октября вышли патчи против PHP2Shell — двух критических уязвимостей в PHP с удаленным выполнением кода без авторизации. Как обновиться, уже написали многие. Мы разбираем, что сделать после обновления, чтобы утечка через уязвимость не обошлась компании в штраф до 15 млн рублей: какие доказательства сохранить, когда звать юриста и почему отсчет 24 часов на уведомление Роскомнадзора может начаться раньше, чем вы думаете.

Читать далее

Агент с root на моём VPS: как не дать ему отрезать себе доступ

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

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

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

В моём бенчмарке Claude Opus 5.5 без подсказок так банит сам себя в 7 прогонах из 60. Модель умная, просто ей никто не сказал, что свой IP надо добавить в ignoreip до первого запуска fail2ban.

Из таких мелочей и вырос vps-forge. Это открытый Agent Skill: инструкции и несколько bash-скриптов, которые Claude Code, Codex, Cursor и другие агенты подгружают, когда речь заходит о сервере. Расскажу про главную часть, автоматический откат, про грабли по дороге и про бенчмарк, включая неудобные цифры.

Читать далее

Ghostty 1.4: терминал ускоряется, экономит память и учится быть осторожнее

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

27 октября 2026 года Митчелл Хашимото выпустил эмулятор терминала с GPU-ускорением — Ghostty 1.4.0. За релизом стоят семь месяцев работы, 172 контрибьютера и 2889 коммитов. В тестах команды на macOS пропускная способность ввода-вывода выросла на 25–55%, а сжатие текстовой истории сократило занимаемую ею физическую память на 70–90%.

Откуда взялось такое ускорение, что изменилось в работе с графикой и SSH и на что обратить внимание перед обновлением? Разберём все главные изменения и их нюансы в нашем обзоре. 

Читать далее

Как я подключил Hermes Agent к серверам, Obsidian, почте и разделил на Telegram-ботов

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

В статье рассказываю, как подключил Hermes Agent к своей инфраструктуре ServeHub-2 и использовал его для повседневных задач. Агент помогает работать с базой знаний Obsidian, проверять состояние серверов и следить за несколькими почтовыми ящиками.

Чтобы разделить задачи, я создал несколько профилей с отдельными Telegram-ботами. Так каждый агент отвечает за своё направление и использует собственные настройки.

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

Также рассказываю, почему выбрал Hermes Agent, какие его возможности использую.

Читать далее

Инцидент с ключами eMudhra: удивительная история длиной в полтора года и обновление миллионов устройств за пару дней

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

Экстраординарные события последних недель не отменяют необходимость работать над безопасностью продуктов и быстро адаптироваться к новым угрозам.

Одной из таких новых угроз стала компрометация сертификатов eMudhra — удостоверяющего центра с почти двадцатилетней историей, которому доверяли Apple, Google, Microsoft и Mozilla, а вместе с ними — браузеры, приложения и устройства по всему миру.

Сегодня расскажем, что известно о компрометации eMudhra, чем она грозила пользователям и как мы реагировали на угрозу, чтобы защитить их, — в том числе на Яндекс Станциях.

Читать далее

Миграция 4 миллионов игроков на новую версию: три подхода к подготовке и авария за сутки до старта

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

Вечером, за сутки до переноса четырёх миллионов игроков на новую версию игры, вся российская часть нашей инфраструктуры стала недоступна: после атаки на Yandex Cloud легла зона, в которой она жила. Расскажу, как мы год готовились к этой миграции, какие предположения подтвердились, а какие нет, где нам помог Claude Code с доступом ко всей инфраструктуре и где мы ошиблись, несмотря на его помощь. В конце покажу, что стало с аудиторией и выручкой.

Запустить миграцию

Контейнер вышел за лимит памяти и не умер. Лучше бы умер

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

Контейнер упёрся в лимит памяти, но OOMKilled так и не появился. Сервис продолжает работать, задержки растут, CPU почти простаивает, а привычные метрики не объясняют, что происходит. На примере экспериментов с cgroup v2 разберём, как memory.high заставляет процессы ждать освобождения памяти и почему в Kubernetes это может обернуться минутами деградации производительности перед рестартом.

Разобрать эксперимент

Как я одной командой сломал OSD, а потом чинил его решардингом

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

Это история про один вечер с Ceph, в котором я сначала героически чинил одиннадцать упавших OSD, потом сам же добил один из них ещё сильнее, а потом ещё пару часов доказывал базе данных, что она умеет читать то, что сама же записала. Спойлер, данные никто не потерял, а я узнал о RocksDB больше, чем собирался узнать в этой жизни.

Внутри коварный cephadm shell, контрольные суммы XXH3, решардинг как способ лечения и три правила, которые стоило знать заранее.

Читать далее

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

Перезапустил — и стало хуже: 5 инцидентов, которые не лечатся рестартом

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

Три часа ночи, API отвечает 500, и рука сама набирает systemctl restart. Иногда это помогает, но есть инциденты, где рестарт добивает то, что ещё работало, и стирает улики. Пять таких: битый конфиг, OOM killer, retry storm, CrashLoopBackOff и диск, забитый логом, — с командами, которые находят настоящую причину, и шпаргалкой на одну таблицу.

Читать далее

TLS наизнанку: от рукопожатия TLS 1.2/1.3 до Fingerprinting (JA3/JA4/http2) и маскировки с uTLS

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

Как WAF отличает ваш скрипт на Python от реального Chrome, если заголовки полностью идентичны? Ответ зашит в сетевом стеке. Поддерживаемые шифры и порядок расширений TLS формируют уникальный отпечаток, который невозможно скрыть обычной подменой прокси.

Пошагово разбираем анатомию TLS-handshake, алгоритмы деанонимизации JA3/JA4 и учимся собирать правильный цифровой почерк с помощью uTLS.

Читать далее

Первый рабочий день джуниора Данилы. Часть 2. Визит Анастасии Марковны — главбуха

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

В предыдущей серии: Краткое содержание Части 1


В ИТ-отделе крупной компании "ИнвестБолт", которая знает цену специфики ВЭД с Китаем, наступило начало прекрасного дня: сеньор Михалыч флегматично чистил воблу, тимлид Антон Павлович пил кофе, а амбициозный 22-летний джуниор Данила (самопровозглашенный «Промпт-Архитектор») радовался жизни. Это был его первый официальный рабочий день после долгих месяцев штурма Хедхантера, и Данила чувствовал себя баловнем судьбы. Он искренне верил, что ИИ уже заменил сеньоров, ведь нейросеть по его первому запросу сгенерировала синтаксически идеальный код для управляемых форм.

Идиллия рухнула, когда в отдел влетела менеджер по закупкам Таня с розовой флешкой с «маленьким» прайсом от китайских поставщиков на 300 000 строк Excel, который нужно было загрузить «быстренько и красивенько». Данила не растерялся и скормил ИИ новый промпт. Нейросеть авторитетно заявила, что для кроссплатформенной работы на Linux идеально подходит объект ТабличныйДокумент. Джуниор скопировал код, нажал кнопку «Загрузить» и… серверный процесс rphost сожрал все 64 ГБ оперативной памяти, нагрузил процессор на 100% и упал. База рухнула в разгар закрытия квартала у бухгалтерии, выкинув из системы главбуха Анастасию Марковну.

Опытный сеньор Михалыч отложил воблу, взял маркер и пошел к офисной доске и стал объяснять Даниле, как устроен реальный мир СУБД на физическом уровне.


Часть 2. Визит Анастасии Марковны -  главбуха

Действующие лица:

Анастасия Марковна (Главбух) — 60 лет. Взгляд прожигает насквозь даже тимлида. Причёска в виде монолитного куба, зафиксированная лаком «Прелесть». Носит с собой огромные счёты как холодное оружие.

Читать далее

Мой сервер врал «готово» каждому новичку

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

Новичок открывает первый кейс, о котором я рассказывал в первой статье., читает брифинг, и через пять секунд сайт пишет: «Готово, жми „Начать“». Он жмёт и смотрит на пустое окно терминала. Секунд через десять там ошибка, страница сама перезагружает терминал, и только потом появляется консоль.

Сервер при этом не падал, CPU и память в норме, алерты молчат. Были только строчки в журнале, которые я чуть не записал в «обычный шум».

Читать далее

Kylin Desktop V11 изнутри: неизменяемая система, встроенные нейросети и обзор программ

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

Автоматизированное тестирование наших продуктов для Avalonia UI работает на виртуальных машинах с разными Linux: Ubuntu, Astra Linux, ALT, РЕД ОС. Мы планируем расширить этот набор. Изучили Kylin Desktop V11 (银河麒麟, «Галактический Цилинь») — основную ОС для госсектора Китая — и решили поделиться результатами. В этой ОС встречается несколько интересных вещей, о которых мы хотим рассказать сегодня. Корень системы неизменяемый и обновляется атомарно через ostree, apt работает в отдельном контейнере, у программ свой формат пакетов, а вместе с рабочим столом запускается сервер инференса NVIDIA Triton с двумя десятками нейросетей.

Читать далее

Root без права на запись: как четыре уязвимости Linux обходят защиту файлов

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

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

В 2026 году исследователи описали несколько уязвимостей с таким механизмом. Они затрагивают криптографию и обработку сетевых пакетов, но причина у них похожая: подсистемы ядра неправильно обращаются с общими страницами памяти. Разберем Copy Fail, Dirty Frag и pedit COW, а затем посмотрим, как эти ошибки приводят к повышению привилегий.

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

Читать далее

Я раздаю root на своём сервере всем подряд — и он до сих пор жив

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

Рассказываю, что может натворить человек с root в контейнере и как я это закрыл: gVisor вместо runc, отдельная сеть на каждый запуск, лимиты, сторож диска и проверка, которую не обмануть через sudo. Плюс три дыры в «идеальной» сетевой изоляции и замеры: почему load average врёт и как 3 места на сервере превратились в 9.

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