Обновить
381.68

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

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

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

Гайд по timeout, watch и at: управление временем выполнения команд в Linux

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

Как часто вы запускали какую-нибудь штуку в терминале — и она зависала навсегда? Или наоборот: вам нужно было увидеть, как что-то меняется каждую секунду, а вы упорно жали стрелку вверх и Enter? А может вы хотели запланировать задачу через 5 минут, но cron — это уже overkill?

Для всех этих сценариев в Linux есть три проверенных утилиты: timeout, watch, at. И, да, можно было бы обойтись скриптами и велосипедами, но... мы же не зря используем Unix-подход, где всё уже давно придумано.

Сегодня мы рассмотрим: как управлять временем выполнения команд в Linux с помощью timeout, watch и at.

Читать далее

Angie 1.10: разбор фич, планы на 1.11

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

Следуя устоявшемуся квартальному ритму выпуска значимых релизов, мы выпустили стабильные версии Angie и Angie PRO 1.10 — форка nginx, развиваемого в основном бывшими ключевыми разработчиками оригинального проекта.

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

А пока — краткий список нововведений, которые будут разобраны ниже:

— автоматическое проксирование и балансировка веб-сервисов в Docker-контейнерах (или Podman);
— автоматическое получение TLS-сертификатов для потокового модуля (stream);
— прием соединений Multipath TCP (MPTCP);
— контроль перегрузки CUBIC в QUIC-соединениях;
— привязка сессий с внешним хранилищем в модуле stream;
— новые режимы привязки сессий при проксировании HTTP-запросов;
— режим постоянного перехода на резервную группу в модуле stream.

Читать далее

6 приёмов, которые я использую, создавая отличный UX для Shell-скриптов

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

Обязательно посмотрите shell-скрипт в репозитории — он чудо как хорош. Раскрашивает выходные данные, надёжный как скала… настоящий мастер-класс по созданию shell-скриптов.

Спасибо Гуннару Морлингу за добрые слова!

В январе 2024 года меня, вместе с несколькими дюжинами других гиков, повёрнутых на производительности, что называется, «заснайпили», заинтересовав участием в конкурсе Гуннара One Billion Row Challenge (1BRC).

