Admin Future
239 subscribers
50 photos
1 video
4 files
87 links
Превращаем эникейщиков в System Architects.
🚀 Твой навигатор в мире IT-инфраструктуры:

▪️ Hard Skills: Linux, Windows, Network, Security
▪️ Tools: Лучший софт и скрытые фишки
▪️ Mindset: Как думать, чтобы платили много


Админ - @maksimshap
Download Telegram
Podman: Запускаем контейнеры без Docker. Быстро, безопасно и без демонов.

Многие привыкли, что контейнеры = Docker. Но в мире Linux набирает популярность Podman — инструмент, который делает то же самое, но с несколькими ключевыми улучшениями, особенно важными для безопасности и системной интеграции.

▪️ Главные отличия от Docker:

Нет демона: Podman работает без постоянного фонового процесса (dockerd), который требует прав root. Каждый контейнер запускается как дочерний процесс пользователя. Это снижает поверхность атаки.

Rootless-режим: Вы можете запускать контейнеры от имени обычного пользователя, без sudo. Изоляция на уровне ядра не позволит такому контейнеру получить права администратора на хосте.

Интеграция с systemd: Podman умеет генерировать systemd-юниты для ваших контейнеров, позволяя управлять ими как обычными системными службами.

▪️ Quick Start: Попробуем прямо сейчас
Команды практически на 100% совпадают с Docker, поэтому переучиваться не придется.

Установка:

sudo apt install podman или sudo dnf install podman

Запуск первого контейнера (Nginx):

Bash

# Обратите внимание, никакого 'sudo'
podman run -d --name my_nginx -p 8080:80 docker.io/library/nginx

-d: запуск в фоновом режиме.
--name: имя контейнера.
-p: проброс порта.

Просмотр запущенных контейнеров:

Bash

podman ps
# CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
# a1b2c3d4e5f6 docker.io/library/nginx:latest nginx -g 'daemon o... 2 minutes ago Up 2 minutes ago 0.0.0.0:8080->80/tcp my_nginx

Управление контейнером как systemd-сервисом:
Это киллер-фича. Создадим systemd-юнит для нашего Nginx.

Bash

# Генерируем .service файл
podman generate systemd --name my_nginx > ~/.config/systemd/user/nginx.service

# Перезагружаем демона systemd для user-сессии
systemctl --user daemon-reload

# Запускаем и включаем автозагрузку сервиса
systemctl --user start nginx.service
systemctl --user enable nginx.service

Теперь ваш контейнер будет стартовать вместе с вашей пользовательской сессией и управляться как обычная служба!

Вывод: Podman — это отличная, более безопасная и системно-интегрированная альтернатива Docker для запуска одиночных контейнеров на Linux-серверах.

#Podman #Containers #Linux #DevOps #Security #Systemd
План на неделю: 3 технологии, на которые стоит потратить время

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

Для админов Windows: Chocolatey

Что это: Мощный, управляемый сообществом менеджер пакетов для Windows. "Старший брат" Winget.

Зачем: У Chocolatey огромный репозиторий пакетов и расширенные возможности для скриптов установки/удаления. Умение работать и с Winget, и с Chocolatey позволяет решать 100% задач по автоматизации ПО в Windows-среде. Это признак эксперта.

Для админов Linux: Podman

Что это: Движок для контейнеров без демона, позиционируется как полная замена Docker.

Зачем: Podman по умолчанию работает в режиме rootless (без прав суперпользователя), что гораздо безопаснее. Он нативно интегрируется с systemd для управления жизненным циклом контейнеров. Понимание его преимуществ — это шаг в сторону современных и более защищённых контейнерных сред.

Для всех (концепция): Zero Trust (Нулевое доверие)

Что это: Модель безопасности, основанная на принципе «никогда не доверяй, всегда проверяй». В ней нет понятия «внутренней доверенной сети». Каждый запрос, даже внутри периметра, должен быть аутентифицирован и авторизован.

Зачем: Это будущее корпоративной безопасности в мире облаков и удалённой работы. Изучите базовые понятия: микросегментация, Identity-Aware Proxy (IAP), MFA. Это изменит ваш подход к проектированию сетей и доступов.

Выберите одну тему и посвятите ей пару вечеров. Какой будет ваш выбор?

