---
title: Nowa architektura dostępu SSH dla kontenerów Docker w trybie rootless
url: https://www.dataloco.com/pl/nowa-architektura-dostepu-ssh-dla-kontenerow-docker-w-trybie-rootless
published: 2026-09-30T11:01:16+00:00
language: pl
section: Bezpieczeństwo
source: https://habr.com/ru/articles/1087148/?utm_campaign=1087148&utm_source=habrahabr&utm_medium=rss
organizations: Docker
publisher: Dataloco
---

# Nowa architektura dostępu SSH dla kontenerów Docker w trybie rootless

Opracowano metodę organizacji dostępu SSH dla kontenerów Docker działających w trybie rootless, która eliminuje konieczność przekazywania prywatnego klucza do wnętrza kontenera. Rozwiązanie to ma na celu zapobieganie kradzieży kluczy w przypadku kompromitacji procesu, co jest szczególnie istotne w systemach wykorzystujących agentów sztucznej inteligencji oraz serwery MCP.

Kluczowym elementem architektury jest wykorzystanie gniazda Unix ssh-agent zamiast bezpośredniego dostępu do pliku klucza. Proces wewnątrz kontenera korzysta z uprawnień SSH do uzyskania dostępu do dozwolonych zasobów, jednak sam materiał prywatnego klucza pozostaje niedostępny na poziomie architektury. Mechanizm ten opiera się na standardowej zmiennej SSH_AUTH_SOCK wykorzystywanej przez OpenSSH.

Konfiguracja zakłada rygorystyczne ograniczenia bezpieczeństwa. Demon Docker musi pracować w trybie rootless bez przywilejów root na hoście, a proces wewnątrz kontenera nie może posiadać uprawnień root. Dodatkowo z kontenera usunięto możliwości Linux capabilities, wprowadzono zakaz uzyskiwania nowych przywilejów, a główny system plików kontenera jest dostępny tylko do odczytu. W ustawieniach SSH zabroniono stosowania opcji StrictHostKeyChecking=no.

Tradycyjne metody przekazywania kluczy, takie jak montowanie katalogu ~/.ssh, używanie zmiennych środowiskowych czy pobieranie danych z magazynów sekretów, zostały odrzucone. Metody te sprawiają, że klucz staje się dostępny do odczytu dla procesu, co umożliwia jego wyniesienie poza kontener nawet przy montowaniu plików w trybie tylko do odczytu.

Głównym wyzwaniem technicznym w trybie rootless Docker jest niezgodność identyfikatorów UID procesu wewnątrz kontenera z jego identyfikatorem na hoście. Powoduje to, że zwykłe montowanie SSH_AUTH_SOCK nie działa dla procesów z identyfikatorem non-root UID.

Kontenery mogą wymagać pełnego dostępu SSH do klonowania prywatnych repozytoriów Git, wykonywania poleceń na zdalnych serwerach, przesyłania plików przez scp lub rsync oraz automatyzacji wdrażania systemów. Alternatywą jest przeniesienie tych operacji do zewnętrznego serwisu API, jednak wiąże się to z koniecznością synchronizacji dwóch niezależnych systemów plików, na przykład poprzez wspólny wolumen.