Гуннара, оценивающего результаты работы конкурсантов (бесплатно), очень быстро буквально завалил непрерывный поток решений. Я рискнул помочь ему автоматизировать оценку работ и написал Shell-скрипт, за что и получил от него вышеприведённый хвалебный отзыв. Он это сказал в выступлении на конференции JavaZone (# 1BRC‑Nerd Sniping the Java Community — Gunnar Morling). Посмотрите это выступление, если хотите узнать о подходах к повышению производительности кода, применённых на конкурсе.

Здесь я расскажу о 6 приёмах, которые я использовал в Shell-скрипте для конкурса. Эти приёмы позволили сделать скрипт надёжным, безопасным и приятным в использовании для Гуннара.

Читать далее

Как перестать сомневаться и подать доклад на IT-конференцию

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

Привет, Хабр! За то время, пока существует Онтико, мы подготовили вместе со спикерами тысячи докладов. И точно знаем, что спикер тоже человек и как любой человек он может сомневаться.

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

Читать далее

Нейросети, видеокарты и здравый смысл

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

Протестировали нейросети и показали, в чём разница между разными моделями видеокарт — не только AI/ML-инженеры должны понимать, что скрывается за TFLOPS и в чём их разница. Взяли базовые карты, которые можно использовать для работы с нейросетями. За подробностями под кат!

Читать далее

Как работает Unified Storage в vStack?

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

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

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

Давайте подробнее рассмотрим, как работает эта технология.

Читать далее

Настройка TLS в Angie: безопасность и скорость

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

Сегодня использование HTTPS стало практически обязательным для большинства веб‑приложений. Angie позволяет эффективно обрабатывать HTTPS‑трафик, обеспечивая при этом высокий уровень безопасности. В новых протоколах HTTP/2 и HTTP/3 использование защищённого соединения обязательно. Однако, как обычно, есть много деталей в конфигурации, которые мы последовательно разберём в этой статье.

Читать далее

PDB для StatefulSet с minAvailable=100 % и контролируемый rolling-update через Partition

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

Привет!

Сегодня мы рассмотрим, как перезапустить полноценный ZooKeeper‑кластер в Kubernetes так, чтобы ни один из узлов не потерял кворум даже на микросекунду. Берём два проверенных инструмента — строгий PodDisruptionBudget с minAvailable: 100% и StatefulSet с updateStrategy.RollingUpdate.partition.

Читать далее

Поднимаем свой Jabber/XMPP сервер в 2025 году

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

WhatsApp в России депутаты обещают заблокировать уже в очень скором времени. Доверие к Telegram у многих довольно сильно было подорвано после публикации расследования одного издания об особенностях их протокола вкупе с подробностями о том, кто владеет их сетевой инфраструктурой и с кем он связан, да и недавнее появление Telegram в реестре РКН тоже оптимизма в их отношении не добавляет. Max - оставим для сумасшедших и безвыходных, учитывая, кто и зачем его создал. Signal - отличный мессенджер и всем хорош, но в России его тоже периодически пытаются заблокировать.

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

В наше время как self-hosted альтернативу популярным мессенджерам часто упоминают Matrix, например, с клиентом Element. На Хабре есть подробные инструкции, например вот эта: https://habr.com/ru/articles/837904/. Я попробовал, и мне не понравилось. Клиенты тормозные, через нестабильный интернет-канал все работает просто отвратительно, а сам сервер просто неповоротливый и укладывает не слишком богатый на процессор и память VPS даже всего с парой клиентов.

И тут мне вспомнилось про XMPP, он же Jabber. Он родом еще из тех времен, когда люди пользовались процессорами на 200-300 мегагерц и подключались к интернету через dial-up модемы - то есть он изначально очень нетребовательный к ресурсам. Между тем, развитие его не замерло на месте, а на сегодняшний день он умеет почти все то что требуется от современного мессенджера: хранение истории, передача файлов, аудио-видео звонки, end-to-end шифрование, и другое.

Читать далее

Берём анализы на болезни TLS у Гемотеста

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

17 июля я сдал анализы крови в компании Гемотест. Спустя полтора дня мне пришёл email с результатами на адрес, который я указал перед сдачей. К счастью, с анализами было всё хорошо: у меня нет ВИЧ, гепатита B, гепатита C, сифилиса, ура! PDF с анализами было заверено приложенной электронной подписью с инструкцией по проверке. Было внутри даже такое:

УВЕДОМЛЕНИЕ О КОНФИДЕНЦИАЛЬНОСТИ: Это электронное сообщение и любые документы, приложенные к нему, содержат конфиденциальную информацию. Настоящим уведомляем Вас о том, что если это сообщение не предназначено Вам, использование, копирование, распространение информации, содержащейся в настоящем сообщении, а также осуществление любых действий на основе этой информации, строго запрещено. Если Вы получили это сообщение по ошибке, пожалуйста, сообщите об этом отправителю по электронной почте и удалите это сообщение.

А потом ещё и то же самое на английском. Ну кайф. Вроде всё хорошо, можно не волноваться. Но одна вещь всё-таки лишила меня покоя.

Замочек. Красный. Перечёркнутый.

Магия KNOX и её разоблачение: изучаем OEMConfig от Samsung

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

Настало время, когда каждый из нас может попробовать OEMConfig от Samsung под названием Knox Service Plugin. OEMConfig — это специфические настройки устройства от производителя, которые доступны на его устройствах. Пока они есть только на Samsung. Если не согласны, пишите в комментариях.

Перенастройка кнопок, запрет обновлений Android, блокировка облачного GalaxyAI, голосовых вызовов или оптимизации батареи, включение и выключение устройства при подаче и отключении питания и многое другое. KNOX — это не только таинственная безопасность inside.

В статье обзор безоблачного Windows приложения KME Direct, которое позволяет всё это делать.

Читать далее

Нас не заменят! Почему сисадмины не боятся конкуренции с ИИ

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

Дизайнеры, программисты, копирайтеры, маркетологи и многие другие на митапах, встречах, хакатонах, в комментариях на Хабре обсуждают, как, когда и в чём их заменит ИИ. В многоголосье айтишных голосов реже остальных слышно сисадминов. Не то чтобы они умели заговаривать роботов и были сами теми ещё искусственными интеллектами — просто есть довольно весомые предпосылки, которые говорят, что бубен и интуиция не одну нейронку переживут. 

День системного администратора — самое время разобраться кожаным с железными.

Читать далее

Структура файловой иерархии Linux

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

Как бы ни отличались дистрибутивы, в основе любой Linux-системы лежит одна и та же иерархия каталогов. Некоторые директории встречаются повсюду, другие — появляются лишь при наличии определённых сервисов. Но чтобы понимать, где живут исполняемые файлы, конфигурации, временные данные или точки монтирования, нужно ориентироваться в стандарте FHS. В этом разборе — чёткое и системное описание всех ключевых директорий, их назначения и примеров использования, без упрощений и штампов. Материал будет полезен для новичков в Linux.

Читать далее

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

Практическое руководство по атакам на IPv6 в локальной сети

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

Отключение IPv6 на шлюзе давно перестало быть надежной защитой. Протокол по умолчанию активен на большинстве клиентских машин, которые периодически отправляют в сеть служебные запросы вроде Router Solicitation. Именно эта «скрытая» активность открывает двери для целого класса атак, позволяющих перехватить трафик, подменить DNS или провести NTLM-Relay.

В этой статье мы подробно, с примерами кода на Python/Scapy и командами для настройки, рассмотрим самые распространенные векторы атак на IPv6 в локальном сегменте:

RA Spoofing: Как навязать себя в качестве шлюза по умолчанию.

RDNSS Spoofing: Как стать DNS-сервером для современных ОС без DHCPv6.

DHCPv6-атаки: Механика работы mitm6 и ее ручная реализация.

Пассивный сбор данных: Как составить карту сети, просто слушая эфир.

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

Читать далее

Подготовка к миграции информационных систем и сервисов

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

Привет, Хабр! Я, Солнцев Евгений, руководитель управления эксплуатации прикладных систем Страхового Дома ВСК.

У нас периодически возникает необходимость в миграции информационных систем и сервисов в другой ЦОД или облачную инфраструктуру. Необходимость в миграции может быть вызвана:

Читать далее

Настройка Outlook для работы с Carbonio

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

Многие организации и предприятия устанавливают почтовый сервер Carbonio, как решение для унифицированных коммуникаций, поддерживающее широкий спектр корпоративных инструментов, такие как почта, ежедневники, адресные книги, задачи, облачное хранилище для файлов, а также видеоконференции, и которое доступно не только на компьютерах, но и мобильных устройствах. Для некоторых из них Carbonio – первая и основная платформа для совместной работы, а для некоторых — это платформа для миграции с Microsoft Exchange. И тут администраторы сталкиваются с необходимостью подключения к почтовой системе сторонних клиентов. При этом современный пользователь привык, что от доступа к нужным ему сервисам его отделяют ввод своего адреса электронной почты и пароля почты. Именно поэтому необходимость ввода дополнительных и, к тому же, весьма неочевидных данных для использования такой базовой вещи, как электронная почта, может ввести пользователей в ступор. 

Читать далее

Как развивалась российская система централизованного управления IT-инфраструктурой «Ред Адм». Интервью с разработчиками

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

Привет, Хабр! Давно хотел начать тему российских импортозамещающих аналогов доменной структуры от Windows. Да, от самих компаний были уже материалы: как настраивать, как «поднимать», а мне захотелось узнать историю этих систем и посмотреть, куда они движутся. Ну и первая на очереди — компания «Ред Софт» и система «Ред Адм».

Как появилась система управления рабочими машинами и серверами от «Ред софта», какие были open source наработки, как от них отказались и какими операционными системами можно управлять с помощью «Ред Адм» — об этом мы поговорили с директором разработки инфраструктурных решений «Ред Софт» Ильёй Чижовым и продукт-оунером Владом Цынским. Приятного чтения!

Читать далее

Как перенести данные Persistent Volume из одного Kubernetes кластера в другой с помощью Tuna

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

В этом гайде мы рассмотрим 2 способа как легко перенести данные в Persistent Volume из одного Kubernetes кластера в другой без сложных манипуляций и промежуточных скачиваний с помощью Tuna туннелей. Гайд подойдет для любых типов данных, это может быть Wordpress приложение или каталог с картинками, бэкапами, в общем что угодно.

Читать далее

Защита от тёмных искусств: DLL-Hijacking

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

Представьте: пользователь открывает совершенно легитимную программу — скажем, видеоплеер, корпоративный мессенджер или даже встроенный в Windows инструмент. Программа запускается, выполняет свои функции. Антивирус молчит. Мониторы пользователя не показывают ничего подозрительного. Но в этот самый момент, под прикрытием доверенного процесса, в памяти компьютера уже тихо работает вредоносный код, крадущий конфиденциальные данные или готовящий почву для атаки на сеть. Как он туда попал и почему не был обнаружен? 

Один из возможных вариантов — использование атакующими техники DLL-Hijacking (Mitre T1574.001). Я встречал мнение, что техника (а если быть точным, то это подтехника для T1574: Hijack Execution Flow) DLL Hijacking — баян десятилетней давности и не может считаться актуальной угрозой для корпоративных Windows-сред. Затрудняюсь определить причину такого мнения, потому что атаки с использованием DLL-библиотек явно не ушли в прошлое — их по-прежнему упоминают в уважаемых отчетах по кибербезу — к примеру, здесь (Mandiant M-Trends 2024, стр.50) и здесь (Лаборатория Касперского, «Азиатские APT-группировки: тактики, техники и процедуры»). 

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

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

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

Наконец, как мне думается, в последнее время из-за распространения нейросетей сильно упал входной порог компетенций для конструкторов вредоносов. Я не эксперт в разработке приложений, но подозреваю, что написать вредоносную dll-библиотеку с помощью ChatGPT значительно проще, чем без него. 

В этой статье мы: 

За 90 секунд освежим в памяти, что такое DLL, как работает, в чем фундаментальная уязвимость механизма загрузки. 

Осветим примеры атак с подменой DLL согласно их классификации.

Расскажем о защитных мерах для предотвращения атак этого типа.

Приведем рекомендации для SOC по обнаружению атаки (и объясним, почему цифровая подпись — не гарантия легитимности библиотеки). 

Итак, добро пожаловать под кат!

Читать далее

Как девопсы контейнеризацию с виртуализацией дружили

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

А что, если бы виртуалки вели себя как контейнеры — с миграциями, мониторингом, провижингом томов и GitOps? Мы во «Фланте» так и сделали: совместили Kubernetes с KubeVirt, там-сям допилили и получили решение, которое позволяет запускать виртуальные машины рядом с контейнерами и управляется как обычный кластер Kubernetes.

Привет, Хабр! Я — Олег Сапрыкин, технический директор по инфраструктуре компании «Флант». Сегодня я расскажу, как мы создавали виртуализацию в экосистеме Deckhouse от выбора инструмента для управления ВМ в 2023 году до полноценного продукта, готового к использованию в production весной 2025-го. Подробно опишу, с какими подводными камнями мы столкнулись в процессе эксплуатации и какие доработки потребовались.

Читать далее

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