#career #learning #windows #chocolatey #linux #podman #security #zerotrust
Linux: Ваш chroot на стероидах. Знакомство с distrobox

У вас на рабочей машине (или сервере) CentOS, но вам срочно нужен инструмент, который есть только в Ubuntu? Или нужно протестировать скрипт в Arch Linux?

Раньше вы бы ставили VirtualBox или мучились с chroot. Сегодня есть distrobox.

distrobox — это утилита, которая использует podman или docker для запуска любого дистрибутива Linux, но делает это с глубокой интеграцией в вашу основную систему.

Как это работает: Вы запускаете:
Bash

# Создаем "коробку" с Ubuntu 22.04
distrobox create -n ubuntu-box -i ubuntu:22.04
# Входим в нее
distrobox enter ubuntu-box

В чем магия:
* Ваш HOME проброшен внутрь.
* USB-устройства, графика (включая GUI-приложения!) — все работает.
* Вы можете установить zsh в ubuntu-box, и он появится в списке оболочек вашей основной системы.
* Вы можете запустить VS Code из ubuntu-box так, будто он установлен у вас.

Это одноразовые, чистые окружения, которые не загрязняют вашу основную ОС.

Взгляд архитектора: Это воспроизводимость и изоляция. Архитектор не держит на своей рабочей станции "зоопарк" из 1000 пакетов. Он держит distrobox и создает чистые, изолированные среды для каждой задачи, гарантируя, что его инструменты не конфликтуют.

#linux #distrobox #docker #podman #devops #sysadmin #гайд
👍2🥰2
🚀 DevOps: Podman 5.0 — запускаем контейнеры без Root и лишних демонов 🛡️

Если ты всё еще используешь Docker-демона, который крутится под рутом, у нас для тебя новости из 2026 года. Podman окончательно стал взрослым. Главная фишка пятой версии — полностью переписанный сетевой стек (pasta), который сделал Rootless-контейнеры (запуск от обычного юзера) такими же быстрыми, как и обычные.

Техническая суть:
Podman не требует запущенного демона (daemonless) и позволяет запускать контейнеры в изолированных User Namespaces. Если хакер «сломает» контейнер, он окажется внутри системы с правами обычного бесправного пользователя.


Команды для старта:

# Запуск контейнера от обычного пользователя (без sudo!)
podman run -d --name my-app -p 8080:80 nginx

# Генерируем systemd-юнит, чтобы контейнер сам стартовал после ребута
podman generate systemd --name my-app --files --new

Зачем это нужно: Это стандарт безопасности. В 2026 году запуск Docker под root в продакшене без веской причины считается дурным тоном.

#devops #containers #podman #docker #security #sysadmin #admin_future
🐧 Linux: Убиваем демонов. Rootless Podman и systemd-quadlets на страже серверов

В 2026 году крутить жирного демона Docker от пользователя `root` — это не просто моветон, это красная тряпка для любого аудитора ИБ. В условиях тотального импортозамещения и перехода на защищенные отечественные ОС мы давно изолируем всё, что шевелится.

Под капотом:
Мы выкидываем Docker daemon и переходим на rootless Podman. А чтобы не страдать с docker-compose и кривыми авторестартами, отдаем управление жизненным циклом контейнеров нативному systemd через механизм Quadlets. Вы просто пишете декларативный юнит .container, а systemd сам генерирует сервис, следит за зависимостями, пробрасывает порты и пишет логи в journald. И всё это работает в пространстве обычного пользователя!

Практика:
Создаем файл /etc/containers/systemd/nginx-gost.container для запуска веб-сервера с поддержкой отечественной криптографии:


[Unit]
Description=GOST-enabled Nginx Web Server
After=network-online.target

[Container]
Image=registry.corp.local/nginx-gost:latest
PublishPort=8080:80
Environment=TLS_MODE=strict
Volume=/srv/web:/usr/share/nginx/html:ro

[Install]
WantedBy=multi-user.target



Перезагружаем демона и стартуем:


systemctl daemon-reload
systemctl start nginx-gost.service



Зачем это нужно:
Если злоумышленник и пробьет ваш веб-сервер, он окажется заперт в непривилегированном user namespace. Нулевой риск компрометации ядра, идеальная интеграция с системными логами и чистая архитектура без лишних прослоек.

#linux #podman #systemd #security #admin_future