Как попасть в namespace процесса контейнера

Если внутри контейнера обнаружен подозрительный процесс, а `ps` и `ss` на хосте показывают неполную картину, подключиться к его окружению можно через `nsenter` — без входа через Docker или Kubernetes.

«`bash
nsenter -t 1847 -m -u -i -n -p — /bin/bash
«`

`1847` — PID процесса на хосте.

Параметры:
— `-m` — mount namespace;
— `-u` — UTS namespace;
— `-i` — IPC namespace;
— `-n` — network namespace;
— `-p` — PID namespace.

После запуска shell работает в тех же namespace, что и выбранный процесс: доступны его файловая система, hostname, процессы, интерфейсы, маршруты и mount-точки. Сначала необходимо определить PID процесса на хосте, затем использовать `nsenter` с соответствующими правами.

Подпишись, тут про технолоджии.

P.S. Меня зовут Бедняков Артем, я разрабатываю backend-решения на Python любой сложности:

  • REST API и микросервисы;
  • агентные системы и AI-интеграции;
  • Telegram-боты и Mini Apps;
  • парсеры и автоматизация;
  • интеграции с внешними сервисами и API;
  • тестирование и CI/CD;
  • DevOps и развёртывание;
  • аудит и проверки безопасности.

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

Также подписывайтесь на мой Telegram-канал IT POLICE, где я пишу о Python, backend-разработке, технологиях и кибербезопасности.