SecOps!
Немножко древнего
web2.0 стиля
Немного кода, мыслей,
фото и очарования. История сайта
Линукс
Всё, что так или иначе
касается линукс тематики. Перейти в категорию
Электроника
микроэлектроника
и всяческая электротехника. Перейти в категорию
Фотографии
Из разных категорий. Посмотреть категорию
5/Май/2026 zero-trustsecuritywaypipewayland
Продолжая предыдущие скучные опусы на тему изоляции окружений, самое время вспомнить про wayland.
Конечно же, это не призыв к действию, а просто примеры и размышления.
Сам я придерживаюсь философии, где центр системы это пользователь, и он в праве настраивать всё так, как он считает нужным, а не так как это навязывается общими тенденциями, или как это реализовано в конкретном дистрибутиве, вместе с этим понимая и принимая все риски и последствия этих действий.
Как говорится, “If you know what you are doing”.
И прежде чем приступить, опять стоит написать, что:
И, несколько упрощая и адаптируя идеи QubesOS под свои повседневные задачи, я предпочитаю в основном использовать или других локальных пользователей, или достаточно легковесные окружения LXC.
И да, в них я запускаю не что-то потенциально опасное, а то, что многие из вас используют непосредственно под своим аккаунтом в системе, например:
4/Май/2026 mdadmzfsluksusb-bootdetached-header
Не так давно опять настальгировал во FreeBSD, всё прекрасно, всё привычно, всё удобно.
Один только момент полностью исключает её из использования на десктопе, по крайней мере у меня.
Почти на всех моих ноутбуках FreeBSD не поддерживает ни спящий, ни ждущий режимы (s2disk/s2ram).
И сделать я с этим ничего не смог, а уж перепробовал многое.
Без ждущего режима совершенно невозможно пользоваться ноутбуком, так как после транспортировки необходимо по новой всё загружать, включать, открывать.
Да и перезагружаю рабочие станции только после обновлений, этого требующих.
Из многих приятных мелочей, которые есть во Фряхе, и которые отсутствуют в Debian это ZFS Boot Environments, это несколько удобней чем, скажем, снапшоты LVM.
А второе это GEOM_ELI, который поддерживает не только, как LUKS, режим ИЛИ пароль, ИЛИ ключ, но так же поддерживает режим И пароль, И ключ.
Подумал, подумал, да и решил развернуть Debian с нуля с учётом всех инструментов, которые использую, опыта, и, что немаловажно, привычек.
Debian пока что остаётся основной моей системой, следовательно единственный способ получения хардварного (физического) ключа шифрования в дополнение к паролю - это сделать его из хедера и разместить на загрузочной USB-флешке.
10/Январь/2026 zero-trustsecurity
Стандартная ситуация, у вас есть основной рабочий компьютер, на котором у вас три разных проекта.
Один проект на nodejs, второй продакшн на python, а третий ваш личный “pet project”, тоже на python.
А ещё у вас в этой же системе личная+рабочая почта, ну и, скажем, браузер и клиент-банк.
И это всё под вашим пользователем.
Ну не под рутом же! ¯\_(ツ)_/¯
Всё вполне обычно. У многих вполне технически грамотных разработчиков таких проектов могут быть десятки и десятки ключей для ssh или git серверов.
Вполне обыденно Вы пишете свой код, время от времени коммитите, и тут в ваш уютный pet-project с AI прилетает обновление torchtriton.
А после этого из вашей системы улетают следующие наборы данных, в соответствии с основной функцией бинарника, которая делает следующее:
nameservers из /etc/resolv.confhostname из gethostname()текущий логин из getlogin()текущая рабочая директория из getcwd()переменные окружения/etc/hosts/etc/passwdПервые 1,000 файлов из $HOME/*$HOME/.gitconfig$HOME/.ssh/*Обновление прилетело, конфедициальные данные - улетели.
Скомпрометировано не только всё под вашей учётной записью (и, возможно, системой), но и по цепочке всё, чем вы управляли, куда коммитили, куда подключались.
Очень, очень часто приходится сталкиваться с необходимостью использования определённой версии Питона, например, для torch, или чего-то специфического.
Использовать conda или Docker в связке с nvidia-container-toolkit и потом настраивать образы вроде nvidia/cuda:13.0.1-runtime-ubuntu22.04 мне ощущается противоестесственно, хотя часто так делал.
Да и в контейнере приходится устанавливать дополнительные пакеты.
Проще и удобней собрать всё на хостовой системе, но при этом не допустить контаминации всей системы посторонними библиотеками и исполняемыми файлами.
Далее приводится пример сборки нескольких версий Python только для группы verpy, что несколько удобнее, чем установка только для одного пользователя.
ai - произвольный пользователь, от которого осуществляется компиляция.verpy - группа, которой будет разрешено исполнение.1 2 3 4 | apt install \ build-essential libssl-dev zlib1g-dev libbz2-dev libreadline-dev libsqlite3-dev \ wget curl llvm libncurses5-dev libncursesw5-dev xz-utils tk-dev libffi-dev \ liblzma-dev libgdbm-dev libnsl-dev libgdbm-compat-dev |
mkdir /opt/openssl
mkdir /opt/python
groupadd --gid 42398 verpy
usermod -aG verpy ai